Skip to content

Commit fb4c42d

Browse files
committed
Merge branch 'master' of https://github.com/MicrosoftDocs/azure-docs-pr into mm-assign
2 parents 212839a + 494fa22 commit fb4c42d

File tree

2,226 files changed

+35110
-20565
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,226 files changed

+35110
-20565
lines changed

.openpublishing.publish.config.json

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -277,6 +277,11 @@
277277
"url": "https://github.com/Azure/pcs-remote-monitoring-webui.git",
278278
"branch": "master"
279279
},
280+
{
281+
"path_to_root": "MachineLearningNotebooks",
282+
"url": "https://github.com/Azure/MachineLearningNotebooks",
283+
"branch": "master"
284+
},
280285
{
281286
"path_to_root": "aml-sdk-samples",
282287
"url": "https://github.com/Azure/MachineLearningNotebooks",

.openpublishing.redirection.json

Lines changed: 224 additions & 114 deletions
Large diffs are not rendered by default.

articles/active-directory-b2c/TOC.yml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -182,9 +182,13 @@
182182
- name: Customize the UI
183183
href: custom-policy-ui-customization.md
184184
displayName: ux, input, cors, html, css
185+
- name: Customize language
186+
href: custom-policy-localization.md
185187
- name: Custom email
186188
href: custom-email.md
187189
displayName: verification
190+
- name: Disable email verification
191+
href: custom-policy-disable-email-verification.md
188192
- name: Enable JavaScript
189193
href: javascript-samples.md
190194
- name: Password complexity
@@ -329,6 +333,8 @@
329333
href: restful-technical-profile.md
330334
- name: SAML
331335
href: saml-technical-profile.md
336+
- name: SAML token issuer
337+
href: saml-issuer-technical-profile.md
332338
- name: Self-asserted
333339
href: self-asserted-technical-profile.md
334340
- name: SSO session

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

Lines changed: 30 additions & 24 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/05/2020
12+
ms.date: 03/09/2020
1313
ms.author: mimart
1414
ms.subservice: B2C
1515
---
@@ -52,21 +52,21 @@ The following example shows the **AAD-Common** technical profile:
5252
</TechnicalProfile>
5353
```
5454

55-
## Input claims
55+
## InputClaims
5656

57-
The following technical profiles include **InputClaims** for social and local accounts:
57+
The InputClaims element contains a claim, which is used to look up an account in the directory, or create a new one. There must be exactly one InputClaim element in the input claims collection for all Azure AD technical profiles. You may need to map the name of the claim defined in your policy to the name defined in Azure Active Directory.
5858

59-
- The social account technical profiles **AAD-UserReadUsingAlternativeSecurityId** and **AAD-UserWriteUsingAlternativeSecurityId** includes the **AlternativeSecurityId** claim. This claim contains the social account user identifier.
60-
- The local account technical profiles **AAD-UserReadUsingEmailAddress** and **AAD-UserWriteUsingLogonEmail** includes the **email** claim. This claim contains the sign-in name of the local account.
61-
- The unified (local and social) technical profiles **AAD-UserReadUsingObjectId**, **AAD-UserWritePasswordUsingObjectId**, **AAD-UserWriteProfileUsingObjectId**, and **AAD-UserWritePhoneNumberUsingObjectId** includes the **objectId** claim. The unique identifier of an account.
59+
To read, update, or delete an existing user account, the input claim is a key that uniquely identifies the account in Azure AD directory. For example, **objectId**, **userPrincipalName**, **signInNames.emailAddress**, **signInNames.userName**, or **alternativeSecurityId**.
6260

63-
The **InputClaimsTransformations** element may contain a collection of **InputClaimsTransformation** elements that are used to modify the input claims or generate new ones.
61+
To create a new user account, the input claim is a key that uniquely identifies a local or federated account. For example, local account: **signInNames.emailAddress**, or **signInNames.userName**. For a federated account: the **alternativeSecurityId**.
6462

65-
## Output claims
63+
The [InputClaimsTransformations](technicalprofiles.md#inputclaimstransformations) element may contain a collection of input claims transformation elements that are used to modify the input claim or generate new one.
64+
65+
## OutputClaims
6666

6767
The **OutputClaims** element contains a list of claims returned by the Azure AD technical profile. You may need to map the name of the claim defined in your policy to the name defined in Azure Active Directory. You can also include claims that aren't returned by the Azure Active Directory, as long as you set the `DefaultValue` attribute.
6868

69-
The **OutputClaimsTransformations** element may contain a collection of **OutputClaimsTransformation** elements that are used to modify the output claims or generate new ones.
69+
The [OutputClaimsTransformations](technicalprofiles.md#outputclaimstransformations) element may contain a collection of **OutputClaimsTransformation** elements that are used to modify the output claims or generate new ones.
7070

7171
For example, the **AAD-UserWriteUsingLogonEmail** technical profile creates a local account and returns the following claims:
7272

@@ -88,7 +88,7 @@ For example, the **AAD-UserWriteUsingLogonEmail** technical profile creates a lo
8888

8989
## PersistedClaims
9090

91-
The **PersistedClaims** element contains all of the values that should be persisted by Azure AD with possible mapping information between a claim type already defined in the ClaimsSchema section in the policy and the Azure AD attribute name.
91+
The **PersistedClaims** element contains all of the values that should be persisted by Azure AD with possible mapping information between a claim type already defined in the [ClaimsSchema](claimsschema.md) section in the policy and the Azure AD attribute name.
9292

9393
The **AAD-UserWriteUsingLogonEmail** technical profile, which creates new local account, persists following claims:
9494

@@ -119,9 +119,7 @@ The name of the claim is the name of the Azure AD attribute unless the **Partner
119119

120120
### Read
121121

122-
The **Read** operation reads data about a single user account. To read user data, you need to provide a key as an input claim, such as **objectId**, **userPrincipalName**, **signInNames** (any type, user name and email-based account) or **alternativeSecurityId**.
123-
124-
The following technical profile reads data about a user account using the user's objectId:
122+
The **Read** operation reads data about a single user account. The following technical profile reads data about a user account using the user's objectId:
125123

126124
```XML
127125
<TechnicalProfile Id="AAD-UserReadUsingObjectId">
@@ -151,9 +149,7 @@ The following technical profile reads data about a user account using the user's
151149

152150
### Write
153151

154-
The **Write** operation creates or updates a single user account. To write a user account, you need to provide a key as an input claim, such as **objectId**, **userPrincipalName**, **signInNames.emailAddress**, or **alternativeSecurityId**.
155-
156-
The following technical profile creates new social account:
152+
The **Write** operation creates or updates a single user account. The following technical profile creates new social account:
157153

158154
```XML
159155
<TechnicalProfile Id="AAD-UserWriteUsingAlternativeSecurityId">
@@ -193,9 +189,7 @@ The following technical profile creates new social account:
193189

194190
### DeleteClaims
195191

196-
The **DeleteClaims** operation clears the information from a provided list of claims. To delete information from claims, you need to provide a key as an input claim, such as **objectId**, **userPrincipalName**, **signInNames.emailAddress** or **alternativeSecurityId**.
197-
198-
The following technical profile deletes claims:
192+
The **DeleteClaims** operation clears the information from a provided list of claims. The following technical profile deletes claims:
199193

200194
```XML
201195
<TechnicalProfile Id="AAD-DeleteClaimsUsingObjectId">
@@ -216,9 +210,7 @@ The following technical profile deletes claims:
216210

217211
### DeleteClaimsPrincipal
218212

219-
The **DeleteClaimsPrincipal** operation deletes a single user account from the directory. To delete a user account, you need to provide a key as an input claim, such as **objectId**, **userPrincipalName**, **signInNames.emailAddress** or **alternativeSecurityId**.
220-
221-
The following technical profile deletes a user account from the directory using the user principal name:
213+
The **DeleteClaimsPrincipal** operation deletes a single user account from the directory. The following technical profile deletes a user account from the directory using the user principal name:
222214

223215
```XML
224216
<TechnicalProfile Id="AAD-DeleteUserUsingObjectId">
@@ -253,13 +245,27 @@ The following technical profile deletes a social user account using **alternativ
253245
| --------- | -------- | ----------- |
254246
| Operation | Yes | The operation to be performed. Possible values: `Read`, `Write`, `DeleteClaims`, or `DeleteClaimsPrincipal`. |
255247
| RaiseErrorIfClaimsPrincipalDoesNotExist | No | Raise an error if the user object does not exist in the directory. Possible values: `true` or `false`. |
256-
| UserMessageIfClaimsPrincipalDoesNotExist | No | If an error is to be raised (see the RaiseErrorIfClaimsPrincipalDoesNotExist attribute description), specify the message to show to the user if user object does not exist. The value can be [localized](localization.md).|
257248
| RaiseErrorIfClaimsPrincipalAlreadyExists | No | Raise an error if the user object already exists. Possible values: `true` or `false`.|
258-
| UserMessageIfClaimsPrincipalAlreadyExists | No | If an error is to be raised (see RaiseErrorIfClaimsPrincipalAlreadyExists attribute description), specify the message to show to the user if user object already exists. The value can be [localized](localization.md).|
259249
| ApplicationObjectId | No | The application object identifier for extension attributes. Value: ObjectId of an application. For more information, see [Use custom attributes in a custom profile edit policy](custom-policy-custom-attributes.md). |
260250
| 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) |
261251
| 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`. |
262252

253+
### Error messages
254+
255+
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).
256+
257+
| Attribute | Required | Description |
258+
| --------- | -------- | ----------- |
259+
| UserMessageIfClaimsPrincipalAlreadyExists | No | If an error is to be raised (see RaiseErrorIfClaimsPrincipalAlreadyExists attribute description), specify the message to show to the user if user object already exists. |
260+
| UserMessageIfClaimsPrincipalDoesNotExist | No | If an error is to be raised (see the RaiseErrorIfClaimsPrincipalDoesNotExist attribute description), specify the message to show to the user if user object does not exist. |
261+
262+
263+
## Next steps
264+
265+
See the following article, for example of using Azure AD technical profile:
266+
267+
- [Add claims and customize user input using custom policies in Azure Active Directory B2C](custom-policy-configure-user-input.md)
268+
263269

