Skip to content

Commit d905266

Browse files
committed
2 parents 3dd442e + 7dc9af6 commit d905266

File tree

1,051 files changed

+21967
-9468
lines changed

Some content is hidden

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

1,051 files changed

+21967
-9468
lines changed

.gitignore

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@
33
Thumbs.db
44

55
# Visual Studio and VS Code files
6-
.settings.json
76
.vscode/*
87
.vs/*
98
log/
@@ -24,3 +23,4 @@ AzureMigration.ps1
2423
!/.vscode/extensions.json
2524
.gitignore
2625
**/.vscode/settings.json
26+
!/.vscode/settings.json

.openpublishing.redirection.json

Lines changed: 19 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3732,7 +3732,12 @@
37323732
},
37333733
{
37343734
"source_path": "articles/azure-resource-manager/resource-group-create-multiple.md",
3735-
"redirect_url": "/azure/azure-resource-manager/templates/create-multiple-instances",
3735+
"redirect_url": "/azure/azure-resource-manager/templates/copy-resources",
3736+
"redirect_document_id": false
3737+
},
3738+
{
3739+
"source_path": "articles/azure-resource-manager/templates/create-multiple-instances.md",
3740+
"redirect_url": "/azure/azure-resource-manager/templates/copy-resources",
37363741
"redirect_document_id": false
37373742
},
37383743
{
@@ -4662,7 +4667,7 @@
46624667
},
46634668
{
46644669
"source_path": "articles/resource-group-create-multiple.md",
4665-
"redirect_url": "/azure/azure-resource-manager/templates/create-multiple-instances",
4670+
"redirect_url": "/azure/azure-resource-manager/templates/copy-resources",
46664671
"redirect_document_id": false
46674672
},
46684673
{
@@ -5655,6 +5660,11 @@
56555660
"redirect_url": "/azure/active-directory-b2c/custom-policy-get-started",
56565661
"redirect_document_id": true
56575662
},
5663+
{
5664+
"source_path": "articles/active-directory-b2c/custom-policy-ui-customization-dynamic.md",
5665+
"redirect_url": "/azure/active-directory-b2c/custom-policy-ui-customization",
5666+
"redirect_document_id": false
5667+
},
56585668
{
56595669
"source_path": "articles/active-directory-b2c/active-directory-b2c-overview-custom.md",
56605670
"redirect_url": "/azure/active-directory-b2c/custom-policy-overview",
@@ -12037,7 +12047,7 @@
1203712047
},
1203812048
{
1203912049
"source_path": "articles/azure-resource-manager/resource-manager-property-copy.md",
12040-
"redirect_url": "/azure/azure-resource-manager/templates/create-multiple-instances",
12050+
"redirect_url": "/azure/azure-resource-manager/templates/copy-properties",
1204112051
"redirect_document_id": false
1204212052
},
1204312053
{
@@ -12047,7 +12057,7 @@
1204712057
},
1204812058
{
1204912059
"source_path": "articles/azure-resource-manager/resource-manager-sequential-loop.md",
12050-
"redirect_url": "/azure/azure-resource-manager/templates/create-multiple-instances",
12060+
"redirect_url": "/azure/azure-resource-manager/templates/copy-resources",
1205112061
"redirect_document_id": false
1205212062
},
1205312063
{
@@ -48535,6 +48545,11 @@
4853548545
"source_path": "articles/virtual-machines/linux/ansible-manage-linux-vm.md",
4853648546
"redirect_url": "/azure/ansible/ansible-manage-linux-vm",
4853748547
"redirect_document_id": false
48548+
},
48549+
{
48550+
"source_path": "articles/app-service/containers/tutorial-java-enterprise-postgresql-app.md",
48551+
"redirect_url": "/azure/app-service/containers/configure-language-java",
48552+
"redirect_document_id": false
4853848553
}
4853948554
]
4854048555
}

.vscode/settings.json

