Skip to content

Commit b38ff76

Browse files
committed
Merge branch 'master' of https://github.com/MicrosoftDocs/azure-docs-pr into work-fall-redirects
2 parents 9c6da55 + 672f937 commit b38ff76

File tree

739 files changed

+9574
-4607
lines changed

Some content is hidden

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

739 files changed

+9574
-4607
lines changed

.openpublishing.publish.config.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@
2626
2727
],
2828
"sync_notification_subscribers": [
29-
"tysonn@microsoft.com"
29+
"angrobe_extended_dir@microsoft.com"
3030
],
3131
"branches_to_filter": [],
3232
"git_repository_url_open_to_public_contributors": "https://github.com/MicrosoftDocs/azure-docs",

.openpublishing.redirection.json

Lines changed: 76 additions & 61 deletions
Original file line numberDiff line numberDiff line change
@@ -17552,16 +17552,6 @@
1755217552
"redirect_url": "/azure/sql-data-warehouse/sql-data-warehouse-load-with-data-factory",
1755317553
"redirect_document_id": false
1755417554
},
17555-
{
17556-
"source_path": "articles/sql-data-warehouse/sql-data-warehouse-security-threat-detection.md",
17557-
"redirect_url": "/azure/sql-database/sql-database-threat-detection-overview",
17558-
"redirect_document_id": false
17559-
},
17560-
{
17561-
"source_path": "articles/sql-data-warehouse/sql-data-warehouse-auditing-overview.md",
17562-
"redirect_url": "/azure/sql-database/sql-database-auditing",
17563-
"redirect_document_id": false
17564-
},
1756517555
{
1756617556
"source_path": "articles/sql-data-warehouse/sql-data-warehouse-migrate-code.md",
1756717557
"redirect_url": "/azure/sql-data-warehouse/sql-data-warehouse-overview-develop",
@@ -17827,26 +17817,6 @@
1782717817
"redirect_url": "/azure/synapse-analytics/quickstart-create-sql-pool-portal",
1782817818
"redirect_document_id": false
1782917819
},
17830-
{
17831-
"source_path": "articles/sql-database/sql-database-auditing-get-started.md",
17832-
"redirect_url": "/azure/sql-database/sql-database-auditing",
17833-
"redirect_document_id": false
17834-
},
17835-
{
17836-
"source_path": "articles/sql-database/sql-database-auditing-portal.md",
17837-
"redirect_url": "/azure/sql-database/sql-database-auditing",
17838-
"redirect_document_id": false
17839-
},
17840-
{
17841-
"source_path": "articles/sql-database/sql-database-auditing-powershell.md",
17842-
"redirect_url": "/azure/sql-database/sql-database-auditing",
17843-
"redirect_document_id": false
17844-
},
17845-
{
17846-
"source_path": "articles/sql-database/sql-database-auditing-rest.md",
17847-
"redirect_url": "/azure/sql-database/sql-database-auditing",
17848-
"redirect_document_id": false
17849-
},
1785017820
{
1785117821
"source_path": "articles/sql-database/sql-database-build-multi-tenant-apps.md",
1785217822
"redirect_url": "/azure/sql-database/saas-tenancy-app-design-patterns",
@@ -18557,16 +18527,6 @@
1855718527
"redirect_url": "/azure/sql-database/sql-database-advanced-data-security",
1855818528
"redirect_document_id": false
1855918529
},
18560-
{
18561-
"source_path": "articles/sql-database/sql-database-threat-detection-get-started.md",
18562-
"redirect_url": "/azure/sql-database/sql-database-threat-detection",
18563-
"redirect_document_id": false
18564-
},
18565-
{
18566-
"source_path": "articles/sql-database/sql-database-threat-detection-portal.md",
18567-
"redirect_url": "/azure/sql-database/sql-database-threat-detection",
18568-
"redirect_document_id": false
18569-
},
1857018530
{
1857118531
"source_path": "articles/sql-database/sql-database-troubleshoot-backup-and-restore.md",
1857218532
"redirect_url": "/azure/sql-database/sql-database-recovery-using-backups",
@@ -19302,11 +19262,6 @@
1930219262
"redirect_url": "/azure/load-balancer/load-balancer-get-started-internet-portal",
1930319263
"redirect_document_id": false
1930419264
},
19305-
{
19306-
"source_path": "articles/virtual-machines/windows/sql/virtual-machines-windows-sql-register-with-rp.md",
19307-
"redirect_url": "/azure/virtual-machines/windows/sql/virtual-machines-windows-sql-register-with-resource-provider",
19308-
"redirect_document_id": false
19309-
},
1931019265
{
1931119266
"source_path": "articles/load-balancer/load-balancer-configure-sqlao.md",
1931219267
"redirect_url": "/azure/virtual-machines/windows/sql/virtual-machines-windows-portal-sql-alwayson-int-listener",
@@ -29647,11 +29602,6 @@
2964729602
"redirect_url": "/azure/data-factory/v1/data-factory-amazon-redshift-connector",
2964829603
"redirect_document_id": true
2964929604
},
29650-
{
29651-
"source_path": "articles/data-factory/connector-azure-sql-database-managed-insance.md",
29652-
"redirect_url": "/azure/data-factory/connector-azure-sql-database-managed-instance",
29653-
"redirect_document_id": false
29654-
},
2965529605
{
2965629606
"source_path": "articles/data-factory/how-to-read-write-partitioned-data.md",
2965729607
"redirect_url": "/azure/data-factory/tutorial-incremental-copy-overview",
@@ -32857,11 +32807,6 @@
3285732807
"redirect_url": "/azure/service-fabric/service-fabric-security-controls",
3285832808
"redirect_document_id": false
3285932809
},
32860-
{
32861-
"source_path": "articles/sql-database/sql-database-security-attributes.md",
32862-
"redirect_url": "/azure/sql-database/sql-database-security-controls",
32863-
"redirect_document_id": false
32864-
},
3286532810
{
3286632811
"source_path": "articles/storage/common/storage-security-attributes.md",
3286732812
"redirect_url": "/azure/storage/common/storage-security-controls",
@@ -52299,11 +52244,6 @@
5229952244
"redirect_url": "/azure/developer/terraform/",
5230052245
"redirect_document_id": false
5230152246
},
52302-
{
52303-
"source_path": "articles/sql-database/sql-database-auditing-and-threat-detection-powershell.md",
52304-
"redirect_url": "/azure/sql-database/scripts/sql-database-auditing-and-threat-detection-powershell",
52305-
"redirect_document_id": true
52306-
},
5230752247
{
5230852248
"source_path": "articles/media-services/azure-media-player/azure-media-player-license.md",
5230952249
"redirect_url": "/legal/azure-media-player/azure-media-player-license",
@@ -52478,6 +52418,81 @@
5247852418
"source_path":"articles/azure-monitor/app/alerts.md",
5247952419
"redirect_url":"/azure/azure-monitor/platform/alerts-log",
5248052420
"redirect_document_id": false
52421+
},
52422+
{
52423+
"source_path": "articles/virtual-machines/windows/sql/virtual-machines-windows-sql-register-with-rp.md",
52424+
"redirect_url": "/azure/virtual-machines/windows/sql/virtual-machines-windows-sql-register-with-resource-provider",
52425+
"redirect_document_id": false
52426+
},
52427+
{
52428+
"source_path": "articles/sql-database/sql-database-security-attributes.md",
52429+
"redirect_url": "/azure/sql-database/sql-database-security-controls",
52430+
"redirect_document_id": false
52431+
},
52432+
{
52433+
"source_path": "articles/data-factory/connector-azure-sql-database-managed-insance.md",
52434+
"redirect_url": "/azure/data-factory/connector-azure-sql-database-managed-instance",
52435+
"redirect_document_id": false
52436+
},
52437+
{
52438+
"source_path": "articles/sql-data-warehouse/sql-data-warehouse-security-threat-detection.md",
52439+
"redirect_url": "/azure/sql-database/sql-database-threat-detection-overview",
52440+
"redirect_document_id": false
52441+
},
52442+
{
52443+
"source_path": "articles/sql-database/sql-database-threat-detection-get-started.md",
52444+
"redirect_url": "/azure/sql-database/sql-database-threat-detection",
52445+
"redirect_document_id": false
52446+
},
52447+
{
52448+
"source_path": "articles/sql-database/sql-database-threat-detection-portal.md",
52449+
"redirect_url": "/azure/sql-database/sql-database-threat-detection",
52450+
"redirect_document_id": false
52451+
},
52452+
{
52453+
"source_path": "articles/sql-data-warehouse/sql-data-warehouse-auditing-overview.md",
52454+
"redirect_url": "/azure/sql-database/sql-database-auditing",
52455+
"redirect_document_id": false
52456+
},
52457+
{
52458+
"source_path": "articles/sql-database/sql-database-auditing-get-started.md",
52459+
"redirect_url": "/azure/sql-database/sql-database-auditing",
52460+
"redirect_document_id": false
52461+
},
52462+
{
52463+
"source_path": "articles/sql-database/sql-database-auditing-portal.md",
52464+
"redirect_url": "/azure/sql-database/sql-database-auditing",
52465+
"redirect_document_id": false
52466+
},
52467+
{
52468+
"source_path": "articles/sql-database/sql-database-auditing-powershell.md",
52469+
"redirect_url": "/azure/sql-database/sql-database-auditing",
52470+
"redirect_document_id": false
52471+
},
52472+
{
52473+
"source_path": "articles/sql-database/sql-database-auditing-rest.md",
52474+
"redirect_url": "/azure/sql-database/sql-database-auditing",
52475+
"redirect_document_id": false
52476+
},
52477+
{
52478+
"source_path": "articles/sql-database/sql-database-auditing-and-threat-detection-powershell.md",
52479+
"redirect_url": "/azure/sql-database/scripts/sql-database-auditing-and-threat-detection-powershell",
52480+
"redirect_document_id": true
52481+
},
52482+
{
52483+
"source_path": "articles/cdn/endpoint-multiorigin.md",
52484+
"redirect_url": "/azure/cdn/cdn-overview",
52485+
"redirect_document_id": false
52486+
},
52487+
{
52488+
"source_path": "articles/batch/batch-api-basics.md",
52489+
"redirect_url": "/azure/batch/batch-service-workflow-features",
52490+
"redirect_document_id": false
52491+
},
52492+
{
52493+
"source_path": "articles/batch/batch-retry-after-errors.md",
52494+
"redirect_url": "/azure/batch/error-handling",
52495+
"redirect_document_id": false
5248152496
}
52482-
]
52497+
]
5248352498
}

