Skip to content

Commit ac695eb

Browse files
authored
Merge pull request #180131 from MicrosoftDocs/master
11/16 PM Publish
2 parents 05c8e50 + a8c5bc0 commit ac695eb

File tree

151 files changed

+3237
-2297
lines changed

Some content is hidden

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

151 files changed

+3237
-2297
lines changed

.openpublishing.redirection.active-directory.json

Lines changed: 26 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,11 @@
1010
"redirect_url": "/azure/active-directory/manage-apps/what-is-application-management",
1111
"redirect_document_id": false
1212
},
13+
{
14+
"source_path_from_root": "/articles/active-directory/authentication/how-to-nudge-authenticator-app.md",
15+
"redirect_url": "/azure/active-directory/authentication/how-to-mfa-registration-campaign",
16+
"redirect_document_id": false
17+
},
1318
{
1419
"source_path_from_root": "/articles/active-directory/develop/active-directory-v2-limitations.md",
1520
"redirect_url": "/azure/active-directory/azuread-dev/azure-ad-endpoint-comparison",
@@ -1670,6 +1675,26 @@
16701675
"redirect_url": "/azure/active-directory/authentication/tutorial-enable-azure-mfa",
16711676
"redirect_document_id": false
16721677
},
1678+
{
1679+
"source_path_from_root": "/articles/active-directory/conditional-access/require-managed-devices.md",
1680+
"redirect_url": "/azure/active-directory/conditional-access/concept-conditional-access-grant",
1681+
"redirect_document_id": false
1682+
},
1683+
{
1684+
"source_path_from_root": "/articles/active-directory/conditional-access/untrusted-networks.md",
1685+
"redirect_url": "/azure/active-directory/conditional-access/howto-conditional-access-policy-all-users-mfa",
1686+
"redirect_document_id": true
1687+
},
1688+
{
1689+
"source_path_from_root": "/articles/active-directory/conditional-access/app-based-conditional-access.md",
1690+
"redirect_url": "/azure/active-directory/conditional-access/howto-policy-approved-app-or-app-protection",
1691+
"redirect_document_id": false
1692+
},
1693+
{
1694+
"source_path_from_root": "/articles/active-directory/conditional-access/app-protection-based-conditional-access.md",
1695+
"redirect_url": "/azure/active-directory/conditional-access/howto-policy-approved-app-or-app-protection",
1696+
"redirect_document_id": true
1697+
},
16731698
{
16741699
"source_path_from_root": "/articles/active-directory/authentication/quickstart-sspr.md",
16751700
"redirect_url": "/azure/active-directory/authentication/tutorial-enable-sspr",
@@ -9888,7 +9913,7 @@
98889913
{
98899914
"source_path_from_root": "/articles/active-directory/active-directory-saas-workplacebyfacebook-provisioning-tutorial.md",
98909915
"redirect_url": "/azure/active-directory/saas-apps/workplace-by-facebook-provisioning-tutorial",
9891-
"redirect_document_id": true
9916+
"redirect_document_id": false
98929917
},
98939918
{
98949919
"source_path_from_root": "/articles/active-directory/active-directory-saas-workplacebyfacebook-tutorial.md",

articles/active-directory/app-provisioning/functions-for-customizing-application-data.md

Lines changed: 27 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ ms.service: active-directory
77
ms.subservice: app-provisioning
88
ms.workload: identity
99
ms.topic: reference
10-
ms.date: 10/27/2021
10+
ms.date: 11/16/2021
1111
ms.author: kenwith
1212
ms.reviewer: arvinh
1313
---
@@ -33,7 +33,7 @@ The syntax for Expressions for Attribute Mappings is reminiscent of Visual Basic
3333

3434
## List of Functions
3535

36-
[Append](#append)      [AppRoleAssignmentsComplex](#approleassignmentscomplex)      [BitAnd](#bitand)      [CBool](#cbool)      [CDate](#cdate)      [Coalesce](#coalesce)      [ConvertToBase64](#converttobase64)      [ConvertToUTF8Hex](#converttoutf8hex)      [Count](#count)      [CStr](#cstr)      [DateAdd](#dateadd)      [DateDiff](#datediff)      [DateFromNum](#datefromnum)  [FormatDateTime](#formatdatetime)      [Guid](#guid)      [IgnoreFlowIfNullOrEmpty](#ignoreflowifnullorempty)     [IIF](#iif)     [InStr](#instr)      [IsNull](#isnull)      [IsNullOrEmpty](#isnullorempty)      [IsPresent](#ispresent)      [IsString](#isstring)      [Item](#item)      [Join](#join)      [Left](#left)      [Mid](#mid)      [NormalizeDiacritics](#normalizediacritics)       [Not](#not)      [Now](#now)      [NumFromDate](#numfromdate)      [PCase](#pcase)      [RandomString](#randomstring)      [RemoveDuplicates](#removeduplicates)      [Replace](#replace)      [SelectUniqueValue](#selectuniquevalue)     [SingleAppRoleAssignment](#singleapproleassignment)     [Split](#split)    [StripSpaces](#stripspaces)      [Switch](#switch)     [ToLower](#tolower)     [ToUpper](#toupper)     [Word](#word)
36+
[Append](#append)      [AppRoleAssignmentsComplex](#approleassignmentscomplex)      [BitAnd](#bitand)      [CBool](#cbool)      [CDate](#cdate)      [Coalesce](#coalesce)      [ConvertToBase64](#converttobase64)      [ConvertToUTF8Hex](#converttoutf8hex)      [Count](#count)      [CStr](#cstr)      [DateAdd](#dateadd)      [DateDiff](#datediff)      [DateFromNum](#datefromnum)  [FormatDateTime](#formatdatetime)      [Guid](#guid)      [IgnoreFlowIfNullOrEmpty](#ignoreflowifnullorempty)     [IIF](#iif)     [InStr](#instr)      [IsNull](#isnull)      [IsNullOrEmpty](#isnullorempty)      [IsPresent](#ispresent)      [IsString](#isstring)      [Item](#item)      [Join](#join)      [Left](#left)      [Mid](#mid)      [NormalizeDiacritics](#normalizediacritics)       [Not](#not)      [Now](#now)      [NumFromDate](#numfromdate)      [PCase](#pcase)      [RandomString](#randomstring)      [Redact](#redact)      [RemoveDuplicates](#removeduplicates)      [Replace](#replace)      [SelectUniqueValue](#selectuniquevalue)     [SingleAppRoleAssignment](#singleapproleassignment)     [Split](#split)    [StripSpaces](#stripspaces)      [Switch](#switch)     [ToLower](#tolower)     [ToUpper](#toupper)     [Word](#word)
3737

3838
---
3939
### Append
@@ -811,7 +811,32 @@ Generates a random string with 6 characters. The string contains 3 numbers and 3
811811
Generates a random string with 10 characters. The string contains at least 2 numbers, 2 special characters, 2 capital letters, 1 lower case letter and excludes the characters "?" and "," (1@!2BaRg53).
812812

813813
---
814+
### Redact
815+
**Function:**
816+
Redact()
817+
818+
**Description:**
819+
The Redact function replaces the attribute value with the string literal "[Redact]" in the provisioning logs.
820+
821+
**Parameters:**
822+
823+
| Name | Required/ Repeating | Type | Notes |
824+
| --- | --- | --- | --- |
825+
| **attribute/value** |Required |String|Specify the attribute or constant / string to redact from the logs.|
826+
827+
**Example 1:** Redact an attribute:
828+
`Redact([userPrincipalName])`
829+
Removes the userPrincipalName from the provisioning logs.
814830

831+
**Example 2:** Redact a string:
832+
`Redact("StringToBeRedacted")`
833+
Removes a constant string from the provisioning logs.
834+
835+
**Example 3:** Redact a random string:
836+
`Redact(RandomString(6,3,0,0,3))`
837+
Removes the random string from the provisioning logs.
838+
839+
---
815840
### RemoveDuplicates
816841
**Function:**
817842
RemoveDuplicates(attribute)

articles/active-directory/authentication/TOC.yml

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -162,8 +162,12 @@
162162
href: howto-password-ban-bad-on-premises-faq.yml
163163
- name: Agent version history
164164
href: howto-password-ban-bad-on-premises-agent-versions.md
165-
- name: Nudge Microsoft Authenticator setup (Preview)
166-
href: how-to-nudge-authenticator-app.md
165+
- name: Run a registration campaign
166+
href: how-to-mfa-registration-campaign.md
167+
- name: Use number matching (Preview)
168+
href: how-to-mfa-number-match.md
169+
- name: Use additional context (Preview)
170+
href: how-to-mfa-additional-context.md
167171
- name: Use Microsoft managed settings
168172
href: how-to-mfa-microsoft-managed.md
169173
- name: Use a Temporary Access Pass (Preview)
Lines changed: 196 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,196 @@
1+
---
2+
title: Use additional context in multifactor authentication (MFA) notifications (Preview) - Azure Active Directory
3+
description: Learn how to use additional context in MFA notifications
4+
services: active-directory
5+
ms.service: active-directory
6+
ms.subservice: authentication
7+
ms.topic: conceptual
8+
ms.date: 11/16/2021
9+
10+
ms.author: justinha
11+
author: mjsantani
12+
manager: daveba
13+
14+
ms.collection: M365-identity-device-management
15+
16+
# Customer intent: As an identity administrator, I want to encourage users to use the Microsoft Authenticator app in Azure AD to improve and secure user sign-in events.
17+
---
18+
# How to use additional context in multifactor authentication (MFA) notifications (Preview) - Authentication Methods Policy
19+
20+
This topic covers how to improve the security of user sign-in by adding application location based on IP address in Microsoft Authenticator push notifications.
21+
22+
## Prerequisites
23+
24+
Your organization will need to enable Microsoft Authenticator push notifications for some users or groups using the new Authentication Methods Policy API.
25+
26+
>[!NOTE]
27+
>Additional context can be targeted to only a single group, which can be dynamic or nested. On-premises synchronized security groups and cloud-only security groups are supported for the Authentication Method Policy.
28+
29+
## Passwordless phone sign-in and multifactor authentication
30+
31+
When a user receives a Passwordless phone sign-in or MFA push notification in the Microsoft Authenticator app, they'll see the name of the application that requests the approval and the app location based on its IP address.
32+
33+
![Screenshot of additional context in the MFA push notification.](media/howto-authentication-passwordless-phone/location.png)
34+
35+
The additional context can be combined with [number matching](how-to-mfa-number-match.md) to further improve sign-in security.
36+
37+
![Screenshot of additional context with number matching in the MFA push notification.](media/howto-authentication-passwordless-phone/location-with-number-match.png)
38+
39+
### Policy schema changes
40+
41+
Identify a single target group for the schema configuration. Then use the following API endpoint to change the displayAppInformationRequiredState property to **enabled**:
42+
43+
https://graph.microsoft.com/beta/authenticationMethodsPolicy/authenticationMethodConfigurations/MicrosoftAuthenticator
44+
45+
46+
#### MicrosoftAuthenticatorAuthenticationMethodConfiguration properties
47+
48+
**PROPERTIES**
49+
50+
| Property | Type | Description |
51+
|---------|------|-------------|
52+
| id | String | The authentication method policy identifier. |
53+
| state | authenticationMethodState | Possible values are: **enabled**<br>**disabled** |
54+
55+
**RELATIONSHIPS**
56+
57+
| Relationship | Type | Description |
58+
|--------------|------|-------------|
59+
| includeTargets | [microsoftAuthenticatorAuthenticationMethodTarget](/graph/api/resources/passwordlessmicrosoftauthenticatorauthenticationmethodtarget.md?view=graph-rest-beta) |
60+
| collection | A collection of users or groups who are enabled to use the authentication method. |
61+
62+
#### MicrosoftAuthenticator includeTarget properties
63+
64+
**PROPERTIES**
65+
66+
| Property | Type | Description |
67+
|----------|------|-------------|
68+
| authenticationMode | String | Possible values are:<br>**any**: Both passwordless phone sign-in and traditional second factor notifications are allowed.<br>**deviceBasedPush**: Only passwordless phone sign-in notifications are allowed.<br>**push**: Only traditional second factor push notifications are allowed. |
69+
| id | String | Object ID of an Azure AD user or group. |
70+
| targetType | authenticationMethodTargetType | Possible values are: **user**, **group**.<br>You can only set one group or user for additional context. |
71+
| displayAppInformationRequiredState | advancedConfigState | Possible values are:<br>**enabled** explicitly enables the feature for the selected group.<br>**disabled** explicitly disables the feature for the selected group.<br>**default** allows Azure AD to manage whether the feature is enabled or not for the selected group. |
72+
73+
>[!NOTE]
74+
>Additional context can only be enabled for a single group.
75+
76+
#### Example of how to enable additional context for all users
77+
78+
Change the **displayAppInformationRequiredState** from **default** to **enabled**.
79+
80+
The value of Authentication Mode can be either **any** or **push**, depending on whether or not you also want to enable passwordless phone sign-in. In these examples, we'll use **any**, but if you do not want to allow passwordless, use **push**.
81+
82+
You need to PATCH the entire includeTarget to prevent overwriting any previous configuration. In that case, do a GET first, update only the relevant fields, and then PATCH. The following example only shows the update to the **displayAppInformationRequiredState**.
83+
84+
```json
85+
//Retrieve your existing policy via a GET.
86+
//Leverage the Response body to create the Request body section. Then update the Request body similar to the Request body as shown below.
87+
//Change the Query to PATCH and Run query
88+
89+
{
90+
"@odata.context": "https://graph.microsoft.com/beta/$metadata#authenticationMethodConfigurations/$entity",
91+
"@odata.type": "#microsoft.graph.microsoftAuthenticatorAuthenticationMethodConfiguration",
92+
"id": "MicrosoftAuthenticator",
93+
"state": "enabled",
94+
"[email protected]": "https://graph.microsoft.com/beta/$metadata#authenticationMethodsPolicy/authenticationMethodConfigurations('MicrosoftAuthenticator')/microsoft.graph.microsoftAuthenticatorAuthenticationMethodConfiguration/includeTargets",
95+
"includeTargets": [
96+
{
97+
"targetType": "group",
98+
"id": "all_users",
99+
"authenticationMode": "any",
100+
"displayAppInformationRequiredState": "enabled",
101+
"numberMatchingRequiredState": "enabled"
102+
}
103+
]
104+
}
105+
106+
```
107+
108+
To confirm this update has applied, run the GET request below using the endpoint below.
109+
GET - https://graph.microsoft.com/beta/authenticationMethodsPolicy/authenticationMethodConfigurations/MicrosoftAuthenticator
110+
111+
112+
#### Example of how to enable additional context for a single group
113+
114+
Change the **displayAppInformationRequiredState** value from **default** to **enabled.**
115+
Change the **id** from **all_users** to the ObjectID of the group from the Azure AD portal.
116+
117+
You need to PATCH the entire includeTarget to prevent overwriting any previous configuration. We recommend that you do a GET first, and then update only the relevant fields and then PATCH. The example below only shows the update to the **displayAppInformationRequiredState**.
118+
119+
```json
120+
//Copy paste the below in the Request body section as shown below.
121+
//Leverage the Response body to create the Request body section. Then update the Request body similar to the Request body as shown below.
122+
//Change query to PATCH and run query
123+
124+
{
125+
"@odata.context": "https://graph.microsoft.com/beta/$metadata#authenticationMethodConfigurations/$entity",
126+
"@odata.type": "#microsoft.graph.microsoftAuthenticatorAuthenticationMethodConfiguration",
127+
"id": "MicrosoftAuthenticator",
128+
"state": "enabled",
129+
"[email protected]": "https://graph.microsoft.com/beta/$metadata#authenticationMethodsPolicy/authenticationMethodConfigurations('MicrosoftAuthenticator')/microsoft.graph.microsoftAuthenticatorAuthenticationMethodConfiguration/includeTargets",
130+
"includeTargets": [
131+
{
132+
"targetType": "group",
133+
"id": "1ca44590-e896-4dbe-98ed-b140b1e7a53a”,
134+
"authenticationMode": "any",
135+
"displayAppInformationRequiredState": "enabled",
136+
"numberMatchingRequiredState": "enabled"
137+
}
138+
]
139+
}
140+
```
141+
142+
To verify, RUN GET again and verify the ObjectID
143+
GET https://graph.microsoft.com/beta/authenticationMethodsPolicy/authenticationMethodConfigurations/MicrosoftAuthenticator
144+
145+
146+
#### Example of error when enabling additional context for multiple groups
147+
148+
The PATCH request will fail with 400 Bad Request and the error will contain the following message:
149+
150+
`Persistance of policy failed with error: You cannot enable multiple targets for feature 'Require Display App Information'. Choose only one of the following includeTargets to enable: aede0efe-c1b4-40dc-8ae7-2c402f23e312,aede0efe-c1b4-40dc-8ae7-2c402f23e317.`
151+
152+
### Test the end-user experience
153+
Add the test user account to the Microsoft Authenticator app. The account **doesn't** need to be enabled for phone sign-in.
154+
155+
See the end-user experience of an Authenticator MFA push notification with additional context by signing into aka.ms/MFAsetup.
156+
157+
### Turn off additional context
158+
159+
To turn off additional context, you'll need to PATCH remove **displayAppInformationRequiredState** from **enabled** to **disabled**/**default**.
160+
161+
```json
162+
{
163+
"@odata.context": "https://graph.microsoft.com/beta/$metadata#authenticationMethodConfigurations/$entity",
164+
"@odata.type": "#microsoft.graph.microsoftAuthenticatorAuthenticationMethodConfiguration",
165+
"id": "MicrosoftAuthenticator",
166+
"state": "enabled",
167+
"[email protected]": "https://graph.microsoft.com/beta/$metadata#authenticationMethodsPolicy/authenticationMethodConfigurations('MicrosoftAuthenticator')/microsoft.graph.microsoftAuthenticatorAuthenticationMethodConfiguration/includeTargets",
168+
"includeTargets": [
169+
{
170+
"targetType": "group",
171+
"id": "all_users",
172+
"authenticationMode": "any",
173+
"displayAppInformationRequiredState": "enabled",
174+
"numberMatchingRequiredState": "default"
175+
}
176+
]
177+
}
178+
```
179+
180+
## Enable additional context in the portal
181+
182+
To enable additional context in the Azure AD portal, complete the following steps:
183+
184+
1. In the Azure AD portal, click **Security** > **Authentication methods** > **Microsoft Authenticator**.
185+
1. Select the target users, click the three dots on the right, and click **Configure**.
186+
187+
![Screenshot of how to configure number match.](media/howto-authentication-passwordless-phone/configure.png)
188+
189+
1. Select the **Authentication mode**, and then for **Show additional context in notifications (Preview)**, click **Enable**, and then click **Done**.
190+
191+
![Screenshot of enabling additional context.](media/howto-authentication-passwordless-phone/enable-additional-context.png)
192+
193+
## Next steps
194+
195+
[Authentication methods in Azure Active Directory - Microsoft Authenticator app](concept-authentication-authenticator-app.md)
196+

0 commit comments

Comments
 (0)