Skip to content

Commit 3fecf7b

Browse files
20230814 resolve merge conflicts
2 parents 1099794 + 7bc524c commit 3fecf7b

File tree

91 files changed

+519
-343
lines changed

Some content is hidden

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

91 files changed

+519
-343
lines changed

articles/active-directory/authentication/tutorial-enable-sspr.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,10 @@ In this tutorial you learn how to:
2929
> * Set up authentication methods and registration options
3030
> * Test the SSPR process as a user
3131
32+
> [!IMPORTANT]
33+
> In March 2023, we announced the deprecation of managing authentication methods in the legacy multifactor authentication (MFA) and self-service password reset (SSPR) policies. Beginning September 30, 2024, authentication methods can't be managed in these legacy MFA and SSPR policies. We recommend customers use the manual migration control to migrate to the Authentication methods policy by the deprecation date.
34+
35+
3236
## Video tutorial
3337

3438
You can also follow along in a related video: [How to enable and configure SSPR in Azure AD](https://www.youtube.com/embed/rA8TvhNcCvQ?azure-portal=true).

articles/active-directory/conditional-access/concept-token-protection.md

Lines changed: 18 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ description: Learn how to use token protection in Conditional Access policies.
44
ms.service: active-directory
55
ms.subservice: conditional-access
66
ms.topic: conceptual
7-
ms.date: 07/18/2023
7+
ms.date: 08/14/2023
88

99
ms.author: joflore
1010
author: MicrosoftGuyJFlo
@@ -17,7 +17,7 @@ ms.collection: M365-identity-device-management
1717

1818
Token protection (sometimes referred to as token binding in the industry) attempts to reduce attacks using token theft by ensuring a token is usable only from the intended device. When an attacker is able to steal a token, by hijacking or replay, they can impersonate their victim until the token expires or is revoked. Token theft is thought to be a relatively rare event, but the damage from it can be significant.
1919

20-
Token protection creates a cryptographically secure tie between the token and the device (client secret) it's issued to. Without the client secret, the bound token is useless. When a user registers a Windows 10 or newer device in Azure AD, their primary identity is [bound to the device](../devices/concept-primary-refresh-token.md#how-is-the-prt-protected). What this means is that a policy can ensure that only bound sign-in session (or refresh) tokens, otherwise known as Primary Refresh Tokens (PRTs) are used by applications when requesting access to a resource.
20+
Token protection creates a cryptographically secure tie between the token and the device (client secret) it's issued to. Without the client secret, the bound token is useless. When a user registers a Windows 10 or newer device in Azure AD, their primary identity is [bound to the device](../devices/concept-primary-refresh-token.md#how-is-the-prt-protected). What this means: A policy can ensure that only bound sign-in session (or refresh) tokens, otherwise known as Primary Refresh Tokens (PRTs) are used by applications when requesting access to a resource.
2121

2222
> [!IMPORTANT]
2323
> Token protection is currently in public preview. For more information about previews, see [Supplemental Terms of Use for Microsoft Azure Previews](https://azure.microsoft.com/support/legal/preview-supplemental-terms/).
@@ -35,28 +35,35 @@ With this preview, we're giving you the ability to create a Conditional Access p
3535

3636
## Requirements
3737

38-
This preview supports the following configurations:
38+
This preview supports the following configurations for access to resources with Token Protection conditional access policies applied:
3939

4040
* Windows 10 or newer devices that are Azure AD joined, hybrid Azure AD joined, or Azure AD registered.
4141
* OneDrive sync client version 22.217 or later
4242
* Teams native client version 1.6.00.1331 or later
43+
* Power BI desktop version 2.117.841.0 (May 2023) or later
44+
* Visual Studio 2022 or later when using the 'Windows authentication broker' Sign-in option
4345
* Office Perpetual clients aren't supported
4446

4547
### Known limitations
4648

4749
- External users (Azure AD B2B) aren't supported and shouldn't be included in your Conditional Access policy.
4850
- The following applications don't support signing in using protected token flows and users are blocked when accessing Exchange and SharePoint:
49-
- Power BI Desktop client
5051
- PowerShell modules accessing Exchange, SharePoint, or Microsoft Graph scopes that are served by Exchange or SharePoint
5152
- PowerQuery extension for Excel
5253
- Extensions to Visual Studio Code which access Exchange or SharePoint
53-
- Visual Studio
54-
- The new Teams 2.1 preview client gets blocked after sign out due to a bug. This bug should be fixed in an August release.
54+
- The new Teams 2.1 preview client gets blocked after sign out due to a bug. This bug should be fixed in a future service update.
5555
- The following Windows client devices aren't supported:
5656
- Windows Server
5757
- Surface Hub
5858
- Windows-based Microsoft Teams Rooms (MTR) systems
5959

60+
## Licensing requirements
61+
62+
[!INCLUDE [Active Directory P2 license](../../../includes/active-directory-p2-license.md)]
63+
64+
> [!NOTE]
65+
> Token Protection enforcement is part of Microsoft Entra ID Protection and will be part of the P2 license at general availability.
66+
6067
## Deployment
6168

6269
For users, the deployment of a Conditional Access policy to enforce token protection should be invisible when using compatible client platforms on registered devices and compatible applications.
@@ -135,7 +142,7 @@ You can also use [Log Analytics](../reports-monitoring/tutorial-log-analytics-wi
135142
Here's a sample Log Analytics query searching the non-interactive sign-in logs for the last seven days, highlighting **Blocked** versus **Allowed** requests by **Application**. These queries are only samples and are subject to change.
136143

137144
> [!NOTE]
138-
> **Sign In logs output:** The value of the string used in "enforcedSessionControls" and "sessionControlsNotSatisfied" changed from "Binding" to "SignInTokenProtection" in late June 2023. Queries on Sign In Log data should be updated to reflect this change.
145+
> **Sign In logs output:** The value of the string used in "enforcedSessionControls" and "sessionControlsNotSatisfied" changed from "Binding" to "SignInTokenProtection" in late June 2023. Queries on Sign In Log data should be updated to reflect this change. The examples cover both values to include historical data.
139146
140147
```kusto
141148
//Per Apps query
@@ -150,10 +157,10 @@ AADNonInteractiveUserSignInLogs
150157
//Add userPrinicpalName if you want to filter
151158
// | where UserPrincipalName =="<user_principal_Name>"
152159
| mv-expand todynamic(ConditionalAccessPolicies)
153-
| where ConditionalAccessPolicies ["enforcedSessionControls"] contains '["SignInTokenProtection"]'
160+
| where ConditionalAccessPolicies ["enforcedSessionControls"] contains '["Binding"]' or ConditionalAccessPolicies ["enforcedSessionControls"] contains '["SignInTokenProtection"]'
154161
| where ConditionalAccessPolicies.result !="reportOnlyNotApplied" and ConditionalAccessPolicies.result !="notApplied"
155162
| extend SessionNotSatisfyResult = ConditionalAccessPolicies["sessionControlsNotSatisfied"]
156-
| extend Result = case (SessionNotSatisfyResult contains 'SignInTokenProtection', 'Block','Allow')
163+
| extend Result = case (SessionNotSatisfyResult contains 'SignInTokenProtection' or SessionNotSatisfyResult contains 'SignInTokenProtection', 'Block','Allow')
157164
| summarize by Id,UserPrincipalName, AppDisplayName, Result
158165
| summarize Requests = count(), Users = dcount(UserPrincipalName), Block = countif(Result == "Block"), Allow = countif(Result == "Allow"), BlockedUsers = dcountif(UserPrincipalName, Result == "Block") by AppDisplayName
159166
| extend PctAllowed = round(100.0 * Allow/(Allow+Block), 2)
@@ -179,10 +186,10 @@ AADNonInteractiveUserSignInLogs
179186
//Add userPrincipalName if you want to filter
180187
// | where UserPrincipalName =="<user_principal_Name>"
181188
| mv-expand todynamic(ConditionalAccessPolicies)
182-
| where ConditionalAccessPolicies.enforcedSessionControls contains '["SignInTokenProtection"]'
189+
| where ConditionalAccessPolicies ["enforcedSessionControls"] contains '["Binding"]' or ConditionalAccessPolicies ["enforcedSessionControls"] contains '["SignInTokenProtection"]'
183190
| where ConditionalAccessPolicies.result !="reportOnlyNotApplied" and ConditionalAccessPolicies.result !="notApplied"
184191
| extend SessionNotSatisfyResult = ConditionalAccessPolicies.sessionControlsNotSatisfied
185-
| extend Result = case (SessionNotSatisfyResult contains 'SignInTokenProtection', 'Block','Allow')
192+
| extend Result = case (SessionNotSatisfyResult contains 'SignInTokenProtection' or SessionNotSatisfyResult contains 'SignInTokenProtection', 'Block','Allow')
186193
| summarize by Id, UserPrincipalName, AppDisplayName, ResourceDisplayName,Result
187194
| summarize Requests = count(),Block = countif(Result == "Block"), Allow = countif(Result == "Allow") by UserPrincipalName, AppDisplayName,ResourceDisplayName
188195
| extend PctAllowed = round(100.0 * Allow/(Allow+Block), 2)

articles/aks/azure-cni-powered-by-cilium.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ Azure CNI powered by Cilium currently has the following limitations:
4949

5050
* Hubble is disabled.
5151

52-
* Not compatible with Istio or other sidecar-based service meshes ([Istio issue #27619](https://github.com/istio/istio/issues/27619)).
52+
* Network policies cannot use `ipBlock` to allow access to node or pod IPs ([Cilium issue #9209](https://github.com/cilium/cilium/issues/9209) and [#12277](https://github.com/cilium/cilium/issues/12277)).
5353

5454
* Kubernetes services with `internalTrafficPolicy=Local` aren't supported ([Cilium issue #17796](https://github.com/cilium/cilium/issues/17796)).
5555

articles/aks/use-cvm.md

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ title: Use Confidential Virtual Machines (CVM) in Azure Kubernetes Service (AKS)
33
description: Learn how to create Confidential Virtual Machines (CVM) node pools with Azure Kubernetes Service (AKS)
44
ms.topic: article
55
ms.custom: ignite-2022
6-
ms.date: 05/08/2023
6+
ms.date: 08/14/2023
77
---
88

99
# Use Confidential Virtual Machines (CVM) in Azure Kubernetes Service (AKS) cluster
@@ -16,9 +16,7 @@ Adding a node pool with CVM to your AKS cluster is currently in preview.
1616

1717
Before you begin, make sure you have the following:
1818

19-
- An Azure subscription. If you don't have an Azure subscription, you can create a [free account](https://azure.microsoft.com/free).
20-
- [Azure CLI installed](/cli/azure/install-azure-cli).
21-
- An existing AKS cluster in the *westus*, *eastus*, *westeurope*, or *northeurope* region.
19+
- An existing AKS cluster.
2220
- The [DCasv5 and DCadsv5-series][cvm-subs-dc] or [ECasv5 and ECadsv5-series][cvm-subs-ec] SKUs available for your subscription.
2321

2422
## Limitations

articles/analysis-services/analysis-services-manage.md

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -53,8 +53,6 @@ To get all the latest features, and the smoothest experience when connecting to
5353

5454
## External open source tools
5555

56-
**Tabular Editor** - An open-source tool for creating, maintaining, and managing tabular models using an intuitive, lightweight editor. A hierarchical view shows all objects in your tabular model. Objects are organized by display folders with support for multi-select property editing and DAX syntax highlighting. XMLA read-only is required for query operations. Read-write is required for metadata operations. To learn more, see [tabulareditor.github.io](https://tabulareditor.github.io/).
57-
5856
**ALM Toolkit** - An open-source schema compare tool for Analysis Services tabular models and Power BI datasets, most often used for application lifecycle management (ALM) scenarios. Perform deployment across environments and retain incremental refresh historical data. Diff and merge metadata files, branches and repos. Reuse common definitions between datasets. Read-only is required for query operations. Read-write is required for metadata operations. To learn more, see [alm-toolkit.com](http://alm-toolkit.com/).
5957

6058
**DAX Studio** – An open-source tool for DAX authoring, diagnosis, performance tuning, and analysis. Features include object browsing, integrated tracing, query execution breakdowns with detailed statistics, DAX syntax highlighting and formatting. XMLA read-only is required for query operations. To learn more, see [daxstudio.org](https://daxstudio.org/).
@@ -68,4 +66,4 @@ When connecting using SSMS, if you run into problems, you may need to clear the
6866
## Next steps
6967
If you haven't already deployed a tabular model to your new server, now is a good time. To learn more, see [Deploy to Azure Analysis Services](analysis-services-deploy.md).
7068

71-
If you've deployed a model to your server, you're ready to connect to it using a client application or tool. To learn more, see [Get data from Azure Analysis Services server](analysis-services-connect.md).
69+
If you've deployed a model to your server, you're ready to connect to it using a client application or tool. To learn more, see [Get data from Azure Analysis Services server](analysis-services-connect.md).

articles/analysis-services/analysis-services-overview.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -168,7 +168,7 @@ Azure Analysis Services Firewall blocks all client connections other than those
168168

169169
### Authentication
170170

171-
User authentication is handled by [Azure Active Directory (AAD)](../active-directory/fundamentals/active-directory-whatis.md). When logging in, users use an organization account identity with role-based access to the database. User identities must be members of the default Azure Active Directory for the subscription that the server is in. To learn more, see [Authentication and user permissions](analysis-services-manage-users.md).
171+
User authentication is handled by [Azure Active Directory (Azure AD)](../active-directory/fundamentals/active-directory-whatis.md). When logging in, users use an organization account identity with role-based access to the database. User identities must be members of the default Azure Active Directory for the subscription that the server is in. To learn more, see [Authentication and user permissions](analysis-services-manage-users.md).
172172

173173
### Data security
174174

@@ -215,7 +215,7 @@ Manage your servers and model databases by using [SQL Server Management Studio (
215215

216216
### Open-source tools
217217

218-
Analysis Services has a vibrant community of developers who create tools. Be sure to check out [Tabular Editor](https://tabulareditor.github.io/), an open-source tool for creating, maintaining, and managing tabular models using an intuitive, lightweight editor. [DAX Studio](https://daxstudio.org/), is a great open-source tool for DAX authoring, diagnosis, performance tuning, and analysis.
218+
Analysis Services has a vibrant community of developers who create tools. [DAX Studio](https://daxstudio.org/), is a great open-source tool for DAX authoring, diagnosis, performance tuning, and analysis.
219219

220220
### PowerShell
221221

articles/azure-monitor/app/separate-resources.md

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -85,7 +85,10 @@ var appInsights = window.appInsights || function(config){ ...
8585

8686
## Create more Application Insights resources
8787

88-
To create an Applications Insights resource, see [Create an Application Insights resource](./create-new-resource.md).
88+
To create an Applications Insights resource, see [Create an Application Insights resource](./create-workspace-resource.md).
89+
90+
> [!WARNING]
91+
> You may incur additional network costs if your Application Insights resource is monitoring an Azure resource (i.e., telemetry producer) in a different region. Costs will vary depending on the region the telemetry is coming from and where it is going. Refer to [Azure bandwidth pricing](https://azure.microsoft.com/pricing/details/bandwidth/) for details.
8992
9093
### Get the instrumentation key
9194
The instrumentation key identifies the resource that you created.

articles/azure-monitor/logs/log-analytics-workspace-health.md

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,11 @@ Azure Service Health monitors:
1919
- [Resource health](../../service-health/resource-health-overview.md): information about the health of your individual cloud resources, such as a specific Log Analytics workspace.
2020
- [Service health](../../service-health/service-health-overview.md): information about the health of the Azure services and regions you're using, which might affect your Log Analytics workspace, including communications about outages, planned maintenance activities, and other health advisories.
2121

22+
## Permissions required
23+
24+
- To view Log Analytics workspace health, you need `*/read` permissions to the Log Analytics workspace, as provided by the [Log Analytics Reader built-in role](./manage-access.md#log-analytics-reader), for example.
25+
- To set up health status alerts, you need `Microsoft.Insights/ActivityLogAlerts/Write` permissions to the Log Analytics workspace, as provided by the [Monitoring Contributor built-in role](../roles-permissions-security.md#monitoring-contributor), for example.
26+
2227
## View Log Analytics workspace health and set up health status alerts
2328

2429
When Azure Service Health detects [average latency](../logs/data-ingestion-time.md#average-latency) in your Log Analytics workspace, the workspace resource health status is **Available**.
@@ -79,7 +84,7 @@ To view Log Analytics workspace health metrics:
7984
To investigate Log Analytics workspace health issues:
8085

8186
- Use [Log Analytics Workspace Insights](../logs/log-analytics-workspace-insights-overview.md), which provides a unified view of your workspace usage, performance, health, agent, queries, and change log.
82-
- Query the data in your Log Analytics workspace to [understand which factors are contributing greater than expected latency in your workspace](../logs/data-ingestion-time.md).
87+
- [Query](./queries.md) the data in your Log Analytics workspace to [understand which factors are contributing greater than expected latency in your workspace](../logs/data-ingestion-time.md).
8388
- [Use the `_LogOperation` function to view and set up alerts about operational issues](../logs/monitor-workspace.md) logged in your Log Analytics workspace.
8489

8590
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
---
2+
title: include file
3+
description: include file
4+
services: azure-communication-services
5+
ms.date: 08/14/2023
6+
ms.topic: include
7+
ms.service: azure-communication-services
8+
---
9+
10+
## Force calling traffic to be proxied across your own server for Android SDK
11+
12+
In certain situations, it might be useful to have all your client traffic proxied to a server that you can control. When the SDK is initializing, you can provide the details of your servers that you would like the traffic to route to. This tutorial guides on how to have Android SDK calling traffic be proxied to servers that you control.
13+
14+
>[!IMPORTANT]
15+
> The proxy feature will be available in a future public preview version of the Calling SDK.
16+
## Proxy signaling traffic
17+
18+
To provide the URL of a proxy server, you need to pass it in as part of `CallClientOptions` through its property `CallNetworkOptions` while initializing the `CallClient`. For more details how to setup a call see [Azure Communication Services Android SDK](../../quickstarts/voice-video-calling/get-started-with-video-calling.md?pivots=platform-android)) for the Quickstart on how to setup Voice and Video.
19+
20+
```java
21+
CallClientOptions callClientOptions = new CallClientOptions();
22+
CallNetworkOptions callNetworkOptions = new CallNetworkOptions();
23+
callNetworkOptions.setProxyAddress("https://myproxyserver.com");
24+
callClientOptions.setNetworkOptions(callNetworkOptions);
25+
CallClient callClient = new CallClient(callClientOptions);
26+
// ...continue normally with your SDK setup and usage.
27+
```
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
---
2+
title: include file
3+
description: include file
4+
services: azure-communication-services
5+
ms.date: 08/14/2023
6+
ms.topic: include
7+
ms.service: azure-communication-services
8+
---
9+
10+
## Force calling traffic to be proxied across your own server for iOS SDK
11+
12+
In certain situations, it might be useful to have all your client traffic proxied to a server that you can control. When the SDK is initializing, you can provide the details of your servers that you would like the traffic to route to. This tutorial guides on how to have iOS SDK calling traffic be proxied to servers that you control.
13+
14+
>[!IMPORTANT]
15+
> The proxy feature will be available in a future public preview version of the Calling SDK.
16+
## Proxy signaling traffic
17+
18+
To provide the URL of a proxy server, you need to pass it in as part of `CallClientOptions` through its property `CallNetworkOptions` while initializing the `CallClient`. For more details how to setup a call see [Azure Communication Services iOS SDK](../../quickstarts/voice-video-calling/get-started-with-video-calling.md?pivots=platform-ios)) for the Quickstart on how to setup Voice and Video.
19+
20+
```swift
21+
let callClientOptions = CallClientOptions()
22+
let callNetworkOptions = CallNetworkOptions()
23+
callNetworkOptions.proxyAddress = proxyAddress
24+
callClientOptions.networkOptions = callNetworkOptions
25+
self.callClient = CallClient(options: callClientOptions)
26+
// ...continue normally with your SDK setup and usage.
27+
```

0 commit comments

Comments
 (0)