Skip to content

Commit e36b8a8

Browse files
committed
update pull
2 parents 98b3294 + f5ae385 commit e36b8a8

File tree

2,468 files changed

+37023
-35966
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

2,468 files changed

+37023
-35966
lines changed

.openpublishing.publish.config.json

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -499,6 +499,11 @@
499499
"path_to_root": "azure-cosmosdb-java-v4-getting-started",
500500
"url": "https://github.com/Azure-Samples/azure-cosmos-java-getting-started",
501501
"branch": "master"
502+
},
503+
{
504+
"path_to_root": "azure-storage-snippets",
505+
"url": "https://github.com/azure-samples/AzureStorageSnippets",
506+
"branch": "master"
502507
}
503508
],
504509
"branch_target_mapping": {

.openpublishing.redirection.json

Lines changed: 605 additions & 5 deletions
Large diffs are not rendered by default.

articles/active-directory-b2c/TOC.yml

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -76,6 +76,8 @@
7676
href: user-overview.md
7777
- name: User profile attributes
7878
href: user-profile-attributes.md
79+
- name: SSO sessions
80+
href: session-overview.md
7981
- name: How-to guides
8082
items:
8183
- name: App integration
@@ -335,8 +337,8 @@
335337
href: phone-factor-technical-profile.md
336338
- name: REST
337339
href: restful-technical-profile.md
338-
- name: SAML
339-
href: saml-technical-profile.md
340+
- name: SAML identity provider
341+
href: saml-identity-provider-technical-profile.md
340342
- name: SAML token issuer
341343
href: saml-issuer-technical-profile.md
342344
- name: Self-asserted

articles/active-directory-b2c/best-practices.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ Define your application and service architecture, inventory current systems, and
3939
| Create a migration plan |Planning ahead can make migration go more smoothly. Learn more about [user migration](user-migration.md).|
4040
| Usability vs. security | Your solution must strike the right balance between application usability and your organization's acceptable level of risk. |
4141
| Move on-premises dependencies to the cloud | To help ensure a resilient solution, consider moving existing application dependencies to the cloud. |
42-
| Migrate existing apps to b2clogin.com | The deprecation of login.microsoftonline.com went into effect for all Azure AD B2C tenants on 04 December 2020. [Learn more](b2clogin.md). |
42+
| Migrate existing apps to b2clogin.com | The deprecation of login.microsoftonline.com will go into effect for all Azure AD B2C tenants on 04 December 2020. [Learn more](b2clogin.md). |
4343

4444
## Implementation
4545

@@ -88,4 +88,4 @@ Stay up to date with the state of the service and find support options.
8888
|--|--|
8989
| [Service updates](https://azure.microsoft.com/updates/?product=active-directory-b2c) | Stay up to date with Azure AD B2C product updates and announcements. |
9090
| [Microsoft Support](support-options.md) | File a support request for Azure AD B2C technical issues. Billing and subscription management support is provided at no cost. |
91-
| [Azure status](https://status.azure.com/status) | View the current health status of all Azure services. |
91+
| [Azure status](https://status.azure.com/status) | View the current health status of all Azure services. |

articles/active-directory-b2c/claim-resolver-overview.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -135,7 +135,7 @@ You can use claims resolvers with the following elements:
135135
|[OpenID Connect](openid-connect-technical-profile.md) technical profile| `InputClaim`, `OutputClaim`| 1, 2|
136136
|[Claims transformation](claims-transformation-technical-profile.md) technical profile| `InputClaim`, `OutputClaim`| 1, 2|
137137
|[RESTful provider](restful-technical-profile.md) technical profile| `InputClaim`| 1, 2|
138-
|[SAML2](saml-technical-profile.md) technical profile| `OutputClaim`| 1, 2|
138+
|[SAML identity provider](saml-identity-provider-technical-profile.md) technical profile| `OutputClaim`| 1, 2|
139139
|[Self-Asserted](self-asserted-technical-profile.md) technical profile| `InputClaim`, `OutputClaim`| 1, 2|
140140
|[ContentDefinition](contentdefinitions.md)| `LoadUri`| |
141141
|[ContentDefinitionParameters](relyingparty.md#contentdefinitionparameters)| `Parameter` | |

articles/active-directory-b2c/code-samples.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,3 +43,9 @@ The following tables provide links to samples for applications including iOS, An
4343
| Sample | Description |
4444
|--------| ----------- |
4545
| [javascript-msal-singlepageapp](https://github.com/Azure-Samples/active-directory-b2c-javascript-msal-singlepageapp) | A single page application (SPA) calling a Web API. Authentication is done with Azure AD B2C by using MSAL.js. |
46+
47+
## SAML test application
48+
49+
| Sample | Description |
50+
|--------| ----------- |
51+
| [saml-sp-tester](https://github.com/azure-ad-b2c/saml-sp-tester/tree/master/source-code) | SAML test application to test Azure AD B2C configured to act as SAML identity provider. |

articles/active-directory-b2c/connect-with-saml-service-providers.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -125,7 +125,7 @@ You can change the value of the `IssuerUri` metadata. This is the issuer URI tha
125125
<!-- SAML Token Issuer technical profile -->
126126
<TechnicalProfile Id="Saml2AssertionIssuer">
127127
<DisplayName>Token Issuer</DisplayName>
128-
<Protocol Name="None"/>
128+
<Protocol Name="SAML2"/>
129129
<OutputTokenFormat>SAML2</OutputTokenFormat>
130130
<Metadata>
131131
<!-- The issuer contains the policy name; it should be the same name as configured in the relying party application. B2C_1A_signup_signin_SAML is used below. -->
@@ -138,11 +138,11 @@ You can change the value of the `IssuerUri` metadata. This is the issuer URI tha
138138
</CryptographicKeys>
139139
<InputClaims/>
140140
<OutputClaims/>
141-
<UseTechnicalProfileForSessionManagement ReferenceId="SM-Saml-sp"/>
141+
<UseTechnicalProfileForSessionManagement ReferenceId="SM-Saml-issuer"/>
142142
</TechnicalProfile>
143143
144144
<!-- Session management technical profile for SAML based tokens -->
145-
<TechnicalProfile Id="SM-Saml-sp">
145+
<TechnicalProfile Id="SM-Saml-issuer">
146146
<DisplayName>Session Management Provider</DisplayName>
147147
<Protocol Name="Proprietary" Handler="Web.TPEngine.SSO.SamlSSOSessionProvider, Web.TPEngine, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null"/>
148148
</TechnicalProfile>

articles/active-directory-b2c/custom-policy-developer-notes.md

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ manager: celestedg
99
ms.service: active-directory
1010
ms.workload: identity
1111
ms.topic: conceptual
12-
ms.date: 03/30/2020
12+
ms.date: 04/28/2020
1313
ms.author: mimart
1414
ms.subservice: B2C
1515
---
@@ -76,7 +76,7 @@ Custom policy/Identity Experience Framework capabilities are under constant and
7676
| [OpenID Connect](openid-connect-technical-profile.md) | | | X | For example, Google+. |
7777
| [OAuth2](oauth2-technical-profile.md) | | | X | For example, Facebook. |
7878
| [OAuth1](oauth1-technical-profile.md) | | X | | For example, Twitter. |
79-
| [SAML2](saml-technical-profile.md) | | | X | For example, Salesforce, ADFS. |
79+
| [SAML2](saml-identity-provider-technical-profile.md) | | | X | For example, Salesforce, ADFS. |
8080
| WSFED| X | | | |
8181

8282

@@ -130,7 +130,8 @@ Custom policy/Identity Experience Framework capabilities are under constant and
130130
| [Default SSO session provider](custom-policy-reference-sso.md#defaultssosessionprovider) | | | X | |
131131
| [External login session provider](custom-policy-reference-sso.md#externalloginssosessionprovider) | | | X | |
132132
| [SAML SSO session provider](custom-policy-reference-sso.md#samlssosessionprovider) | | | X | |
133-
133+
| [OAuthSSOSessionProvider](custom-policy-reference-sso.md#oauthssosessionprovider) | | X | | |
134+
| [Single sign-out](session-overview.md#sign-out) | | X | | |
134135

135136
### Security
136137

articles/active-directory-b2c/custom-policy-reference-sso.md

Lines changed: 34 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ manager: celestedg
99
ms.service: active-directory
1010
ms.workload: identity
1111
ms.topic: reference
12-
ms.date: 03/09/2020
12+
ms.date: 04/28/2020
1313
ms.author: mimart
1414
ms.subservice: B2C
1515
---
@@ -18,18 +18,22 @@ ms.subservice: B2C
1818

1919
[!INCLUDE [active-directory-b2c-advanced-audience-warning](../../includes/active-directory-b2c-advanced-audience-warning.md)]
2020

21-
Single sign-on (SSO) session management in Azure Active Directory B2C (Azure AD B2C) enables an administrator to control interaction with a user after the user has already authenticated. For example, the administrator can control whether the selection of identity providers is displayed, or whether local account details need to be entered again. This article describes how to configure the SSO settings for Azure AD B2C.
22-
23-
SSO session management has two parts. The first deals with the user's interactions directly with Azure AD B2C and the other deals with the user's interactions with external parties such as Facebook. Azure AD B2C does not override or bypass SSO sessions that might be held by external parties. Rather the route through Azure AD B2C to get to the external party is "remembered", avoiding the need to reprompt the user to select their social or enterprise identity provider. The ultimate SSO decision remains with the external party.
21+
[Single sign-on (SSO) session](session-overview.md) management in Azure Active Directory B2C (Azure AD B2C) enables an administrator to control interaction with a user after the user has already authenticated. For example, the administrator can control whether the selection of identity providers is displayed, or whether account details need to be entered again. This article describes how to configure the SSO settings for Azure AD B2C.
2422

2523
SSO session management uses the same semantics as any other technical profile in custom policies. When an orchestration step is executed, the technical profile associated with the step is queried for a `UseTechnicalProfileForSessionManagement` reference. If one exists, the referenced SSO session provider is then checked to see if the user is a session participant. If so, the SSO session provider is used to repopulate the session. Similarly, when the execution of an orchestration step is complete, the provider is used to store information in the session if an SSO session provider has been specified.
2624

2725
Azure AD B2C has defined a number of SSO session providers that can be used:
2826

29-
* NoopSSOSessionProvider
30-
* DefaultSSOSessionProvider
31-
* ExternalLoginSSOSessionProvider
32-
* SamlSSOSessionProvider
27+
|Session provider |Scope |
28+
|---------|---------|
29+
|[NoopSSOSessionProvider](#noopssosessionprovider) | None |
30+
|[DefaultSSOSessionProvider](#defaultssosessionprovider) | Azure AD B2C internal session manager. |
31+
|[ExternalLoginSSOSessionProvider](#externalloginssosessionprovider) | Between Azure AD B2C and OAuth1, OAuth2, or OpenId Connect identity provider. | |
32+
|[OAuthSSOSessionProvider](#oauthssosessionprovider) | Between an OAuth2 or OpenId connect relying party application and Azure AD B2C. |
33+
|[SamlSSOSessionProvider](#samlssosessionprovider) | Between Azure AD B2C and SAML identity provider. And between a SAML service provider (relying party application) and Azure AD B2C. |
34+
35+
36+
3337

3438
SSO management classes are specified using the `<UseTechnicalProfileForSessionManagement ReferenceId="{ID}" />` element of a technical profile.
3539

@@ -60,11 +64,11 @@ As the name dictates, this provider does nothing. This provider can be used for
6064

6165
### DefaultSSOSessionProvider
6266

63-
This provider can be used for storing claims in a session. This provider is typically referenced in a technical profile used for managing local accounts. The following `SM-AAD` technical profile is included in the [custom policy starter pack](custom-policy-get-started.md#custom-policy-starter-pack).
67+
This provider can be used for storing claims in a session. This provider is typically referenced in a technical profile used for managing local and federated accounts. The following `SM-AAD` technical profile is included in the [custom policy starter pack](custom-policy-get-started.md#custom-policy-starter-pack).
6468

6569
```XML
6670
<TechnicalProfile Id="SM-AAD">
67-
<DisplayName>Session Mananagement Provider</DisplayName>
71+
<DisplayName>Session Management Provider</DisplayName>
6872
<Protocol Name="Proprietary" Handler="Web.TPEngine.SSO.DefaultSSOSessionProvider, Web.TPEngine, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" />
6973
<PersistedClaims>
7074
<PersistedClaim ClaimTypeReferenceId="objectId" />
@@ -80,6 +84,7 @@ This provider can be used for storing claims in a session. This provider is typi
8084
</TechnicalProfile>
8185
```
8286

87+
8388
The following `SM-MFA` technical profile is included in the [custom policy starter pack](custom-policy-get-started.md#custom-policy-starter-pack) `SocialAndLocalAccountsWithMfa`. This technical profile manages the multi-factor authentication session.
8489

8590
```XML
@@ -97,11 +102,11 @@ The following `SM-MFA` technical profile is included in the [custom policy start
97102

98103
### ExternalLoginSSOSessionProvider
99104

100-
This provider is used to suppress the "choose identity provider" screen. It is typically referenced in a technical profile configured for an external identity provider, such as Facebook. The following `SM-SocialLogin` technical profile is included in the [custom policy starter pack](custom-policy-get-started.md#custom-policy-starter-pack).
105+
This provider is used to suppress the "choose identity provider" screen and sign-out from a federated identity provider. It is typically referenced in a technical profile configured for a federated identity provider, such as Facebook, or Azure Active Directory. The following `SM-SocialLogin` technical profile is included in the [custom policy starter pack](custom-policy-get-started.md#custom-policy-starter-pack).
101106

102107
```XML
103108
<TechnicalProfile Id="SM-SocialLogin">
104-
<DisplayName>Session Mananagement Provider</DisplayName>
109+
<DisplayName>Session Management Provider</DisplayName>
105110
<Protocol Name="Proprietary" Handler="Web.TPEngine.SSO.ExternalLoginSSOSessionProvider, Web.TPEngine, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" />
106111
<Metadata>
107112
<Item Key="AlwaysFetchClaimsFromProvider">true</Item>
@@ -118,9 +123,20 @@ This provider is used to suppress the "choose identity provider" screen. It is t
118123
| --- | --- | --- |
119124
| AlwaysFetchClaimsFromProvider | No | Not currently used, can be ignored. |
120125

126+
### OAuthSSOSessionProvider
127+
128+
This provider is used for managing the Azure AD B2C sessions between a OAuth2 or OpenId Connect relying party and Azure AD B2C.
129+
130+
```xml
131+
<TechnicalProfile Id="SM-jwt-issuer">
132+
<DisplayName>Session Management Provider</DisplayName>
133+
<Protocol Name="Proprietary" Handler="Web.TPEngine.SSO.OAuthSSOSessionProvider, Web.TPEngine, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" />
134+
</TechnicalProfile>
135+
```
136+
121137
### SamlSSOSessionProvider
122138

123-
This provider is used for managing the Azure AD B2C SAML sessions between a relying party application or a federated SAML identity provider. When using the SSO provider for storing a SAML identity provider session, the `RegisterServiceProviders` must be set to `false`. The following `SM-Saml-idp` technical profile is used by the [SAML technical profile](saml-technical-profile.md).
139+
This provider is used for managing the Azure AD B2C SAML sessions between a relying party application or a federated SAML identity provider. When using the SSO provider for storing a SAML identity provider session, the `RegisterServiceProviders` must be set to `false`. The following `SM-Saml-idp` technical profile is used by the [SAML identity provider technical profile](saml-identity-provider-technical-profile.md).
124140

125141
```XML
126142
<TechnicalProfile Id="SM-Saml-idp">
@@ -134,14 +150,15 @@ This provider is used for managing the Azure AD B2C SAML sessions between a rely
134150

135151
When using the provider for storing the B2C SAML session, the `RegisterServiceProviders` must set to `true`. SAML session logout requires the `SessionIndex` and `NameID` to complete.
136152

137-
The following `SM-Saml-idp` technical profile is used by [SAML issuer technical profile](saml-issuer-technical-profile.md)
153+
The following `SM-Saml-issuer` technical profile is used by [SAML issuer technical profile](saml-issuer-technical-profile.md)
138154

139155
```XML
140-
<TechnicalProfile Id="SM-Saml-sp">
156+
<TechnicalProfile Id="SM-Saml-issuer">
141157
<DisplayName>Session Management Provider</DisplayName>
142158
<Protocol Name="Proprietary" Handler="Web.TPEngine.SSO.SamlSSOSessionProvider, Web.TPEngine, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null"/>
143159
</TechnicalProfile>
144160
```
161+
145162
#### Metadata
146163

147164
| Attribute | Required | Description|
@@ -150,4 +167,6 @@ The following `SM-Saml-idp` technical profile is used by [SAML issuer technical
150167
| RegisterServiceProviders | No | Indicates that the provider should register all SAML service providers that have been issued an assertion. Possible values: `true` (default), or `false`.|
151168

152169

170+
## Next steps
153171

172+
- Learn more about [Azure AD B2C session](session-overview.md).

articles/active-directory-b2c/identity-provider-adfs2016-custom.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ ms.subservice: B2C
1818

1919
[!INCLUDE [active-directory-b2c-advanced-audience-warning](../../includes/active-directory-b2c-advanced-audience-warning.md)]
2020

21-
This article shows you how to enable sign-in for an ADFS user account by using [custom policies](custom-policy-overview.md) in Azure Active Directory B2C (Azure AD B2C). You enable sign-in by adding a [SAML technical profile](saml-technical-profile.md) to a custom policy.
21+
This article shows you how to enable sign-in for an ADFS user account by using [custom policies](custom-policy-overview.md) in Azure Active Directory B2C (Azure AD B2C). You enable sign-in by adding a [SAML identity provider technical profile](saml-identity-provider-technical-profile.md) to a custom policy.
2222

2323
## Prerequisites
2424

@@ -44,7 +44,7 @@ You need to store your certificate in your Azure AD B2C tenant.
4444

4545
If you want users to sign in using an ADFS account, you need to define the account as a claims provider that Azure AD B2C can communicate with through an endpoint. The endpoint provides a set of claims that are used by Azure AD B2C to verify that a specific user has authenticated.
4646

47-
You can define an ADFS account as a claims provider by adding it to the **ClaimsProviders** element in the extension file of your policy. For more information, see [define a SAML technical profile](saml-technical-profile.md).
47+
You can define an ADFS account as a claims provider by adding it to the **ClaimsProviders** element in the extension file of your policy. For more information, see [define a SAML identity provider technical profile](saml-identity-provider-technical-profile.md).
4848

4949
1. Open the *TrustFrameworkExtensions.xml*.
5050
1. Find the **ClaimsProviders** element. If it does not exist, add it under the root element.

0 commit comments

Comments
 (0)