articles/active-directory-b2c/custom-policy-get-started.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -134,7 +134,7 @@ Next, specify that the application should be treated as a public client:
134134

135135
1. Under **Manage**, select **Authentication**.
136136
1. Select **Try out the new experience** (if shown).
137-
1. Under **Advanced settings**, enable **Treat application as a public client** (select **Yes**).
137+
1. Under **Advanced settings**, enable **Treat application as a public client** (select **Yes**). Ensure that **"allowPublicClient": true** is set in the application manifest.
138138
1. Select **Save**.
139139

140140
Now, grant permissions to the API scope you exposed earlier in the *IdentityExperienceFramework* registration:

articles/active-directory-b2c/manage-user-access.md

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -32,25 +32,25 @@ If a user is identified as a minor, you can set the user flow in Azure AD B2C to
3232

3333
- **Send a signed JWT id_token back to the application**: The user is registered in the directory, and a token is returned to the application. The application then proceeds by applying business rules. For example, the application may proceed with a parental consent process. To use this method, choose to receive the **ageGroup** and **consentProvidedForMinor** claims from the application.
3434

35-
- **Send an unsigned JSON token to the application**: Azure AD B2C notifies the application that the user is a minor and provides the status of the users parental consent. The application then proceeds by applying business rules. A JSON token does not complete a successful authentication with the application. The application must process the unauthenticated user according to the claims included in the JSON token, which may include **name**, **email**, **ageGroup**, and **consentProvidedForMinor**.
35+
- **Send an unsigned JSON token to the application**: Azure AD B2C notifies the application that the user is a minor and provides the status of the user's parental consent. The application then proceeds by applying business rules. A JSON token does not complete a successful authentication with the application. The application must process the unauthenticated user according to the claims included in the JSON token, which may include **name**, **email**, **ageGroup**, and **consentProvidedForMinor**.
3636

