Skip to content

Commit 27d00d6

Browse files
authored
Merge pull request #94141 from MicrosoftGuyJFlo/ConditionalAccessFix
[Azure AD] Conditional Access
2 parents e9f68fe + 36832c0 commit 27d00d6

25 files changed

+40
-40
lines changed

articles/active-directory/conditional-access/best-practices.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -86,7 +86,7 @@ For every sign-in, Azure Active Directory evaluates all policies and ensures tha
8686

8787
Yes, you can use Exchange ActiveSync in a Conditional Access policy.
8888

89-
Some cloud apps like SharePoint Online and Exchange Online also support legacy authentication protocols. When a client app can use a legacy authentication protocol to access a cloud app, Azure AD cannot enforce a conditional access policy on this access attempt. To prevent a client app from bypassing the enforcement of policies, you should check whether it is possible to only enable modern authentication on the affected cloud apps.
89+
Some cloud apps like SharePoint Online and Exchange Online also support legacy authentication protocols. When a client app can use a legacy authentication protocol to access a cloud app, Azure AD cannot enforce a Conditional Access policy on this access attempt. To prevent a client app from bypassing the enforcement of policies, you should check whether it is possible to only enable modern authentication on the affected cloud apps.
9090

9191
### How should you configure Conditional Access with Office 365 apps?
9292

articles/active-directory/develop/authentication-flows-app-scenarios.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -142,7 +142,7 @@ Applications running on a device without a browser can still call an API on beha
142142

143143
Though we don't recommend you use it, the [Username/Password flow](https://aka.ms/msal-net-up) is available in public client applications. This flow is still needed in some scenarios like DevOps.
144144

145-
But using this flow imposes constraints on your applications. For instance, applications using this flow can't sign in a user who needs to perform multi-factor authentication or conditional access. Your applications also don't benefit from single sign-on.
145+
But using this flow imposes constraints on your applications. For instance, applications using this flow can't sign in a user who needs to perform multi-factor authentication or Conditional Access. Your applications also don't benefit from single sign-on.
146146

147147
Authentication with the Username/Password flow goes against the principles of modern authentication and is provided only for legacy reasons.
148148

@@ -158,7 +158,7 @@ Similar to a desktop app, a mobile app calls the interactive token-acquisition m
158158

159159
MSAL iOS and MSAL Android use the system web browser by default. However, you can direct them to use the embedded Web View instead. There are specificities that depend on the mobile platform: Universal Windows Platform (UWP), iOS, or Android.
160160