264270

265271

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

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ During the implementation phase, consider the following recommendations.
4747

4848
| | |
4949
|--|--|
50-
| Edit custom policies with the Azure AD B2C extension for Visual Studio Code | Download Visual Studio Code and this community-built [extension from the Visual Studio Code Marketplace]((https://marketplace.visualstudio.com/items?itemName=AzureADB2CTools.aadb2c)). While not an official Microsoft product, the Azure AD B2C extension for Visual Studio Code includes several features that help make working with custom policies easier. |
50+
| Edit custom policies with the Azure AD B2C extension for Visual Studio Code | Download Visual Studio Code and this community-built [extension from the Visual Studio Code Marketplace](https://marketplace.visualstudio.com/items?itemName=AzureADB2CTools.aadb2c). While not an official Microsoft product, the Azure AD B2C extension for Visual Studio Code includes several features that help make working with custom policies easier. |
5151
| Learn how to troubleshoot Azure AD B2C | Learn how to [troubleshoot custom policies](https://docs.microsoft.com/azure/active-directory-b2c/troubleshoot-custom-policies?tabs=applications) during development. Learn what a normal authentication flow looks like and use tools for discovering anomalies and errors. For example, use [Application Insights](troubleshoot-with-application-insights.md) to review output logs of user journeys. |
5252
| Leverage our library of proven custom policy patterns | Find [samples](https://github.com/azure-ad-b2c/samples) for several enhanced Azure AD B2C customer identity and access management (CIAM) user journeys. |
5353

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

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -109,7 +109,7 @@ Next, upload the SAML assertion and response signing certificate to Azure AD B2C
109109
110110
### 2.1 Create the SAML token issuer
111111
112-
Now, add the capability for your tenant to issue SAML tokens.
112+
Now, add the capability for your tenant to issue SAML tokens, using [SAML token issuer](saml-issuer-technical-profile.md) and [SAML session provider](custom-policy-reference-sso.md#samlssosessionprovider) technical profiles.
113113
114114
Open `SocialAndLocalAccounts\`**`TrustFrameworkExtensions.xml`** in the custom policy starter pack.
115115
@@ -293,7 +293,7 @@ The metadata is information used in the SAML protocol to expose the configuratio
293293

294294
If there are properties specified in *both* the SAML metadata URL and in the application registration's manifest, they are **merged**. The properties specified in the metadata URL are processed first and take precedence.
295295

296-
For this tutorial which uses the SAML test application, use the following value for `samlMetadataUrl`:
296+
For this tutorial, which uses the SAML test application, use the following value for `samlMetadataUrl`:
297297

298298
```JSON
299299
"samlMetadataUrl":"https://samltestapp2.azurewebsites.net/Metadata",
@@ -320,7 +320,7 @@ For this tutorial, in which you use the SAML test application, set the `url` pro
320320

321321
This optional property represents the `Logout` URL (`SingleLogoutService` URL in the relying party metadata), and the `BindingType` for this is assumed to be `Http-Redirect`.
322322

323-
For this tutorial which uses the SAML test application, leave `logoutUrl` set to `https://samltestapp2.azurewebsites.net/logout`:
323+
For this tutorial, which uses the SAML test application, leave `logoutUrl` set to `https://samltestapp2.azurewebsites.net/logout`:
324324

325325
```JSON
326326
"logoutUrl": "https://samltestapp2.azurewebsites.net/logout",

articles/active-directory-b2c/custom-email.md

Lines changed: 7 additions & 5 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: 02/05/2020
12+
ms.date: 03/05/2020
1313
ms.author: mimart
1414
ms.subservice: B2C
1515
---
@@ -295,10 +295,6 @@ Add the following technical profiles to the `<ClaimsProviders>` element.
295295
<Protocol Name="Proprietary" Handler="Web.TPEngine.Providers.OneTimePasswordProtocolProvider, Web.TPEngine, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" />
296296
<Metadata>
297297
<Item Key="Operation">VerifyCode</Item>
298-
<Item Key="UserMessage.VerificationHasExpired">You have exceed the maximum time allowed.</Item>
299-
<Item Key="UserMessage.MaxRetryAttemped">You have exceed the number of retries allowed.</Item>
300-
<Item Key="UserMessage.InvalidCode">You have entered the wrong code.</Item>
301-
<Item Key="UserMessage.ServerError">Cannot verify the code, please try again later.</Item>
302298
</Metadata>
303299
<InputClaims>
304300
<InputClaim ClaimTypeReferenceId="email" PartnerClaimType="identifier" />
@@ -359,6 +355,12 @@ For more information, see [Self-asserted technical profile](restful-technical-pr
359355
<Item Key="IpAddressClaimReferenceId">IpAddress</Item>
360356
<Item Key="ContentDefinitionReferenceId">api.localaccountsignup</Item>
361357
<Item Key="language.button_continue">Create</Item>
358+
359+
<!--OTP validation error messages-->
360+
<Item Key="UserMessageIfSessionDoesNotExist">You have exceed the maximum time allowed.</Item>
361+
<Item Key="UserMessageIfMaxRetryAttempted">You have exceed the number of retries allowed.</Item>
362+
<Item Key="UserMessageIfInvalidCode">You have entered the wrong code.</Item>
363+
<Item Key="UserMessageIfSessionConflict">Cannot verify the code, please try again later.</Item>
362364
</Metadata>
363365
<InputClaims>
364366
<InputClaim ClaimTypeReferenceId="email" />

0 commit comments

Comments
 (0)