This documentation is for WSO2 Identity Server 5.2.0 . View documentation for the latest release.

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Table of Contents
maxLevel3
minLevel3
typeflat

...

Access control

Panel
borderColorcoral
bgColorlightyellow
titleColorwhite
titleBGColorcoral
borderWidth4
titleXACML - eXtensible Access Control Markup Language
borderStylesolid

XACML (eXtensible Access Control Markup Language) is a tool for controlling access to applications. XACML is an XML-based language for access control that has been standardized by the Technical Committee of the OASIS consortium. XACML is very popular as a fine grained authorization method amongst the identity community. See Access Control Concepts for more information.

...

Panel
borderColorcoral
bgColorlightyellow
titleColorwhite
titleBGColorcoral
borderWidth4
titleABAC - Attribute Based Access Control
borderStylesolid

Attribute-based access control (ABAC) is a type of access control. ABAC defines a new access control paradigm whereby access rights are granted to users through the use of policies which combine attributes together. See Access Control Concepts for more information.

 

...

API security

Panel
borderColorcoral
bgColorlightyellow
titleColorwhite
titleBGColorcoral
borderWidth4
titleOAuth
borderStylesolid

OAuth is an open standard to authorization. OAuth provides a method for clients to access server resources on behalf of a resource owner (such as a different client or an end-user). It also provides a process for end-users to authorize third-party access to their server resources without sharing their credentials (typically, a username and password pair), using user-agent redirections. See OAuth Concepts for more information.

Panel
borderColorcoral
bgColorlightyellow
titleColorwhite
titleBGColorcoral
borderWidth4
titleGrant Types
borderStylesolid

There are many supported grant types in the OAuth2 specification. A grant type is a credential representing the resource owner's authorization (to access its protected resources) used by the client to obtain an access token. See OAuth Concepts for more information.

 

...

Architecture authentication framework

Panel
borderColorcoral
bgColorlightyellow
titleColorwhite
titleBGColorcoral
borderWidth4
titleInbound Authenticators
borderStylesolid

The responsibility of inbound authenticators is to identify and parse all the incoming authentication requests and then build the corresponding response. A given inbound authenticator has two parts.

  1. Request Processor
  2. Response Builder

For each protocol supported by WSO2 IS, there should be an inbound authenticator. This architecture component includes inbound authenticators for SAML 2.0, OpenID, OpenID Connect, OAuth 2.0, and WS-Federation (passive). In other words, the responsibility of the SAML 2.0 request processor is to accept a SAML request from a service provider, validate the SAML request and then build a common object model understood by the authentication framework and handover the request to it. The responsibility of the SAML response builder is to accept a common object model from the authentication framework and build a SAML response out of it. Both the request processors and the response builders are protocol aware, while the authentication framework is not coupled to any protocol.

See Identity Server Architecture for more information.

...

Panel
borderColorcoral
bgColorlightyellow
titleColorwhite
titleBGColorcoral
borderWidth4
titleMulti-factor authentication
borderStylesolid

The service provider can define how to authenticate users at the Identity Server, for authentication requests initiated by it. While doing that, each service provider can define multiple steps and for each step it can pick more than one authenticators. The authentication framework will track all the authenticators in each step and will proceed to the next step only if the user authenticates successfully in the current step. Its an AND between steps while its an OR between the authenticators in a given step.

See Identity Server Architecture for more information.

 

...

Architecture provisioning framework

Panel
borderColorcoral
bgColorlightyellow
titleColorwhite
titleBGColorcoral
borderWidth4
titleInbound provisioning
borderStylesolid

Inbound provisioning focuses on how to provision users to the Identity Server. Out-of-the-box, the Identity Server supports inbound provisioning via a SOAP-based API as well as the SCIM 1.1 API. Both the APIs support HTTP Basic Authentication. If you invoke the provisioning API with Basic Authentication credentials, then where to provision the user (to which user store) will be decided based on the inbound provisioning configuration of the resident service provider.

The SCIM API also supports OAuth 2.0. If the user authenticates to the SCIM API with OAuth credentials, then the system will load the configuration corresponding to the service provider who owns the OAuth client id. If you plan to invoke the SCIM API via a web application or a mobile application, we would highly recommend you to use OAuth instead of Basic Authentication. You simply need to register your application as a service provider in Identity Server and then generate OAuth keys.

See Identity Server Architecture for more information.

...

Panel
borderColorcoral
bgColorlightyellow
titleColorwhite
titleBGColorcoral
borderWidth4
titleConditional provisioning with roles
borderStylesolid

If you want to provision a user to an external identity provider, for example to Salesforce or Google Apps, based on the user's role, then you need to define one or more provisioning roles in the outbound provisioning configuration of the corresponding identity provider.

See Configuring Roles for an Identity Provider for more information.

 

...

Identity provisioning

Panel
borderColorcoral
bgColorlightyellow
titleColorwhite
titleBGColorcoral
borderWidth4
titleIdentity Provisioning
borderStylesolid

Identity provisioning plays a key role in propagating user identities across different SaaS providers. Provisioning is the process of coordinating the creation of user accounts, e-mail authorizations in the form of rules and roles, and other tasks such as provisioning of resources associated with enabling new users. See The Evolution of Provisioning Standards for more information.

...

Panel
borderColorcoral
bgColorlightyellow
titleColorwhite
titleBGColorcoral
borderWidth4
titleSCIM - System for Cross-domain Identity Management
borderStylesolid

The System for Cross-domain Identity Management (SCIM) specification is designed to make managing user identities in the WSO2 Identity Server easier. SCIM is an emerging open standard which defines a comprehensive REST API along with a platform neutral schema and a SAML binding to facilitate the user management operations across SaaS applications; placing specific emphasis on simplicity and interoperability as well. See The Evolution of Provisioning Standards for more information.

 

...

SOAP security

Panel
borderColorcoral
bgColorlightyellow
titleColorwhite
titleBGColorcoral
borderWidth4
titleSOAP - Simple Object Access Protocol
borderStylesolid

SOAP, originally defined as Simple Object Access protocol, is a protocol specification for exchanging structured information in the implementation of Web services. It relies on XML Information Set for its message format, and usually relies on other application layer protocols, most notably Hypertext Transfer Protocol (HTTP) or Simple Mail Transfer Protocol (SMTP), for message negotiation and transmission.

...

Panel
borderColorcoral
bgColorlightyellow
titleColorwhite
titleBGColorcoral
borderWidth4
titleWS-Trust - Web Services Trust
borderStylesolid

WS-Trust is a WS-* specification and OASIS standard that provides extensions to WS-Security, specifically dealing with the issuing, renewing, and validating of security tokens, as well as with ways to establish, assess the presence of, and broker trust relationships between participants in a secure message exchange.

 

...

SSO and identity federation

Panel
borderColorcoral
bgColorlightyellow
titleColorwhite
titleBGColorcoral
borderWidth4
titleIdentity Federation
borderStylesolid

Identity federation enables users to access multiple applications using the same access credentials. This makes access easy, as users do not have to remember a different set of credentials for every application they use. However, the users have to provide their credentials to each one of the applications separately although the credentials used are the same. See Evolution of Identity Federation Standards for more information.

...