Skip to content

Commit f9e06d6

Browse files
authored
Merge branch 'master' into rboucher-metrics
2 parents c154343 + e3333f3 commit f9e06d6

File tree

2,506 files changed

+35408
-28182
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,506 files changed

+35408
-28182
lines changed

.openpublishing.publish.config.json

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -157,7 +157,7 @@
157157
"url": "https://github.com/Azure-Samples/functions-python-pytorch-tutorial",
158158
"branch": "master",
159159
"branch_mapping": {}
160-
},
160+
},
161161
{
162162
"path_to_root": "functions-quickstart-templates",
163163
"url": "https://github.com/Azure/azure-functions-templates",
@@ -187,7 +187,8 @@
187187
"path_to_root": "functions-docs-powershell",
188188
"url": "https://github.com/Azure-Samples/functions-docs-powershell",
189189
"branch": "master"
190-
}, {
190+
},
191+
{
191192
"path_to_root": "samples-personalizer",
192193
"url": "https://github.com/Azure-Samples/cognitive-services-personalizer-samples",
193194
"branch": "master"
@@ -366,7 +367,7 @@
366367
"path_to_root": "azure-sdk-for-java-script-event-hubs",
367368
"url": "https://github.com/Azure/azure-sdk-for-js/",
368369
"branch": "master"
369-
},
370+
},
370371
{
371372
"path_to_root": "azure-sdk-for-net-event-hubs",
372373
"url": "https://github.com/Azure/azure-sdk-for-net/",
@@ -376,7 +377,7 @@
376377
"path_to_root": "azure-sdk-for-python-event-hubs",
377378
"url": "https://github.com/Azure/azure-sdk-for-python/",
378379
"branch": "master"
379-
},
380+
},
380381
{
381382
"path_to_root": "cosmos-dotnet-getting-started",
382383
"url": "https://github.com/Azure-Samples/cosmos-dotnet-getting-started",
@@ -510,5 +511,8 @@
510511
"Pdf": {
511512
"template_folder": "_themes.pdf"
512513
}
514+
},
515+
"docs_build_engine": {
516+
"name": "docfx_v3"
513517
}
514518
}

.openpublishing.redirection.json

Lines changed: 940 additions & 33 deletions
Large diffs are not rendered by default.

CODEOWNERS

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -9,12 +9,12 @@ articles/jenkins/ @TomArcherMsft
99
articles/terraform/ @TomArcherMsft
1010

1111
# Requires Internal Review
12-
articles/best-practices-availability-paired-regions.md @jpconnock @arob98 @syntaxc4 @tysonn @snoviking
12+
articles/best-practices-availability-paired-regions.md @jpconnock @martinekuan @syntaxc4 @tysonn @snoviking
1313

1414
# Governance
1515
articles/governance/ @DCtheGeek
1616

1717
# Configuration
18-
*.json @SyntaxC4 @snoviking @arob98
19-
.acrolinx-config.edn @MonicaRush @arob98
20-
articles/zone-pivot-groups.yml @SyntaxC4 @snoviking @arob98
18+
*.json @SyntaxC4 @snoviking @martinekuan
19+
.acrolinx-config.edn @MonicaRush @martinekuan
20+
articles/zone-pivot-groups.yml @SyntaxC4 @snoviking @martinekuan

articles/active-directory-b2c/TOC.yml

