Skip to content

Commit 651dd9a

Browse files
committed
fixing merge conflict
2 parents 36263ec + 063c9f7 commit 651dd9a

File tree

2,159 files changed

+31902
-16938
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,159 files changed

+31902
-16938
lines changed

.openpublishing.redirection.json

Lines changed: 188 additions & 31 deletions
Large diffs are not rendered by default.

.vscode/settings.json

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,7 @@
11
{
2+
"markdown.docsetName": "azure",
3+
"markdown.docsetRootFolderName": "articles",
4+
"markdown.omitDefaultJsonProperties": true,
25
"markdown.docsetLanguages": [
36
".NET Core CLI",
47
"Apache",

articles/active-directory-b2c/TOC.yml

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -233,18 +233,16 @@
233233
href: direct-signin.md
234234
- name: Add your own business logic
235235
items:
236+
- name: Integrate REST API
237+
href: custom-policy-rest-api-intro.md
236238
- name: Validate user input
237239
href: custom-policy-rest-api-claims-validation.md
238240
displayName: rest claims validation, validate
239241
- name: Obtain additional claims
240242
href: custom-policy-rest-api-claims-exchange.md
241243
displayName: rest claims exchange
242-
- name: Add your own RESTful API
243-
href: rest-api-claims-exchange-dotnet.md
244-
- name: Secure RESTful APIs with basic auth
245-
href: secure-rest-api-dotnet-basic-auth.md
246-
- name: Secure RESTful APIs with certificate auth
247-
href: secure-rest-api-dotnet-certificate-auth.md
244+
- name: Secure REST API
245+
href: secure-rest-api.md
248246
- name: Define custom attributes
249247
href: custom-policy-custom-attributes.md
250248
- name: Troubleshooting
@@ -406,7 +404,7 @@
406404
href: error-codes.md
407405
- name: Extensions app
408406
href: extensions-app.md
409-
- name: Identity Experience Framework release notes
407+
- name: IEF release notes
410408
href: custom-policy-developer-notes.md
411409
- name: Microsoft Graph API operations
412410
href: microsoft-graph-operations.md

articles/active-directory-b2c/active-directory-technical-profile.md

Lines changed: 2 additions & 2 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/16/2020
12+
ms.date: 03/26/2020
1313
ms.author: mimart
1414
ms.subservice: B2C
1515
---
@@ -251,7 +251,7 @@ The following technical profile deletes a social user account using **alternativ
251251
| ClientId | No | The client identifier for accessing the tenant as a third party. For more information, see [Use custom attributes in a custom profile edit policy](custom-policy-custom-attributes.md) |
252252
| IncludeClaimResolvingInClaimsHandling  | No | For input and output claims, specifies whether [claims resolution](claim-resolver-overview.md) is included in the technical profile. Possible values: `true`, or `false` (default). If you want to use a claims resolver in the technical profile, set this to `true`. |
253253

254-
## Error messages
254+
### UI elements
255255

256256
The following settings can be used to configure the error message displayed upon failure. The metadata should be configured in the [self-asserted](self-asserted-technical-profile.md) technical profile. The error messages can be [localized](localization.md).
257257

articles/active-directory-b2c/analytics-with-application-insights.md

Lines changed: 88 additions & 90 deletions
Large diffs are not rendered by default.

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

Lines changed: 4 additions & 4 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/20/2020
12+
ms.date: 03/30/2020
1313
ms.author: mimart
1414
ms.subservice: B2C
1515
---
@@ -72,7 +72,7 @@ The following sections list available claim resolvers.
7272
| {OIDC:Prompt} | The `prompt` query string parameter. | login |
7373
| {OIDC:RedirectUri} |The `redirect_uri` query string parameter. | https://jwt.ms |
7474
| {OIDC:Resource} |The `resource` query string parameter. | N/A |
75-
| {OIDC:scope} |The `scope` query string parameter. | openid |
75+
| {OIDC:Scope} |The `scope` query string parameter. | openid |
7676
| {OIDC:Username}| The [resource owner password credentials flow](ropc-custom.md) user's username.| [email protected]|
7777

7878
### Context
@@ -158,7 +158,7 @@ The following example shows a RESTful technical profile with this scenario:
158158
<InputClaims>
159159
<InputClaim ClaimTypeReferenceId="userLanguage" DefaultValue="{Culture:LCID}" AlwaysUseDefaultValue="true" />
160160
<InputClaim ClaimTypeReferenceId="policyName" DefaultValue="{Policy:PolicyId}" AlwaysUseDefaultValue="true" />
161-
<InputClaim ClaimTypeReferenceId="scope" DefaultValue="{OIDC:scope}" AlwaysUseDefaultValue="true" />
161+
<InputClaim ClaimTypeReferenceId="scope" DefaultValue="{OIDC:Scope}" AlwaysUseDefaultValue="true" />
162162
<InputClaim ClaimTypeReferenceId="clientId" DefaultValue="{OIDC:ClientId}" AlwaysUseDefaultValue="true" />
163163
</InputClaims>
164164
<UseTechnicalProfileForSessionManagement ReferenceId="SM-Noop" />
@@ -171,7 +171,7 @@ Using claim resolvers, you can prepopulate the sign-in name or direct sign-in to
171171

172172
### Dynamic UI customization
173173

174-
Azure AD B2C enables you to pass query string parameters to your HTML content definition endpoints to dynamically render the page content. For example, this allows the ability to modify the background image on the Azure AD B2C sign-up or sign-in page based on a custom parameter that you pass from your web or mobile application. For more information, see [Dynamically configure the UI by using custom policies in Azure Active Directory B2C](custom-policy-ui-customization.md). You can also localize your HTML page based on a language parameter, or you can change the content based on the client ID.
174+
Azure AD B2C enables you to pass query string parameters to your HTML content definition endpoints to dynamically render the page content. For example, this feature allows the ability to modify the background image on the Azure AD B2C sign-up or sign-in page based on a custom parameter that you pass from your web or mobile application. For more information, see [Dynamically configure the UI by using custom policies in Azure Active Directory B2C](custom-policy-ui-customization.md#configure-dynamic-custom-page-content-uri). You can also localize your HTML page based on a language parameter, or you can change the content based on the client ID.
175175

176176
The following example passes in the query string parameter named **campaignId** with a value of `Hawaii`, a **language** code of `en-US`, and **app** representing the client ID:
177177

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

Lines changed: 64 additions & 47 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: 02/12/2020
12+
ms.date: 03/30/2020
1313
ms.author: mimart
1414
ms.subservice: B2C
1515
---
@@ -55,85 +55,102 @@ Developers consuming the custom policy feature set should adhere to the followin
5555

5656
Custom policy/Identity Experience Framework capabilities are under constant and rapid development. The following table is an index of features and component availability.
5757

58-
### Identity Providers, Tokens, Protocols
58+
59+
### Protocols and authorization flows
5960

6061
| Feature | Development | Preview | GA | Notes |
6162
|-------- | :-----------: | :-------: | :--: | ----- |
62-
| IDP-OpenIDConnect | | | X | For example, Google+. |
63-
| IDP-OAUTH2 | | | X | For example, Facebook. |
64-
| IDP-OAUTH1 (twitter) | | X | | For example, Twitter. |
65-
| IDP-OAUTH1 (ex-twitter) | | | | Not supported |
66-
| IDP-SAML | | | X | For example, Salesforce, ADFS. |
67-
| IDP-WSFED | X | | | |
68-
| Relying Party OAUTH1 | | | | Not supported. |
69-
| Relying Party OAUTH2 | | | X | |
70-
| Relying Party OIDC | | | X | |
71-
| Relying Party SAML | |X | | |
72-
| Relying Party WSFED | X | | | |
73-
| REST API with basic and certificate auth | | | X | For example, Azure Logic Apps. |
74-
75-
### Component Support
63+
| [OAuth2 authorization code](authorization-code-flow.md) | | | X | |
64+
| OAuth2 authorization code with PKCE | | | X | Mobile applications only |
65+
| [OAuth2 implicit flow](implicit-flow-single-page-application.md) | | | X | |
66+
| [OAuth2 resource owner password credentials](ropc-custom.md) | | X | | |
67+
| [OIDC Connect](openid-connect.md) | | | X | |
68+
| [SAML2](connect-with-saml-service-providers.md) | |X | | POST and Redirect bindings. |
69+
| OAuth1 | | | | Not supported. |
70+
| WSFED | X | | | |
71+
72+
### Identify providers federation
73+
74+
| Feature | Development | Preview | GA | Notes |
75+
|-------- | :-----------: | :-------: | :--: | ----- |
76+
| [OpenID Connect](openid-connect-technical-profile.md) | | | X | For example, Google+. |
77+
| [OAuth2](oauth2-technical-profile.md) | | | X | For example, Facebook. |
78+
| [OAuth1](oauth1-technical-profile.md) | | X | | For example, Twitter. |
79+
| [SAML2](saml-technical-profile.md) | | | X | For example, Salesforce, ADFS. |
80+
| WSFED| X | | | |
81+
82+
83+
### REST API integration
84+
85+
| Feature | Development | Preview | GA | Notes |
86+
|-------- | :-----------: | :-------: | :--: | ----- |
87+
| [REST API with basic auth](secure-rest-api.md#http-basic-authentication) | | | X | |
88+
| [REST API with client certificate auth](secure-rest-api.md#https-client-certificate-authentication) | | | X | |
89+
| [REST API with OAuth2 bearer auth](secure-rest-api.md#oauth2-bearer-authentication) | | X | | |
90+
91+
### Component support
7692

7793
| Feature | Development | Preview | GA | Notes |
7894
| ------- | :-----------: | :-------: | :--: | ----- |
79-
| Azure Multi Factor Authentication | | | X | |
80-
| Azure Active Directory as local directory | | | X | |
81-
| Azure Email subsystem for email verification | | | X | |
82-
| Multi-language support| | | X | |
83-
| Predicate Validations | | | X | For example, password complexity. |
84-
| Using third party email service providers | |X | | |
95+
| [Phone factor authentication](phone-factor-technical-profile.md) | | | X | |
96+
| [Azure MFA authentication](multi-factor-auth-technical-profile.md) | | X | | |
97+
| [One-time password](one-time-password-technical-profile.md) | | X | | |
98+
| [Azure Active Directory](active-directory-technical-profile.md) as local directory | | | X | |
99+
| Azure email subsystem for email verification | | | X | |
100+
| [Third party email service providers](custom-email.md) | |X | | |
101+
| [Multi-language support](localization.md)| | | X | |
102+
| [Predicate validations](predicates.md) | | | X | For example, password complexity. |
103+
| [Display controls](display-controls.md) | |X | | |
85104

86-
### Content Definition
105+
106+
### Page layout versions
87107

88108
| Feature | Development | Preview | GA | Notes |
89109
| ------- | :-----------: | :-------: | :--: | ----- |
90-
| Error page, api.error | | | X | |
91-
| IDP selection page, api.idpselections | | | X | |
92-
| IDP selection for signup, api.idpselections.signup | | | X | |
93-
| Forgot Password, api.localaccountpasswordreset | | | X | |
94-
| Local Account Sign-in, api.localaccountsignin | | | X | |
95-
| Local Account Sign-up, api.localaccountsignup | | | X | |
96-
| MFA page, api.phonefactor | | | X | |
97-
| Self-asserted social account sign-up, api.selfasserted | | | X | |
98-
| Self-asserted profile update, api.selfasserted.profileupdate | | | X | |
99-
| Unified signup or sign-in page, api.signuporsignin, with parameter "disableSignup" | | | X | |
100-
| JavaScript / Page layout | | X | | |
110+
| [2.0.0](page-layout.md#200) | | X | | |
111+
| [1.2.0](page-layout.md#120) | | X | | |
112+
| [1.1.0](page-layout.md#110) | | | X | |
113+
| [1.0.0](page-layout.md#100) | | | X | |
114+
| [JavaScript support](javascript-samples.md) | | X | | |
101115

102116
### App-IEF integration
103117

104118
| Feature | Development | Preview | GA | Notes |
105119
| ------- | :-----------: | :-------: | :--: | ----- |
106-
| Query string parameter domain_hint | | | X | Available as claim, can be passed to IDP. |
107-
| Query string parameter login_hint | | | X | Available as claim, can be passed to IDP. |
108-
| Insert JSON into UserJourney via client_assertion | X | | | Will be deprecated. |
109-
| Insert JSON into UserJourney as id_token_hint | | X | | Go-forward approach to pass JSON. |
110-
| Pass IDP TOKEN to the application | | X | | For example, from Facebook to app. |
120+
| Query string parameter `domain_hint` | | | X | Available as claim, can be passed to IDP. |
121+
| Query string parameter `login_hint` | | | X | Available as claim, can be passed to IDP. |
122+
| Insert JSON into user journey via `client_assertion` | X | | | Will be deprecated. |
123+
| Insert JSON into user journey as `id_token_hint` | | X | | Go-forward approach to pass JSON. |
124+
| [Pass identity provider token to the application](idp-pass-through-custom.md) | | X | | For example, from Facebook to app. |
111125

112126
### Session Management
113127

114128
| Feature | Development | Preview | GA | Notes |
115129
| ------- | :-----------: | :-------: | :--: | ----- |
116-
| SSO Session Provider | | | X | |
117-
| External Login Session Provider | | | X | |
118-
| SAML SSO Session Provider | | | X | |
119-
| Default SSO Session Provider | | | X | |
130+
| [Default SSO session provider](custom-policy-reference-sso.md#defaultssosessionprovider) | | | X | |
131+
| [External login session provider](custom-policy-reference-sso.md#externalloginssosessionprovider) | | | X | |
132+
| [SAML SSO session provider](custom-policy-reference-sso.md#samlssosessionprovider) | | | X | |
133+
120134

121135
### Security
122136

123137
| Feature | Development | Preview | GA | Notes |
124138
|-------- | :-----------: | :-------: | :--: | ----- |
125139
| Policy Keys- Generate, Manual, Upload | | | X | |
126140
| Policy Keys- RSA/Cert, Secrets | | | X | |
127-
| Policy upload | | | X | |
141+
128142

129143
### Developer interface
130144

131145
| Feature | Development | Preview | GA | Notes |
132146
| ------- | :-----------: | :-------: | :--: | ----- |
133147
| Azure Portal-IEF UX | | | X | |
134-
| Application Insights UserJourney Logs | | X | | Used for troubleshooting during development. |
135-
| Application Insights Event Logs (via orchestration steps) | | X | | Used to monitor user flows in production. |
148+
| Policy upload | | | X | |
149+
| [Application Insights user journey logs](troubleshoot-with-application-insights.md) | | X | | Used for troubleshooting during development. |
150+
| [Application Insights event logs](application-insights-technical-profile.md) | | X | | Used to monitor user flows in production. |
151+
136152

137153
## Next steps
138154

139-
Learn more about [custom policies and the differences with user flows](custom-policy-overview.md).
155+
- Check the [Microsoft Graph operations available for Azure AD B2C](microsoft-graph-operations.md)
156+
- Learn more about [custom policies and the differences with user flows](custom-policy-overview.md).

articles/active-directory-b2c/custom-policy-keep-me-signed-in.md

Lines changed: 31 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ manager: celestedg
88
ms.service: active-directory
99
ms.workload: identity
1010
ms.topic: conceptual
11-
ms.date: 02/27/2020
11+
ms.date: 03/26/2020
1212
ms.author: mimart
1313
ms.subservice: B2C
1414
---
@@ -48,9 +48,27 @@ To enable KMSI, set the content definition `DataUri` element to [page identifier
4848
</BuildingBlocks>
4949
```
5050

51-
1. Save the extensions file.
51+
## Add the metadata to the self-asserted technical profile
52+
53+
To add the KMSI checkbox to the sign-up and sign-in page, set the `setting.enableRememberMe` metadata to false. Override the SelfAsserted-LocalAccountSignin-Email technical profiles in the extension file.
5254

55+
1. Find the ClaimsProviders element. If the element doesn't exist, add it.
56+
1. Add the following claims provider to the ClaimsProviders element:
57+
58+
```XML
59+
<ClaimsProvider>
60+
<DisplayName>Local Account</DisplayName>
61+
<TechnicalProfiles>
62+
<TechnicalProfile Id="SelfAsserted-LocalAccountSignin-Email">
63+
<Metadata>
64+
<Item Key="setting.enableRememberMe">True</Item>
65+
</Metadata>
66+
</TechnicalProfile>
67+
</TechnicalProfiles>
68+
</ClaimsProvider>
69+
```
5370

71+
1. Save the extensions file.
5472

5573
## Configure a relying party file
5674

@@ -103,7 +121,15 @@ We recommend that you set the value of SessionExpiryInSeconds to be a short peri
103121
</RelyingParty>
104122
```
105123

106-
4. Save your changes and then upload the file.
107-
5. To test the custom policy that you uploaded, in the Azure portal, go to the policy page, and then select **Run now**.
124+
## Test your policy
125+
126+
1. Save your changes, and then upload the file.
127+
1. To test the custom policy you uploaded, in the Azure portal, go to the policy page, and then select **Run now**.
128+
1. Type your **username** and **password**, select **Keep me signed in**, and then click **sign-in**.
129+
1. Go back to the Azure portal. Go to the policy page, and then select **Copy** to copy the sign-in URL.
130+
1. In the browser address bar, remove the `&prompt=login` query string parameter, which forces the user to enter their credentials on that request.
131+
1. In the browser, click **Go**. Now Azure AD B2C will issue an access token without prompting you to sign-in again.
132+
133+
## Next steps
108134

109-
You can find the sample policy [here](https://github.com/Azure-Samples/active-directory-b2c-custom-policy-starterpack/tree/master/scenarios/keep%20me%20signed%20in).
135+
Find the sample policy [here](https://github.com/Azure-Samples/active-directory-b2c-custom-policy-starterpack/tree/master/scenarios/keep%20me%20signed%20in).

0 commit comments

Comments
 (0)