3737
- **Block the user**: If a user is a minor, and parental consent has not been provided, Azure AD B2C can notify the user that they are blocked. No token is issued, access is blocked, and the user account is not created during a registration journey. To implement this notification, you provide a suitable HTML/CSS content page to inform the user and present appropriate options. No further action is needed by the application for new registrations.
3838

3939
## Get parental consent
4040

41-
Depending on application regulation, parental consent might need to be granted by a user who is verified as an adult. Azure AD B2C does not provide an experience to verify an individuals age and then allow a verified adult to grant parental consent to a minor. This experience must be provided by the application or another service provider.
41+
Depending on application regulation, parental consent might need to be granted by a user who is verified as an adult. Azure AD B2C does not provide an experience to verify an individual's age and then allow a verified adult to grant parental consent to a minor. This experience must be provided by the application or another service provider.
4242

4343
The following is an example of a user flow for gathering parental consent:
4444

4545
1. A [Microsoft Graph API](https://docs.microsoft.com/graph/use-the-api) operation identifies the user as a minor and returns the user data to the application in the form of an unsigned JSON token.
4646

4747
2. The application processes the JSON token and shows a screen to the minor, notifying them that parental consent is required and requesting the consent of a parent online.
4848

49-
3. Azure AD B2C shows a sign-in journey that the user can sign in to normally and issues a token to the application that is set to include **legalAgeGroupClassification = minorWithParentalConsent**. The application collects the email address of the parent and verifies that the parent is an adult. To do so, it uses a trusted source, such as a national ID office, license verification, or credit card proof. If verification is successful, the application prompts the minor to sign in by using the Azure AD B2C user flow. If consent is denied (for example, if **legalAgeGroupClassification = minorWithoutParentalConsent**), Azure AD B2C returns a JSON token (not a login) to the application to restart the consent process. It is optionally possible to customize the user flow so that a minor or an adult can regain access to a minors account by sending a registration code to the minors email address or the adults email address on record.
49+
3. Azure AD B2C shows a sign-in journey that the user can sign in to normally and issues a token to the application that is set to include **legalAgeGroupClassification = "minorWithParentalConsent"**. The application collects the email address of the parent and verifies that the parent is an adult. To do so, it uses a trusted source, such as a national ID office, license verification, or credit card proof. If verification is successful, the application prompts the minor to sign in by using the Azure AD B2C user flow. If consent is denied (for example, if **legalAgeGroupClassification = "minorWithoutParentalConsent"**), Azure AD B2C returns a JSON token (not a login) to the application to restart the consent process. It is optionally possible to customize the user flow so that a minor or an adult can regain access to a minor's account by sending a registration code to the minor's email address or the adult's email address on record.
5050

5151
4. The application offers an option to the minor to revoke consent.
5252

53-
5. When either the minor or the adult revokes consent, the Microsoft Graph API can be used to change **consentProvidedForMinor** to **denied**. Alternatively, the application may choose to delete a minor whose consent has been revoked. It is optionally possible to customize the user flow so that the authenticated minor (or parent that is using the minors account) can revoke consent. Azure AD B2C records **consentProvidedForMinor** as **denied**.
53+
5. When either the minor or the adult revokes consent, the Microsoft Graph API can be used to change **consentProvidedForMinor** to **denied**. Alternatively, the application may choose to delete a minor whose consent has been revoked. It is optionally possible to customize the user flow so that the authenticated minor (or parent that is using the minor's account) can revoke consent. Azure AD B2C records **consentProvidedForMinor** as **denied**.
5454

5555
For more information about **legalAgeGroupClassification**, **consentProvidedForMinor**, and **ageGroup**, see [User resource type](https://developer.microsoft.com/graph/docs/api-reference/beta/resources/user). For more information about custom attributes, see [Use custom attributes to collect information about your consumers](user-flow-custom-attributes.md). When you address extended attributes by using the Microsoft Graph API, you must use the long version of the attribute, such as *extension_18b70cf9bb834edd8f38521c2583cd86_dateOfBirth*: *2011-01-01T00:00:00Z*.
5656

@@ -62,15 +62,15 @@ A customized user flow can gather DOB and country/region information and use Azu
6262

6363
The following steps show the logic that is used to calculate **ageGroup** from the user's date of birth:
6464

65-
1. Try to find the country by the country code in the list. If the country is not found, fall back to **Default**.
65+
1. Try to find the country/region by the country/region code in the list. If the country/region is not found, fall back to **Default**.
6666

67-
2. If the **MinorConsent** node is present in the country element:
67+
2. If the **MinorConsent** node is present in the country/region element:
6868

6969
a. Calculate the date that the user must have been born on to be considered an adult. For example, if the current date is March 14, 2015, and **MinorConsent** is 18, the birth date must be no later than March 14, 2000.
7070

71-
b. Compare the minimum birth date with the actual birth date. If the minimum birth date is before the users birth date, the calculation returns **Minor** as the age group calculation.
71+
b. Compare the minimum birth date with the actual birth date. If the minimum birth date is before the user's birth date, the calculation returns **Minor** as the age group calculation.
7272

73-
3. If the **MinorNoConsentRequired** node is present in the country element, repeat steps 2a and 2b using the value from **MinorNoConsentRequired**. The output of 2b returns **MinorNoConsentRequired** if the minimum birth date is before the users birth date.
73+
3. If the **MinorNoConsentRequired** node is present in the country/region element, repeat steps 2a and 2b using the value from **MinorNoConsentRequired**. The output of 2b returns **MinorNoConsentRequired** if the minimum birth date is before the user's birth date.
7474

7575
4. If neither calculation returns true, the calculation returns **Adult**.
7676

@@ -85,13 +85,13 @@ For more information about gathering DOB data, see [Use age gating in Azure AD B
8585

8686
When you develop your application, you ordinarily capture users' acceptance of terms of use within their applications with no, or only minor, participation from the user directory. It is possible, however, to use an Azure AD B2C user flow to gather a user's acceptance of terms of use, restrict access if acceptance is not granted, and enforce acceptance of future changes to the terms of use, based on the date of the latest acceptance and the date of the latest version of the terms of use.
8787

88-
**Terms of Use** may also include Consent to share data with third parties. Depending on local regulations and business rules, you can gather a user's acceptance of both conditions combined, or you can allow the user to accept one condition and not the other.
88+
**Terms of Use** may also include "Consent to share data with third parties." Depending on local regulations and business rules, you can gather a user's acceptance of both conditions combined, or you can allow the user to accept one condition and not the other.
8989

9090
The following steps describe how you can manage terms of use:
9191

9292
1. Record the acceptance of the terms of use and the date of acceptance by using the Graph API and extended attributes. You can do so by using both built-in and custom user flows. We recommend that you create and use the **extension_termsOfUseConsentDateTime** and **extension_termsOfUseConsentVersion** attributes.
9393

94-
2. Create a required check box labeled Accept Terms of Use, and record the result during signup. You can do so by using both built-in and custom user flows.
94+
2. Create a required check box labeled "Accept Terms of Use," and record the result during signup. You can do so by using both built-in and custom user flows.
9595

9696
3. Azure AD B2C stores the terms of use agreement and the user's acceptance. You can use the Graph API to query for the status of any user by reading the extension attribute that's used to record the response (for example, read **termsOfUseTestUpdateDateTime**). You can do so by using both built-in and custom user flows.
9797

0 commit comments

Comments
 (0)