Lines changed: 18 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -311,13 +311,15 @@
311311
items:
312312
- name: About technical profiles
313313
href: technical-profiles-overview.md
314+
- name: About validation technical profiles
315+
href: validation-technical-profile.md
316+
- name: Application Insights
317+
href: application-insights-technical-profile.md
318+
- name: Azure Active Directory
319+
href: active-directory-technical-profile.md
314320
- name: Azure Multi-Factor Authentication
315321
href: multi-factor-auth-technical-profile.md
316322
displayName: mfa
317-
- name: Claim resolvers
318-
href: claim-resolver-overview.md
319-
- name: Azure Active Directory
320-
href: active-directory-technical-profile.md
321323
- name: Claims transformation
322324
href: claims-transformation-technical-profile.md
323325
- name: JWT token issuer
@@ -331,6 +333,8 @@
331333
displayName: otp
332334
- name: OpenID Connect
333335
href: openid-connect-technical-profile.md
336+
- name: Phone factor
337+
href: phone-factor-technical-profile.md
334338
- name: REST
335339
href: restful-technical-profile.md
336340
- name: SAML
@@ -342,12 +346,12 @@
342346
- name: SSO session
343347
href: custom-policy-reference-sso.md
344348
displayName: single sign-on
345-
- name: Validation
346-
href: validation-technical-profile.md
347349
- name: UserJourneys
348350
href: userjourneys.md
349351
- name: RelyingParty
350352
href: relyingparty.md
353+
- name: Claim resolvers
354+
href: claim-resolver-overview.md
351355
- name: Use b2clogin.com
352356
items:
353357
- name: b2clogin.com overview
@@ -391,28 +395,28 @@
391395
href: user-migration.md
392396
- name: Reference
393397
items:
394-
- name: Identity Experience Framework release notes
395-
href: custom-policy-developer-notes.md
398+
- name: Billing model
399+
href: billing.md
396400
- name: Code samples
397401
href: https://azure.microsoft.com/resources/samples/?service=active-directory-b2c
398-
- name: Page layout versions
399-
href: page-layout.md
400402
- name: Cookie definitions
401403
href: cookie-definitions.md
402404
displayName: cookies, SameSite
403405
- name: Error codes
404406
href: error-codes.md
407+
- name: Extensions app
408+
href: extensions-app.md
409+
- name: Identity Experience Framework release notes
410+
href: custom-policy-developer-notes.md
405411
- name: Microsoft Graph API operations
406412
href: microsoft-graph-operations.md
413+
- name: Page layout versions
414+
href: page-layout.md
407415
- name: Region availability & data residency
408416
href: data-residency.md
409-
- name: Billing model
410-
href: billing.md
411417
- name: Threat management
412418
href: threat-management.md
413419
displayName: security
414-
- name: Extensions app
415-
href: extensions-app.md
416420
- name: User flow versions
417421
href: user-flow-versions.md
418422
- name: Resources
Lines changed: 84 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,84 @@
1+
---
2+
title: Define an Application Insights technical profile in a custom policy
3+
titleSuffix: Azure AD B2C
4+
description: Define an Application Insights technical profile in a custom policy in Azure Active Directory B2C.
5+
services: active-directory-b2c
6+
author: msmimart
7+
manager: celestedg
8+
9+
ms.service: active-directory
10+
ms.workload: identity
11+
ms.topic: reference
12+
ms.date: 03/20/2020
13+
ms.author: mimart
14+
ms.subservice: B2C
15+
---
16+
17+
18+
# Define an Application Insights technical profile in an Azure AD B2C custom policy
19+
20+
[!INCLUDE [active-directory-b2c-advanced-audience-warning](../../includes/active-directory-b2c-advanced-audience-warning.md)]
21+
22+
Azure Active Directory B2C (Azure AD B2C) supports sending event data directly to [Application Insights](../azure-monitor/app/app-insights-overview.md) by using the instrumentation key provided to Azure AD B2C. With an Application Insights technical profile, you can get detailed and customized event logs for your user journeys to:
23+
24+
* Gain insights on user behavior.
25+
* Troubleshoot your own policies in development or in production.
26+
* Measure performance.
27+
* Create notifications from Application Insights.
28+
29+
30+
## Protocol
31+
32+
The **Name** attribute of the **Protocol** element needs to be set to `Proprietary`. The **handler** attribute must contain the fully qualified name of the protocol handler assembly that is used by Azure AD B2C for Application Insights:
33+
`Web.TPEngine.Providers.AzureApplicationInsightsProvider, Web.TPEngine, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null`
34+
35+
The following example shows the common Application Insights technical profile. Other Application Insights technical profiles include the AzureInsights-Common to leverage its configuration.
36+
37+
```xml
38+
<TechnicalProfile Id="AzureInsights-Common">
39+
<DisplayName>Azure Insights Common</DisplayName>
40+
<Protocol Name="Proprietary" Handler="Web.TPEngine.Providers.Insights.AzureApplicationInsightsProvider, Web.TPEngine, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" />
41+
</TechnicalProfile>
42+
```
43+
44+
## Input claims
45+
46+
The **InputClaims** element contains a list of claims to send to Application Insights. You can also map the name of your claim to a name you prefer to appear in Application Insights. The following example shows how to send telemetries to Application Insights. Properties of an event are added through the syntax `{property:NAME}`, where NAME is property being added to the event. DefaultValue can be either a static value or a value that's resolved by one of the supported [claim resolvers](claim-resolver-overview.md).
47+
48+
```XML
49+
<InputClaims>
50+
<InputClaim ClaimTypeReferenceId="PolicyId" PartnerClaimType="{property:Policy}" DefaultValue="{Policy:PolicyId}" />
51+
<InputClaim ClaimTypeReferenceId="CorrelationId" PartnerClaimType="{property:JourneyId}" DefaultValue="{Context:CorrelationId}" />
52+
<InputClaim ClaimTypeReferenceId="Culture" PartnerClaimType="{property:Culture}" DefaultValue="{Culture:RFC5646}" />
53+
<InputClaim ClaimTypeReferenceId="objectId" PartnerClaimType="{property:objectId}" />
54+
</InputClaims>
55+
```
56+
57+
The **InputClaimsTransformations** element may contain a collection of **InputClaimsTransformation** elements that are used to modify the input claims or generate new ones before sending to Application Insights.
58+
59+
## Persist claims
60+
61+
The PersistedClaims element is not used.
62+
63+
## Output claims
64+
65+
The OutputClaims, and OutputClaimsTransformations elements are not used.
66+
67+
## Cryptographic keys
68+
69+
The CryptographicKeys element is not used.
70+
71+
72+
## Metadata
73+
74+
| Attribute | Required | Description |
75+
| --------- | -------- | ----------- |
76+
| InstrumentationKey| Yes | The Application Insights [instrumentation key](../azure-monitor/app/create-new-resource.md#copy-the-instrumentation-key), which will be used for logging the events. |
77+
| DeveloperMode| No | A Boolean that indicates whether developer mode is enabled. Possible values: `true` or `false` (default). This metadata controls how events are buffered. In a development environment with minimal event volume, enabling developer mode results in events being sent immediately to Application Insights.|
78+
|DisableTelemetry |No |A Boolean that indicates whether telemetry should be enabled or not. Possible values: `true` or `false` (default).|
79+
80+
81+
## Next steps
82+
83+
- [Create an Application Insights resource](../azure-monitor/app/create-new-resource.md)
84+
- Learn how to [track user behavior in Azure Active Directory B2C using Application Insights](analytics-with-application-insights.md)

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

Lines changed: 8 additions & 6 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/02/2020
12+
ms.date: 03/20/2020
1313
ms.author: mimart
1414
ms.subservice: B2C
1515
---
@@ -68,10 +68,12 @@ The following sections list available claim resolvers.
6868
| {OIDC:LoginHint} | The `login_hint` query string parameter. | [email protected] |
6969
| {OIDC:MaxAge} | The `max_age`. | N/A |
7070
| {OIDC:Nonce} |The `Nonce` query string parameter. | defaultNonce |
71+
| {OIDC:Password}| The [resource owner password credentials flow](ropc-custom.md) user's password.| password1|
7172
| {OIDC:Prompt} | The `prompt` query string parameter. | login |
73+
| {OIDC:RedirectUri} |The `redirect_uri` query string parameter. | https://jwt.ms |
7274
| {OIDC:Resource} |The `resource` query string parameter. | N/A |
7375
| {OIDC:scope} |The `scope` query string parameter. | openid |
74-
| {OIDC:RedirectUri} |The `redirect_uri` query string parameter. | https://jwt.ms |
76+
| {OIDC:Username}| The [resource owner password credentials flow](ropc-custom.md) user's username.| [email protected]|
7577

7678
### Context
7779

@@ -90,7 +92,7 @@ Any parameter name included as part of an OIDC or OAuth2 request can be mapped t
9092

9193
| Claim | Description | Example |
9294
| ----- | ----------------------- | --------|
93-
| {OAUTH-KV:campaignId} | A query string parameter. | hawaii |
95+
| {OAUTH-KV:campaignId} | A query string parameter. | Hawaii |
9496
| {OAUTH-KV:app_session} | A query string parameter. | A3C5R |
9597
| {OAUTH-KV:loyalty_number} | A query string parameter. | 1234 |
9698
| {OAUTH-KV:any custom query string} | A query string parameter. | N/A |
@@ -108,7 +110,7 @@ Any parameter name included as part of an OIDC or OAuth2 request can be mapped t
108110
| ----- | ----------- | --------|
109111
| {SAML:AuthnContextClassReferences} | The `AuthnContextClassRef` element value, from the SAML request. | urn:oasis:names:tc:SAML:2.0:ac:classes:PasswordProtectedTransport |
110112
| {SAML:NameIdPolicyFormat} | The `Format` attribute, from the `NameIDPolicy` element of the SAML request. | urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress |
111-
| {SAML:Issuer} | The SAML `Issuer` element value of the SAML request.| https://contoso.com |
113+
| {SAML:Issuer} | The SAML `Issuer` element value of the SAML request.| `https://contoso.com` |
112114
| {SAML:AllowCreate} | The `AllowCreate` attribute value, from the `NameIDPolicy` element of the SAML request. | True |
113115
| {SAML:ForceAuthn} | The `ForceAuthN` attribute value, from the `AuthnRequest` element of the SAML request. | True |
114116
| {SAML:ProviderName} | The `ProviderName` attribute value, from the `AuthnRequest` element of the SAML request.| Contoso.com |
@@ -139,7 +141,7 @@ Settings:
139141

140142
### RESTful technical profile
141143

142-
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.
144+
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 the claims the REST API can run custom business logic, and if necessary raise a localized error message.
143145

144146
The following example shows a RESTful technical profile with this scenario:
145147

@@ -171,7 +173,7 @@ Using claim resolvers, you can prepopulate the sign-in name or direct sign-in to
171173

172174
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.
173175

174-
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:
176+
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:
175177

176178
```XML
177179
<UserJourneyBehaviors>

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

Lines changed: 5 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: 02/27/2020
12+
ms.date: 03/20/2020
1313
ms.author: mimart
1414
ms.subservice: B2C
1515
ms.custom: fasttrack-edit
@@ -333,7 +333,7 @@ The last step is to enable Azure AD B2C as a SAML IdP in your SAML relying party
333333
Some or all the following are typically required:
334334

335335
* **Metadata**: `https://tenant-name.b2clogin.com/tenant-name.onmicrosoft.com/policy-name/Samlp/metadata`
336-
* **Issuer**: `https://tenant-name.b2clogin.com/tenant-name.onmicrosoft.com/policy-name`
336+
* **Issuer**: Use the entityID in the metadata file
337337
* **Login Url/SAML endpoint/SAML Url**: Check the value in the metadata file
338338
* **Certificate**: This is *B2C_1A_SamlIdpCert*, but without the private key. To get the public key of the certificate:
339339

@@ -350,7 +350,7 @@ To complete this tutorial using our [SAML Test Application][samltest]:
350350
* Update policy name, for example *B2C_1A_signup_signin_saml*
351351
* Specify this issuer URI: `https://contoso.onmicrosoft.com/app-name`
352352

353-
Select **Login** and you should be presented with an end user sign-in screen. Upon sign-in, a SAML assertion is issued back to the sample application.
353+
Select **Login** and you should be presented with a user sign-in screen. Upon sign-in, a SAML assertion is issued back to the sample application.
354354

355355
## Sample policy
356356

@@ -371,7 +371,8 @@ The following SAML relying party (RP) scenarios are supported via your own metad
371371

372372
## Next steps
373373

374-
You can find more information about the [SAML protocol on the OASIS website](https://www.oasis-open.org/).
374+
- You can find more information about the [SAML protocol on the OASIS website](https://www.oasis-open.org/).
375+
- Get the SAML test web app from [Azure AD B2C GitHub community repo](https://github.com/azure-ad-b2c/saml-sp-tester).
375376

376377
<!-- LINKS - External -->
377378
[samltest]: https://aka.ms/samltestapp

articles/active-directory-b2c/contentdefinitions.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: 02/17/2020
12+
ms.date: 02/20/2020
1313
ms.author: mimart
1414
ms.subservice: B2C
1515
---
@@ -66,7 +66,7 @@ The **ContentDefinition** element contains the following elements:
6666
| Element | Occurrences | Description |
6767
| ------- | ----------- | ----------- |
6868
| LoadUri | 1:1 | A string that contains the URL of the HTML5 page for the content definition. |
69-
| RecoveryUri | 1:1 | A string that contains the URL of the HTML page for displaying an error relating to the content definition. |
69+
| RecoveryUri | 1:1 | A string that contains the URL of the HTML page for displaying an error relating to the content definition. Not currently used, the value must be `~/common/default_page_error.html`. |
7070
| DataUri | 1:1 | A string that contains the relative URL of an HTML file that provides the user experience to invoke for the step. |
7171
| Metadata | 0:1 | A collection of key/value pairs that contains the metadata utilized by the content definition. |
7272
| LocalizedResourcesReferences | 0:1 | A collection of localized resources references. Use this element to customize the localization of a user interface and claims attribute. |

articles/active-directory-b2c/custom-policy-configure-user-input.md

Lines changed: 5 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: conceptual
12-
ms.date: 03/10/2020
12+
ms.date: 03/17/2020
1313
ms.author: mimart
1414
ms.subservice: B2C
1515
---
@@ -19,9 +19,12 @@ ms.subservice: B2C
1919

2020
In this article, you collect a new attribute during your sign-up journey in Azure Active Directory B2C (Azure AD B2C). You'll obtain the users' city, configure it as a drop-down, and define whether it's required to be provided.
2121

22+
> [!NOTE]
23+
> This sample uses the built-in claim 'city'. Instead, you can choose one of the supported [Azure AD B2C built-in attributes](user-profile-attributes.md) or a custom attribute. To use a custom attribute, [enable custom attributes in your policy](custom-policy-custom-attributes.md). To use a different built-in or custom attribute, replace 'city' with the attribute of your choice, for example the built-in attribute *jobTitle* or a custom attribute like *extension_loyaltyId*.
24+
2225
You can gather initial data from your users by using the sign-up or sign-in user journey. Additional claims can be gathered later by using a profile edit user journey. Anytime Azure AD B2C gathers information directly from the user interactively, the Identity Experience Framework uses its [self-asserted technical profile](self-asserted-technical-profile.md). In this sample, you:
2326

24-
1. Define a "city" claim.
27+
1. Define a "city" claim.
2528
1. Ask the user for their city.
2629
1. Persist the city to the user profile in the Azure AD B2C directory.
2730
1. Read the city claim from the Azure AD B2C directory on each sign-in.

0 commit comments

Comments
 (0)