Lines changed: 58 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,58 @@
1+
{
2+
"markdown.docsetLanguages": [
3+
".NET Core CLI",
4+
"Apache",
5+
"ASPX",
6+
"AzCopy",
7+
"Azure CLI",
8+
"Azure CLI (Interactive)",
9+
"Azure Powershell",
10+
"Azure Powershell (Interactive)",
11+
"Bash",
12+
"C",
13+
"C#",
14+
"C# (Interactive)",
15+
"C++",
16+
"CSS",
17+
"DAX Power BI",
18+
"Diff",
19+
"Dockerfile",
20+
"DOS",
21+
"F#",
22+
"Go",
23+
"Gradle",
24+
"Groovy",
25+
"HTML",
26+
"HTTP",
27+
"Ini",
28+
"Java",
29+
"JavaScript",
30+
"JSON",
31+
"Kotlin",
32+
"Kusto",
33+
"Markdown",
34+
"MS Graph (Interactive)",
35+
"Objective C",
36+
"PHP",
37+
"Plaintext no highlight",
38+
"PostgreSQL & PL/pgSQL",
39+
"PowerShell",
40+
"PowerShell (Interactive)",
41+
"Properties",
42+
"Python",
43+
"R",
44+
"Razor CSHTML",
45+
"Ruby",
46+
"Scala",
47+
"Shell",
48+
"Solidity",
49+
"SQL",
50+
"Swift",
51+
"Terraform (HCL)",
52+
"TypeScript",
53+
"VB.NET",
54+
"XAML",
55+
"XML",
56+
"YAML"
57+
]
58+
}

CODEOWNERS

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Testing the new code owners feature in GitHub. Please contact Cory Fowler if you have questions.
22
# Cognitive Services
3-
articles/cognitive-services/ @diberry @erhopf, @nitinme
3+
articles/cognitive-services/ @diberry @erhopf @aahill @ievangelist @patrickfarley @nitinme
44

55
# DevOps
66
articles/ansible/ @TomArcherMsft

articles/active-directory-b2c/TOC.yml

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -101,7 +101,7 @@
101101
href: user-flow-self-service-password-reset.md
102102
- name: UX customization
103103
items:
104-
- name: User interface customization
104+
- name: Customize the UI
105105
href: customize-ui-overview.md
106106
- name: JavaScript and page layouts
107107
href: user-flow-javascript-overview.md
@@ -177,8 +177,6 @@
177177
- name: Customize the UI
178178
href: custom-policy-ui-customization.md
179179
displayName: ux, input, cors, html, css
180-
- name: Customize the UI dynamically
181-
href: custom-policy-ui-customization-dynamic.md
182180
- name: Custom email
183181
href: custom-email.md
184182
displayName: verification

articles/active-directory-b2c/b2clogin.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ There are several modifications you might need to make to migrate your applicati
4242

4343
* Change the redirect URL in your identity provider's applications to reference *b2clogin.com*.
4444
* Update your Azure AD B2C applications to use *b2clogin.com* in their user flow and token endpoint references.
45-
* Update any **Allowed Origins** that you've defined in the CORS settings for [user interface customization](custom-policy-ui-customization-dynamic.md).
45+
* Update any **Allowed Origins** that you've defined in the CORS settings for [user interface customization](custom-policy-ui-customization.md).
4646

4747
## Change identity provider redirect URLs
4848