161-
Some scenarios, like those that involve conditional access related to a device ID or a device enrollment, require a [broker](https://github.com/AzureAD/azure-activedirectory-library-for-dotnet/wiki/leveraging-brokers-on-Android-and-iOS) to be installed on the device. Examples of brokers are Microsoft Company Portal on Android and Microsoft Authenticator on Android and iOS. Also, MSAL can now interact with brokers.
161+
Some scenarios, like those that involve Conditional Access related to a device ID or a device enrollment, require a [broker](https://github.com/AzureAD/azure-activedirectory-library-for-dotnet/wiki/leveraging-brokers-on-Android-and-iOS) to be installed on the device. Examples of brokers are Microsoft Company Portal on Android and Microsoft Authenticator on Android and iOS. Also, MSAL can now interact with brokers.
162162

163163
> [!NOTE]
164164
> Your mobile app that uses MSAL.iOS, MSAL.Android, or MSAL.NET on Xamarin can have app protection policies applied to it. For instance, the policies might prevent a user from copying protected text. The mobile app is [managed by Intune](https://docs.microsoft.com/intune/app-sdk) and recognized by Intune as a managed app. The [Intune App SDK](https://docs.microsoft.com/intune/app-sdk-get-started) is separate from MSAL libraries and interacts with Azure AD on its own.

articles/active-directory/develop/authentication-scenarios.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ This article covers many of the authentication concepts you'll need to understan
3434

3535
Instead of creating apps that each maintain their own username and password information, which incurs a high administrative burden when you need to add or remove users across multiple apps, apps can delegate that responsibility to a centralized identity provider.
3636

37-
Azure Active Directory (Azure AD) is a centralized identify provider in the cloud. Delegating authentication and authorization to it enables scenarios such as conditional access policies that require a user to be in a specific location, the use of multi-factor authentication, as well as enabling a user to sign in once and then be automatically signed in to all of the web apps that share the same centralized directory. This capability is referred to as Single Sign On (SSO).
37+
Azure Active Directory (Azure AD) is a centralized identify provider in the cloud. Delegating authentication and authorization to it enables scenarios such as Conditional Access policies that require a user to be in a specific location, the use of multi-factor authentication, as well as enabling a user to sign in once and then be automatically signed in to all of the web apps that share the same centralized directory. This capability is referred to as Single Sign On (SSO).
3838

3939
A centralized identity provider is even more important for apps that have users located around the globe that don't necessarily sign in from the enterprise's network. Azure AD authenticates users and provides access tokens. An access token is a security token that is issued by an authorization server. It contains information about the user and the app for which the token is intended, which can be used to access Web APIs and other protected resources.
4040

articles/active-directory/develop/brokered-auth.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ ms.collection: M365-identity-device-management
2323

2424
## Introduction
2525

26-
You must use one of Microsoft's authentication brokers to participate in device-wide Single Sign-On (SSO) and to meet organizational conditional access policies. Integrating with a broker provides the following benefits:
26+
You must use one of Microsoft's authentication brokers to participate in device-wide Single Sign-On (SSO) and to meet organizational Conditional Access policies. Integrating with a broker provides the following benefits:
2727

2828
- Device single sign-on
2929
- Conditional access for:
@@ -62,7 +62,7 @@ When a broker is installed on a device, all subsequent interactive token request
6262
Installing a broker does not require the user to sign in again. Only when the user needs to resolve an `MsalUiRequiredException` will the next request go to the broker. `MsalUiRequiredException` is thrown for a number of reasons, and needs to be resolved interactively. These are some common reasons:
6363

6464
- The user changed the password associated with their account.
65-
- The user's account no longer meets a conditional access policy.
65+
- The user's account no longer meets a Conditional Access policy.
6666
- The user revoked their consent for the app to be associated with their account.
6767

6868
### When a broker is uninstalled

articles/active-directory/develop/migrate-objc-adal-msal.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -135,7 +135,7 @@ MSAL introduces some token acquisition call changes:
135135

136136
MSAL provides more clarity between errors that can be handled by your app and those that require intervention by the user. There are a limited number of errors developer must handle:
137137

138-
* `MSALErrorInteractionRequired`: The user must do an interactive request. This can be caused for various reasons such as an expired authentication session, conditional access policy has changed, a refresh token expired or was revoked, there are no valid tokens in the cache, and so on.
138+
* `MSALErrorInteractionRequired`: The user must do an interactive request. This can be caused for various reasons such as an expired authentication session, Conditional Access policy has changed, a refresh token expired or was revoked, there are no valid tokens in the cache, and so on.
139139
* `MSALErrorServerDeclinedScopes`: The request wasn't fully completed and some scopes weren't granted access. This can be caused by a user declining consent to one or more scopes.
140140

141141
Handling all other errors in the [`MSALError` list](https://github.com/AzureAD/microsoft-authentication-library-for-objc/blob/master/MSAL/src/public/MSALError.h#L128) is optional. You could use the information in those errors to improve the user experience.
@@ -144,7 +144,7 @@ See [Handling exceptions and errors using MSAL](msal-handling-exceptions.md) for
144144

145145
### Broker support
146146

147-
MSAL, starting with version 0.3.0, provides support for brokered authentication using the Microsoft Authenticator app. Microsoft Authenticator also enables support for conditional access scenarios. Examples of conditional access scenarios include device compliance policies that require the user to enroll the device through Intune or register with AAD to get a token. And Mobile Application Management (MAM) conditional access policies, which require proof of compliance before your app can get a token.
147+
MSAL, starting with version 0.3.0, provides support for brokered authentication using the Microsoft Authenticator app. Microsoft Authenticator also enables support for Conditional Access scenarios. Examples of Conditional Access scenarios include device compliance policies that require the user to enroll the device through Intune or register with AAD to get a token. And Mobile Application Management (MAM) Conditional Access policies, which require proof of compliance before your app can get a token.
148148

149149
To enable broker for your application:
150150

@@ -208,7 +208,7 @@ On macOS, MSAL can achieve SSO with other MSAL for iOS and macOS based applicati
208208
MSAL on iOS also supports two other types of SSO:
209209

210210
* SSO through the web browser. MSAL for iOS supports `ASWebAuthenticationSession`, which provides SSO through cookies shared between other apps on the device and specifically the Safari browser.
211-
* SSO through an Authentication broker. On an iOS device, Microsoft Authenticator acts as the Authentication broker. It can follow conditional access policies such as requiring a compliant device, and provides SSO for registered devices. MSAL SDKs starting with version 0.3.0 support a broker by default.
211+
* SSO through an Authentication broker. On an iOS device, Microsoft Authenticator acts as the Authentication broker. It can follow Conditional Access policies such as requiring a compliant device, and provides SSO for registered devices. MSAL SDKs starting with version 0.3.0 support a broker by default.
212212

213213
## Intune MAM SDK
214214

articles/active-directory/develop/msal-authentication-flows.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -228,7 +228,7 @@ Although this is useful in some cases (DevOps scenarios), if you want to use use
228228

229229
Apart from the [Integrated Windows Authentication constraints](#integrated-windows-authentication), the following constraints also apply:
230230

231-
- The username/password flow isn't compatible with conditional access and multi-factor authentication. As a consequence, if your app runs in an Azure AD tenant where the tenant admin requires multi-factor authentication, you can't use this flow. Many organizations do that.
231+
- The username/password flow isn't compatible with Conditional Access and multi-factor authentication. As a consequence, if your app runs in an Azure AD tenant where the tenant admin requires multi-factor authentication, you can't use this flow. Many organizations do that.
232232
- It works only for work and school accounts (not Microsoft accounts).
233233
- The flow is available on .NET desktop and .NET Core, but not on Universal Windows Platform.
234234

articles/active-directory/develop/msal-differences-ios-macos.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ On macOS 10.15+, MSAL's behavior is the same between iOS and macOS. MSAL uses [k
4444

4545
### Conditional access authentication differences
4646

47-
For conditional access scenarios, there will be fewer user prompts when you use MSAL for iOS. This is because iOS uses the broker app (Microsoft Authenticator) which negates the need to prompt the user in some cases.
47+
For Conditional Access scenarios, there will be fewer user prompts when you use MSAL for iOS. This is because iOS uses the broker app (Microsoft Authenticator) which negates the need to prompt the user in some cases.
4848

4949
### Project setup differences
5050

articles/active-directory/develop/msal-handling-exceptions.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
---
22
title: Errors and exceptions (MSAL)
33
titleSuffix: Microsoft identity platform
4-
description: Learn how to handle errors and exceptions, conditional access, and claims challenges in MSAL applications.
4+
description: Learn how to handle errors and exceptions, Conditional Access, and claims challenges in MSAL applications.
55
services: active-directory
66
documentationcenter: dev-center-name
77
author: jmprieur
@@ -30,7 +30,7 @@ Exceptions in Microsoft Authentication Library (MSAL) are intended for app devel
3030

3131
When processing exceptions and errors, you can use the exception type itself and the error code to distinguish between exceptions. For a list of error codes, see [Authentication and authorization error codes](reference-aadsts-error-codes.md).
3232

33-
During silent or interactive token acquisition, apps may come across errors during the sign-in experience such as errors about consents, conditional access (MFA, Device Management, Location-based restrictions), token issuance and redemption, and user properties.
33+
During silent or interactive token acquisition, apps may come across errors during the sign-in experience such as errors about consents, Conditional Access (MFA, Device Management, Location-based restrictions), token issuance and redemption, and user properties.
3434

3535
## MSAL for iOS and macOS errors
3636

articles/active-directory/develop/msal-net-migration-ios-broker.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ Brokers are applications provided by Microsoft on Android and iOS. (See the [Mic
3939
They enable:
4040

4141
- Single sign-on.
42-
- Device identification, which is required by some [conditional access policies](../conditional-access/overview.md). For more information, see [Device management](../conditional-access/conditions.md#device-platforms).
42+
- Device identification, which is required by some [Conditional Access policies](../conditional-access/overview.md). For more information, see [Device management](../conditional-access/conditions.md#device-platforms).
4343
- Application identification verification, which is also required in some enterprise scenarios. For more information, see [Intune mobile application management (MAM)](https://docs.microsoft.com/intune/mam-faq).
4444

4545
## Migrate from ADAL to MSAL

articles/active-directory/develop/msal-net-migration.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ Both Microsoft Authentication Library for .NET (MSAL.NET) and Azure AD Authentic
2828

2929
- you can authenticate a broader set of Microsoft identities (Azure AD identities and Microsoft accounts, and social and local accounts through Azure AD B2C) as it uses the Microsoft identity platform endpoint,
3030
- your users will get the best single-sign-on experience.
31-
- your application can enable incremental consent, and supporting conditional access is easier
31+
- your application can enable incremental consent, and supporting Conditional Access is easier
3232
- you benefit from the innovation.
3333

3434
**MSAL.NET is now the recommended auth library to use with the Microsoft identity platform**. No new features will be implemented on ADAL.NET. The efforts are focused on improving MSAL.

0 commit comments

Comments
 (0)