Skip to content

Commit 65bc8e5

Browse files
committed
Merge branch 'master' of https://github.com/MicrosoftDocs/azure-docs-pr into work-replace-scaling
2 parents 487618d + 3946975 commit 65bc8e5

File tree

873 files changed

+6389
-12595
lines changed

Some content is hidden

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

873 files changed

+6389
-12595
lines changed

.openpublishing.redirection.json

Lines changed: 439 additions & 78 deletions
Large diffs are not rendered by default.

articles/active-directory-b2c/boolean-transformations.md

Lines changed: 39 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: 09/10/2018
12+
ms.date: 02/03/2020
1313
ms.author: marsma
1414
ms.subservice: B2C
1515
---
@@ -110,6 +110,44 @@ The self-asserted technical profile calls the validation **login-NonInteractive*
110110
- **valueToCompareTo**: true
111111
- Result: Error thrown
112112

113+
## CompareBooleanClaimToValue
114+
115+
Checks that boolean value of a claims is equal to `true` or `false`, and return the result of the compression.
116+
117+
| Item | TransformationClaimType | Data Type | Notes |
118+
| ---- | ------------------------ | ---------- | ----- |
119+
| inputClaim | inputClaim | boolean | The ClaimType to be asserted. |
120+
| InputParameter |valueToCompareTo | boolean | The value to compare (true or false). |
121+
| OutputClaim | inputClaim | boolean | The ClaimType that is produced after this ClaimsTransformation has been invoked. |
122+
123+
124+
The following claims transformation demonstrates how to check the value of a boolean ClaimType with a `true` value. If the value of the `IsAgeOver21Years` ClaimType is equal to `true`, the claims transformation returns `true`, otherwise `false`.
125+
126+
```XML
127+
<ClaimsTransformation Id="AssertAccountEnabled" TransformationMethod="CompareBooleanClaimToValue">
128+
<InputClaims>
129+
<InputClaim ClaimTypeReferenceId="IsAgeOver21Years" TransformationClaimType="inputClaim" />
130+
</InputClaims>
131+
<InputParameters>
132+
<InputParameter Id="valueToCompareTo" DataType="boolean" Value="true" />
133+
</InputParameters>
134+
<OutputClaims>
135+
<OutputClaim ClaimTypeReferenceId="accountEnabled" TransformationClaimType="compareResult"/>
136+
</OutputClaims>
137+
</ClaimsTransformation>
138+
```
139+
140+
### Example
141+
142+
- Input claims:
143+
- **inputClaim**: false
144+
- Input parameters:
145+
- **valueToCompareTo**: true
146+
- Output claims:
147+
- **compareResult**: false
148+
149+
150+
113151
## NotClaims
114152

115153
Performs a Not operation of the boolean inputClaim and sets the outputClaim with result of the operation.
@@ -170,4 +208,3 @@ The following claims transformation demonstrates how to `Or` two boolean ClaimTy
170208
- **inputClaim2**: false
171209
- Output claims:
172210
- **outputClaim**: true
173-

articles/active-directory-b2c/date-transformations.md