@@ -117,4 +117,4 @@ For migrating Azure API Management APIs protected by Azure AD B2C, see the [Migr
117117
[msal-dotnet]: https://github.com/AzureAD/microsoft-authentication-library-for-dotnet
118118
[msal-dotnet-b2c]: https://github.com/AzureAD/microsoft-authentication-library-for-dotnet/wiki/AAD-B2C-specifics
119119
[msal-js]: https://github.com/AzureAD/microsoft-authentication-library-for-js
120-
[msal-js-b2c]: ../active-directory/develop/msal-b2c-overview.md
120+
[msal-js-b2c]: ../active-directory/develop/msal-b2c-overview.md

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

Lines changed: 62 additions & 13 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/13/2020
12+
ms.date: 02/17/2020
1313
ms.author: marsma
1414
ms.subservice: B2C
1515
---
@@ -100,9 +100,21 @@ Any parameter name included as part of an OIDC or OAuth2 request can be mapped t
100100
| ----- | ----------------------- | --------|
101101
| {oauth2:access_token} | The access token. | N/A |
102102

103+
104+
### SAML
105+
106+
| Claim | Description | Example |
107+
| ----- | ----------- | --------|
108+
| {SAML:AuthnContextClassReferences} | The `AuthnContextClassRef` element value, from the SAML request. | urn:oasis:names:tc:SAML:2.0:ac:classes:PasswordProtectedTransport |
109+
| {SAML:NameIdPolicyFormat} | The `Format` attribute, from the `NameIDPolicy` element of the SAML request. | urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress |
110+
| {SAML:Issuer} | The SAML `Issuer` element value of the SAML request.| https://contoso.com |
111+
| {SAML:AllowCreate} | The `AllowCreate` attribute value, from the `NameIDPolicy` element of the SAML request. | True |
112+
| {SAML:ForceAuthn} | The `ForceAuthN` attribute value, from the `AuthnRequest` element of the SAML request. | True |
113+
| {SAML:ProviderName} | The `ProviderName` attribute value, from the `AuthnRequest` element of the SAML request.| Contoso.com |
114+
103115
## Using claim resolvers
104116

105-
You can use claims resolvers with following elements:
117+
You can use claims resolvers with the following elements:
106118

107119
| Item | Element | Settings |
108120
| ----- | ----------------------- | --------|
@@ -119,16 +131,16 @@ You can use claims resolvers with following elements:
119131
|[RelyingParty](relyingparty.md#technicalprofile) technical profile| `OutputClaim`| 2 |
120132

121133
Settings:
122-
1. The `IncludeClaimResolvingInClaimsHandling` metadata must set to `true`
123-
1. The input or output claims attribute `AlwaysUseDefaultValue` must set to `true`
134+
1. The `IncludeClaimResolvingInClaimsHandling` metadata must be set to `true`.
135+
1. The input or output claims attribute `AlwaysUseDefaultValue` must be set to `true`.
124136

125-
## How to use claim resolvers
137+
## Claim resolvers samples
126138

127139
### RESTful technical profile
128140

129141
In a [RESTful](restful-technical-profile.md) technical profile, you may want to send the user language, policy name, scope, and client ID. Based on these claims the REST API can run custom business logic, and if necessary raise a localized error message.
130142

131-
The following example shows a RESTful technical profile:
143+
The following example shows a RESTful technical profile with this scenario:
132144

133145
```XML
134146
<TechnicalProfile Id="REST">
@@ -138,12 +150,13 @@ The following example shows a RESTful technical profile:
138150
<Item Key="ServiceUrl">https://your-app.azurewebsites.net/api/identity</Item>
139151
<Item Key="AuthenticationType">None</Item>
140152
<Item Key="SendClaimsIn">Body</Item>
153+
<Item Key="IncludeClaimResolvingInClaimsHandling">true</Item>
141154
</Metadata>
142155
<InputClaims>
143-
<InputClaim ClaimTypeReferenceId="userLanguage" DefaultValue="{Culture:LCID}" />
144-
<InputClaim ClaimTypeReferenceId="policyName" DefaultValue="{Policy:PolicyId}" />
145-
<InputClaim ClaimTypeReferenceId="scope" DefaultValue="{OIDC:scope}" />
146-
<InputClaim ClaimTypeReferenceId="clientId" DefaultValue="{OIDC:ClientId}" />
156+
<InputClaim ClaimTypeReferenceId="userLanguage" DefaultValue="{Culture:LCID}" AlwaysUseDefaultValue="true" />
157+
<InputClaim ClaimTypeReferenceId="policyName" DefaultValue="{Policy:PolicyId}" AlwaysUseDefaultValue="true" />
158+
<InputClaim ClaimTypeReferenceId="scope" DefaultValue="{OIDC:scope}" AlwaysUseDefaultValue="true" />
159+
<InputClaim ClaimTypeReferenceId="clientId" DefaultValue="{OIDC:ClientId}" AlwaysUseDefaultValue="true" />
147160
</InputClaims>
148161
<UseTechnicalProfileForSessionManagement ReferenceId="SM-Noop" />
149162
</TechnicalProfile>
@@ -155,9 +168,9 @@ Using claim resolvers, you can prepopulate the sign-in name or direct sign-in to
155168

156169
### Dynamic UI customization
157170

158-
Azure AD B2C enables you to pass query string parameters to your HTML content definition endpoints so that you can dynamically render the page content. For example, you can change 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-dynamic.md). You can also localize your HTML page based on a language parameter, or you can change the content based on the client ID.
171+
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.
159172

160-
The following example passes in the query string a parameter named **campaignId** with a value of `hawaii`, a **language** code of `en-US`, and **app** representing the client ID:
173+
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:
161174

162175
```XML
163176
<UserJourneyBehaviors>
@@ -169,12 +182,23 @@ The following example passes in the query string a parameter named **campaignId*
169182
</UserJourneyBehaviors>
170183
```
171184

172-
As a result Azure AD B2C sends the above parameters to the HTML content page:
185+
As a result, Azure AD B2C sends the above parameters to the HTML content page:
173186

174187
```
175188
/selfAsserted.aspx?campaignId=hawaii&language=en-US&app=0239a9cc-309c-4d41-87f1-31288feb2e82
176189
```
177190

191+
### Content definition
192+
193+
In a [ContentDefinition](contentdefinitions.md) `LoadUri`, you can send claim resolvers to pull content from different places, based on the parameters used.
194+
195+
```XML
196+
<ContentDefinition Id="api.signuporsignin">
197+
<LoadUri>https://contoso.blob.core.windows.net/{Culture:LanguageName}/myHTML/unified.html</LoadUri>
198+
...
199+
</ContentDefinition>
200+
```
201+
178202
### Application Insights technical profile
179203

180204
With Azure Application Insights and claim resolvers you can gain insights on user behavior. In the Application Insights technical profile, you send input claims that are persisted to Azure Application Insights. For more information, see [Track user behavior in Azure AD B2C journeys by using Application Insights](analytics-with-application-insights.md). The following example sends the policy ID, correlation ID, language, and the client ID to Azure Application Insights.
@@ -192,3 +216,28 @@ With Azure Application Insights and claim resolvers you can gain insights on use
192216
</InputClaims>
193217
</TechnicalProfile>
194218
```
219+
220+
### Relying party policy
221+
222+
In a [Relying party](relyingparty.md) policy technical profile, you may want to send the tenant ID, or correlation ID to the relying party application within the JWT.
223+
224+
```XML
225+
<RelyingParty>
226+
<DefaultUserJourney ReferenceId="SignUpOrSignIn" />
227+
<TechnicalProfile Id="PolicyProfile">
228+
<DisplayName>PolicyProfile</DisplayName>
229+
<Protocol Name="OpenIdConnect" />
230+
<OutputClaims>
231+
<OutputClaim ClaimTypeReferenceId="displayName" />
232+
<OutputClaim ClaimTypeReferenceId="givenName" />
233+
<OutputClaim ClaimTypeReferenceId="surname" />
234+
<OutputClaim ClaimTypeReferenceId="email" />
235+
<OutputClaim ClaimTypeReferenceId="objectId" PartnerClaimType="sub"/>
236+
<OutputClaim ClaimTypeReferenceId="identityProvider" />
237+
<OutputClaim ClaimTypeReferenceId="tenantId" AlwaysUseDefaultValue="true" DefaultValue="{Policy:TenantObjectId}" />
238+
<OutputClaim ClaimTypeReferenceId="correlationId" AlwaysUseDefaultValue="true" DefaultValue="{Context:CorrelationId}" />
239+
</OutputClaims>
240+
<SubjectNamingInfo ClaimType="sub" />
241+
</TechnicalProfile>
242+
</RelyingParty>
243+
```

0 commit comments

Comments
 (0)