Lines changed: 30 additions & 1 deletion
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: reference
11-
ms.date: 09/10/2018
11+
ms.date: 02/03/2020
1212
ms.author: marsma
1313
ms.subservice: B2C
1414
---
@@ -110,6 +110,35 @@ The following example demonstrates the conversion of the claim `dateOfBirth` (da
110110
- Output claims:
111111
- **outputClaim**: 1559347200 (June 1, 2019 12:00:00 AM)
112112

113+
## ConvertDateTimeToDateClaim
114+
115+
Converts a **DateTime** ClaimType to a **Date** ClaimType. The claims transformation removes the time format from the date.
116+
117+
| Item | TransformationClaimType | Data Type | Notes |
118+
| ---- | ----------------------- | --------- | ----- |
119+
| InputClaim | inputClaim | dateTime | The ClaimType to be converted. |
120+
| OutputClaim | outputClaim | date | The ClaimType that is produced after this ClaimsTransformation has been invoked. |
121+
122+
The following example demonstrates the conversion of the claim `systemDateTime` (dateTime data type) to another claim `systemDate` (date data type).
123+
124+
```XML
125+
<ClaimsTransformation Id="ConvertToDate" TransformationMethod="ConvertDateTimeToDateClaim">
126+
<InputClaims>
127+
<InputClaim ClaimTypeReferenceId="systemDateTime" TransformationClaimType="inputClaim" />
128+
</InputClaims>
129+
<OutputClaims>
130+
<OutputClaim ClaimTypeReferenceId="systemDate" TransformationClaimType="outputClaim" />
131+
</OutputClaims>
132+
</ClaimsTransformation>
133+
```
134+
135+
### Example
136+
137+
- Input claims:
138+
- **inputClaim**: 1559347200 (June 1, 2019 12:00:00 AM)
139+
- Output claims:
140+
- **outputClaim**: 2019-06-01
141+
113142
## GetCurrentDateTime
114143

115144
Get the current UTC date and time and add the value to a ClaimType.

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

Lines changed: 6 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: 12/10/2019
12+
ms.date: 02/04/2020
1313
ms.author: marsma
1414
ms.subservice: B2C
1515
---
@@ -186,15 +186,16 @@ You can also call a REST API technical profile with your business logic, overwri
186186

187187
| Attribute | Required | Description |
188188
| --------- | -------- | ----------- |
189-
| setting.showContinueButton | No | Displays the continue button. Possible values: `true` (default), or `false` |
190-
| setting.showCancelButton | No | Displays the cancel button. Possible values: `true` (default), or `false` |
191189
| setting.operatingMode | No | For a sign-in page, this property controls the behavior of the username field, such as input validation and error messages. Expected values: `Username` or `Email`. |
190+
| AllowGenerationOfClaimsWithNullValues| No| Allow to generate a claim with null value. For example, in a case user doesn't select a checkbox.|
192191
| ContentDefinitionReferenceId | Yes | The identifier of the [content definition](contentdefinitions.md) associated with this technical profile. |
193192
| EnforceEmailVerification | No | For sign-up or profile edit, enforces email verification. Possible values: `true` (default), or `false`. |
194-
| setting.showSignupLink | No | Displays the sign-up button. Possible values: `true` (default), or `false` |
195193
| setting.retryLimit | No | Controls the number of times a user can try to provide the data that is checked against a validation technical profile . For example, a user tries to sign-up with an account that already exists and keeps trying until the limit reached.
196194
| SignUpTarget | No | The signup target exchange identifier. When the user clicks the sign-up button, Azure AD B2C executes the specified exchange identifier. |
197-
195+
| setting.showCancelButton | No | Displays the cancel button. Possible values: `true` (default), or `false` |
196+
| setting.showContinueButton | No | Displays the continue button. Possible values: `true` (default), or `false` |
197+
| setting.showSignupLink | No | Displays the sign-up button. Possible values: `true` (default), or `false` |
198+
| setting.forgotPasswordLinkLocation| No| Displays the forgot password link. Possible values: `AfterInput` (default) the link is displayed at the bottom of the page, or `None` removes the forgot password link.|
198199
## Cryptographic keys
199200

200201
The **CryptographicKeys** element is not used.

articles/active-directory-b2c/string-transformations.md

Lines changed: 227 additions & 1 deletion
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: 09/10/2018
12+
ms.date: 02/04/2020
1313
ms.author: marsma
1414
ms.subservice: B2C
1515
---
@@ -495,6 +495,47 @@ Use this claims transformation to parse the domain name after the @ symbol of th
495495
- Output claims:
496496
- **domain**: outlook.com
497497

498+
## SetClaimsIfRegexMatch
499+
500+
Checks that a string claim `claimToMatch` and `matchTo` input parameter are equal, and sets the output claims with the value present in `outputClaimIfMatched` input parameter, along with compare result output claim, which is to be set as `true` or `false` based on the result of comparison.
501+
502+
| Item | TransformationClaimType | Data Type | Notes |
503+
| ---- | ----------------------- | --------- | ----- |
504+
| inputClaim | claimToMatch | string | The claim type, which is to be compared. |
505+
| InputParameter | matchTo | string | The regular expression to match. |
506+
| InputParameter | outputClaimIfMatched | string | The value to be set if strings are equal. |
507+
| OutputClaim | outputClaim | string | If regular expression is match, this output claim contains the value of `outputClaimIfMatched` input parameter. Or null, if no match. |
508+
| OutputClaim | regexCompareResultClaim | boolean | The regular expression match result output claim type, which is to be set as `true` or `false` based on the result of matching. |
509+
510+
For example, checks whether the provided phone number is valid, based on phone number regular expression pattern.
511+
512+
```XML
513+
<ClaimsTransformation Id="SetIsPhoneRegex" TransformationMethod="setClaimsIfRegexMatch">
514+
<InputClaims>
515+
<InputClaim ClaimTypeReferenceId="phone" TransformationClaimType="claimToMatch" />
516+
</InputClaims>
517+
<InputParameters>
518+
<InputParameter Id="matchTo" DataType="string" Value="^[0-9]{4,16}$" />
519+
<InputParameter Id="outputClaimIfMatched" DataType="string" Value="isPhone" />
520+
</InputParameters>
521+
<OutputClaims>
522+
<OutputClaim ClaimTypeReferenceId="validationResult" TransformationClaimType="outputClaim" />
523+
<OutputClaim ClaimTypeReferenceId="isPhoneBoolean" TransformationClaimType="regexCompareResultClaim" />
524+
</OutputClaims>
525+
</ClaimsTransformation>
526+
```
527+
528+
### Example
529+
530+
- Input claims:
531+
- **claimToMatch**: "64854114520"
532+
- Input parameters:
533+
- **matchTo**: "^[0-9]{4,16}$"
534+
- **outputClaimIfMatched**: "isPhone"
535+
- Output claims:
536+
- **outputClaim**: "isPhone"
537+
- **regexCompareResultClaim**: true
538+
498539
## SetClaimsIfStringsAreEqual
499540

500541
Checks that a string claim and `matchTo` input parameter are equal, and sets the output claims with the value present in `stringMatchMsg` and `stringMatchMsgCode` input parameters, along with compare result output claim, which is to be set as `true` or `false` based on the result of comparison.
@@ -588,3 +629,188 @@ For example, the following claims transformation checks if the value of **ageGro
588629
- **isMinorResponseCode**: B2C_V1_90001
589630
- **isMinor**: true
590631

632+
633+
## StringContains
634+
635+
Determine whether a specified substring occurs within the input claim. The result is a new boolean ClaimType with a value of `true` or `false`. `true` if the value parameter occurs within this string, otherwise, `false`.
636+
637+
| Item | TransformationClaimType | Data Type | Notes |
638+
| ---- | ----------------------- | --------- | ----- |
639+
| InputClaim | inputClaim | string | The claim type, which is to be searched. |
640+
|InputParameter|contains|string|The value to search.|
641+
|InputParameter|ignoreCase|string|Specifies whether this comparison should ignore the case of the string being compared.|
642+
| OutputClaim | outputClaim | string | The ClaimType that is produced after this ClaimsTransformation has been invoked. A boolean indicator if the substring occurs within the input claim. |
643+
644+
Use this claims transformation to check if a string claim type contains a substring. Following example, checks whether the `roles` string claim type contains the value of **admin**.
645+
646+
```XML
647+
<ClaimsTransformation Id="CheckIsAdmin" TransformationMethod="StringContains">
648+
<InputClaims>
649+
<InputClaim ClaimTypeReferenceId="roles" TransformationClaimType="inputClaim"/>
650+
</InputClaims>
651+
<InputParameters>
652+
<InputParameter Id="contains" DataType="string" Value="admin"/>
653+
<InputParameter Id="ignoreCase" DataType="string" Value="true"/>
654+
</InputParameters>
655+
<OutputClaims>
656+
<OutputClaim ClaimTypeReferenceId="isAdmin" TransformationClaimType="outputClaim"/>
657+
</OutputClaims>
658+
</ClaimsTransformation>
659+
```
660+
661+
### Example
662+
663+
- Input claims:
664+
- **inputClaim**: "Admin, Approver, Editor"
665+
- Input parameters:
666+
- **contains**: "admin,"
667+
- **ignoreCase**: true
668+
- Output claims:
669+
- **outputClaim**: true
670+
671+
## StringSubstring
672+
673+
Extracts parts of a string claim type, beginning at the character at the specified position, and returns the specified number of characters.
674+
675+
| Item | TransformationClaimType | Data Type | Notes |
676+
| ---- | ----------------------- | --------- | ----- |
677+
| InputClaim | inputClaim | string | The claim type, which contains the string. |
678+
| InputParameter | startIndex | int | The zero-based starting character position of a substring in this instance. |
679+
| InputParameter | length | int | The number of characters in the substring. |
680+
| OutputClaim | outputClaim | boolean | A string that is equivalent to the substring of length length that begins at startIndex in this instance, or Empty if startIndex is equal to the length of this instance and length is zero. |
681+
682+
For example, get the phone number country prefix.
683+
684+
685+
```XML
686+
<ClaimsTransformation Id="GetPhonePrefix" TransformationMethod="StringSubstring">
687+
<InputClaims>
688+
<InputClaim ClaimTypeReferenceId="phoneNumber" TransformationClaimType="inputClaim" />
689+
</InputClaims>
690+
<InputParameters>
691+
<InputParameter Id="startIndex" DataType="int" Value="0" />
692+
<InputParameter Id="length" DataType="int" Value="2" />
693+
</InputParameters>
694+
<OutputClaims>
695+
<OutputClaim ClaimTypeReferenceId="phonePrefix" TransformationClaimType="outputClaim" />
696+
</OutputClaims>
697+
</ClaimsTransformation>
698+
```
699+
### Example
700+
701+
- Input claims:
702+
- **inputClaim**: "+1644114520"
703+
- Input parameters:
704+
- **startIndex**: 0
705+
- **length**: 2
706+
- Output claims:
707+
- **outputClaim**: "+1"
708+
709+
## StringReplace
710+
711+
Searches a claim type string for a specified value, and returns a new claim type string in which all occurrences of a specified string in the current string are replaced with another specified string.
712+
713+
| Item | TransformationClaimType | Data Type | Notes |
714+
| ---- | ----------------------- | --------- | ----- |
715+
| InputClaim | inputClaim | string | The claim type, which contains the string. |
716+
| InputParameter | oldValue | string | The string to be searched. |
717+
| InputParameter | newValue | string | The string to replace all occurrences of `oldValue` |
718+
| OutputClaim | outputClaim | boolean | A string that is equivalent to the current string except that all instances of oldValue are replaced with newValue. If oldValue is not found in the current instance, the method returns the current instance unchanged. |
719+
720+
For example, normalize a phone number, by removing the `-` characters
721+
722+
723+
```XML
724+
<ClaimsTransformation Id="NormalizePhoneNumber" TransformationMethod="StringReplace">
725+
<InputClaims>
726+
<InputClaim ClaimTypeReferenceId="phoneNumber" TransformationClaimType="inputClaim" />
727+
</InputClaims>
728+
<InputParameters>
729+
<InputParameter Id="oldValue" DataType="string" Value="-" />
730+
<InputParameter Id="newValue" DataType="string" Value="" />
731+
</InputParameters>
732+
<OutputClaims>
733+
<OutputClaim ClaimTypeReferenceId="phoneNumber" TransformationClaimType="outputClaim" />
734+
</OutputClaims>
735+
</ClaimsTransformation>
736+
```
737+
### Example
738+
739+
- Input claims:
740+
- **inputClaim**: "+164-411-452-054"
741+
- Input parameters:
742+
- **oldValue**: "-"
743+
- **length**: ""
744+
- Output claims:
745+
- **outputClaim**: "+164411452054"
746+
747+
## StringJoin
748+
749+
Concatenates the elements of a specified string collection claim type, using the specified separator between each element or member.
750+
751+
| Item | TransformationClaimType | Data Type | Notes |
752+
| ---- | ----------------------- | --------- | ----- |
753+
| InputClaim | inputClaim | stringCollection | A collection that contains the strings to concatenate. |
754+
| InputParameter | delimiter | string | The string to use as a separator, such as comma `,`. |
755+
| OutputClaim | outputClaim | string | A string that consists of the members of the `inputClaim` string collection, delimited by the `delimiter` input parameter. |
756+
757+
The following example takes a string collection of user roles, and convert it to a comma delimiter string. You can user this method to store a string collection in Azure AD user account. Later, when you read the account from the directory, use the `StringSplit` to convert the comma delimiter string back to string collection.
758+
759+
```XML
760+
<ClaimsTransformation Id="ConvertRolesStringCollectionToCommaDelimiterString" TransformationMethod="StringJoin">
761+
<InputClaims>
762+
<InputClaim ClaimTypeReferenceId="roles" TransformationClaimType="inputClaim" />
763+
</InputClaims>
764+
<InputParameters>
765+
<InputParameter DataType="string" Id="delimiter" Value="," />
766+
</InputParameters>
767+
<OutputClaims>
768+
<OutputClaim ClaimTypeReferenceId="rolesCommaDelimiterConverted" TransformationClaimType="outputClaim" />
769+
</OutputClaims>
770+
</ClaimsTransformation>
771+
```
772+
773+
### Example
774+
775+
- Input claims:
776+
- **inputClaim**: [ "Admin", "Author", "Reader" ]
777+
- Input parameters:
778+
- **delimiter**: ","
779+
- Output claims:
780+
- **outputClaim**: "Admin,Author,Reader"
781+
782+
783+
## StringSplit
784+
785+
Returns a string array that contains the substrings in this instance that are delimited by elements of a specified string.
786+
787+
| Item | TransformationClaimType | Data Type | Notes |
788+
| ---- | ----------------------- | --------- | ----- |
789+
| InputClaim | inputClaim | string | A string claim type that contains the sub strings to split. |
790+
| InputParameter | delimiter | string | The string to use as a separator, such as comma `,`. |
791+
| OutputClaim | outputClaim | stringCollection | A string collection whose elements contain the substrings in this string that are delimited by the `delimiter` input parameter. |
792+
793+
The following example takes a comma delimiter string of user roles, and convert it to a string collection.
794+
795+
```XML
796+
<ClaimsTransformation Id="ConvertRolesToStringCollection" TransformationMethod="StringSplit">
797+
<InputClaims>
798+
<InputClaim ClaimTypeReferenceId="rolesCommaDelimiter" TransformationClaimType="inputClaim" />
799+
</InputClaims>
800+
<InputParameters>
801+
<InputParameter DataType="string" Id="delimiter" Value="," />
802+
</InputParameters>
803+
<OutputClaims>
804+
<OutputClaim ClaimTypeReferenceId="roles" TransformationClaimType="outputClaim" />
805+
</OutputClaims>
806+
</ClaimsTransformation>
807+
```
808+
809+
### Example
810+
811+
- Input claims:
812+
- **inputClaim**: "Admin,Author,Reader"
813+
- Input parameters:
814+
- **delimiter**: ","
815+
- Output claims:
816+
- **outputClaim**: [ "Admin", "Author", "Reader" ]

0 commit comments

Comments
 (0)