Skip to content

Commit 1f70884

Browse files
committed
Merge branch 'main' of https://github.com/MicrosoftDocs/azure-docs-pr into multir
2 parents 112a044 + 5ed13b2 commit 1f70884

File tree

406 files changed

+4175
-2403
lines changed

Some content is hidden

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

406 files changed

+4175
-2403
lines changed

.openpublishing.redirection.azure-monitor.json

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -420,6 +420,11 @@
420420
"source_path_from_root": "/articles/azure-monitor/insights/network-insights-overview.md" ,
421421
"redirect_url": "/azure/network-watcher/network-insights-overview",
422422
"redirect_document_id": false
423+
},
424+
{
425+
"source_path_from_root": "/articles/azure-monitor/insights/key-vault-insights-overview.md" ,
426+
"redirect_url": "/azure/key-vault/key-vault-insights-overview",
427+
"redirect_document_id": false
423428
}
424429
]
425430
}

CODEOWNERS

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -25,17 +25,17 @@ articles/advisor @rboucher
2525
articles/service-health @rboucher
2626

2727
# Azure Synapse Analytics
28-
/articles/synapse-analytics/ @julieMSFT @ryanmajidi @saveenr
29-
/articles/synapse-analytics/backuprestore/ @joannapea @julieMSFT
28+
/articles/synapse-analytics/ @SnehaGunda @WilliamDAssafMSFT @ryanmajidi @saveenr
29+
/articles/synapse-analytics/backuprestore/ @joannapea @WilliamDAssafMSFT
3030
/articles/synapse-analytics/catalog-governance/@djpmsft @chanuengg
31-
/articles/synapse-analytics/ccid/ @liudan66 @julieMSFT
31+
/articles/synapse-analytics/ccid/ @liudan66
3232
/articles/synapse-analytics/data-integration/ @kromerm @jonburchel
3333
/articles/synapse-analytics/machine-learning/ @garyericson @NelGson @midesa
34-
/articles/synapse-analytics/metadata/@MikeRys @julieMSFT @jocaplan
35-
/articles/synapse-analytics/security/ @RonyMSFT @nanditavalsan @meenalsri @julieMSFT
34+
/articles/synapse-analytics/metadata/@MikeRys @jocaplan
35+
/articles/synapse-analytics/security/ @RonyMSFT @meenalsri
3636
/articles/synapse-analytics/spark/ @euangms @mlee3gsd @midesa
37-
/articles/synapse-analytics/sql/ @filippopovic @azaricstefan @anumjs @WilliamDAssafMSFT @jovanpop-msft
38-
/articles/synapse-analytics/sql-data-warehouse/ @anumjs @ronortloff @julieMSFT
37+
/articles/synapse-analytics/sql/ @filippopovic @azaricstefan @WilliamDAssafMSFT @jovanpop-msft
38+
/articles/synapse-analytics/sql-data-warehouse/ @SnehaGunda @WilliamDAssafMSFT
3939
/articles/synapse-analytics/synapse-link/ @Rodrigossz @SnehaGunda @jovanpop-msft
4040

4141
# Cognitive Services

articles/active-directory/conditional-access/TOC.yml

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -39,14 +39,16 @@
3939
href: service-dependencies.md
4040
- name: Location conditions
4141
href: location-condition.md
42+
- name: Continuous access evaluation
43+
href: concept-continuous-access-evaluation.md
4244
- name: Workload identities
4345
href: workload-identity.md
46+
- name: CAE for workload identities
47+
href: concept-continuous-access-evaluation-workload.md
4448
- name: Filter for devices
4549
href: concept-condition-filters-for-devices.md
4650
- name: What if tool
4751
href: what-if-tool.md
48-
- name: Continuous access evaluation
49-
href: concept-continuous-access-evaluation.md
5052
- name: How-to guides
5153
expanded: true
5254
items:
Lines changed: 63 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,63 @@
1+
---
2+
title: Continuous access evaluation for workload identities in Azure AD
3+
description: Respond to changes to applications with continuous access evaluation for workload identities in Azure AD
4+
5+
services: active-directory
6+
ms.service: active-directory
7+
ms.subservice: conditional-access
8+
ms.topic: conceptual
9+
ms.date: 07/22/2022
10+
11+
ms.author: joflore
12+
author: MicrosoftGuyJFlo
13+
manager: karenhoran
14+
ms.reviewer: vmahtani
15+
16+
ms.collection: M365-identity-device-management
17+
---
18+
# Continuous access evaluation for workload identities (preview)
19+
20+
Continuous access evaluation (CAE) for [workload identities](../develop/workload-identities-overview.md) provides security benefits to your organization. It enables real-time enforcement of Conditional Access location and risk policies along with instant enforcement of token revocation events for workload identities.
21+
22+
Continuous access evaluation doesn't currently support managed identities.
23+
24+
## Scope of preview
25+
26+
The continuous access evaluation for workload identities public preview scope includes support for Microsoft Graph as a resource provider.
27+
28+
The preview targets service principals for line of business (LOB) applications.
29+
30+
We support the following revocation events:
31+
32+
- Service principal disable
33+
- Service principal delete
34+
- High service principal risk as detected by Azure AD Identity Protection
35+
36+
Continuous access evaluation for workload identities supports [Conditional Access policies that target location and risk](workload-identity.md#implementation).
37+
38+
## Enable your application
39+
40+
Developers can opt in to Continuous access evaluation for workload identities when their API requests `xms_cc` as an optional claim. The `xms_cc` claim with a value of `cp1` in the access token is the authoritative way to identify a client application is capable of handling a claims challenge. For more information about how to make this work in your application, see the article, [Claims challenges, claims requests, and client capabilities](../develop/claims-challenge.md).
41+
42+
### Disable
43+
44+
In order to opt out, don't send the `xms_cc` claim with a value of `cp1`.
45+
46+
Organizations who have Azure AD Premium can create a [Conditional Access policy to disable continuous access evaluation](concept-conditional-access-session.md#customize-continuous-access-evaluation) applied to specific workload identities as an immediate stop-gap measure.
47+
48+
## Troubleshooting
49+
50+
When a client’s access to a resource is blocked due to CAE being triggered, the client’s session will be revoked, and the client will need to reauthenticate. This behavior can be verified in the sign-in logs.
51+
52+
The following steps detail how an admin can verify sign in activity in the sign-in logs:
53+
54+
1. Sign into the Azure portal as a Conditional Access Administrator, Security Administrator, or Global Administrator.
55+
1. Browse to **Azure Active Directory** > **Sign-in logs** > **Service Principal Sign-ins**. You can use filters to ease the debugging process.
56+
1. Select an entry to see activity details. The **Continuous access evaluation** field indicates whether a CAE token was issued in a particular sign-in attempt.
57+
58+
## Next steps
59+
60+
- [Register an application with Azure AD and create a service principal](../develop/howto-create-service-principal-portal.md#register-an-application-with-azure-ad-and-create-a-service-principal)
61+
- [How to use Continuous Access Evaluation enabled APIs in your applications](../develop/app-resilience-continuous-access-evaluation.md)
62+
- [Sample application using continuous access evaluation](https://github.com/Azure-Samples/ms-identity-dotnetcore-daemon-graph-cae)
63+
- [What is continuous access evaluation?](../conditional-access/concept-continuous-access-evaluation.md)

articles/active-directory/develop/index-web-app.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ landingContent:
3939
- text: ASP.NET
4040
url: tutorial-v2-asp-webapp.md
4141
- text: Blazor Server
42-
url: tutorial-blazor-webassembly.md
42+
url: tutorial-blazor-server.md
4343
- text: Node.js with Express
4444
url: tutorial-v2-nodejs-webapp-msal.md
4545
- title: "Web apps in depth"

articles/active-directory/fundamentals/security-operations-privileged-accounts.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ The log files you use for investigation and monitoring are:
3434

3535
* [Azure AD Audit logs](../reports-monitoring/concept-audit-logs.md)
3636
* [Microsoft 365 Audit logs](/microsoft-365/compliance/auditing-solutions-overview)
37-
* [Azure Key Vault insights](../../azure-monitor/insights/key-vault-insights-overview.md)
37+
* [Azure Key Vault insights](../../key-vault/key-vault-insights-overview.md)
3838

3939
From the Azure portal, you can view the Azure AD Audit logs and download as comma-separated value (CSV) or JavaScript Object Notation (JSON) files. The Azure portal has several ways to integrate Azure AD logs with other tools that allow for greater automation of monitoring and alerting:
4040

articles/active-directory/roles/security-emergency-access.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -89,7 +89,7 @@ Some organizations use AD Domain Services and AD FS or similar identity provider
8989

9090
## Store account credentials safely
9191

92-
Organizations need to ensure that the credentials for emergency access accounts are kept secure and known only to individuals who are authorized to use them. Some customers use a smartcard and others use passwords. A password for an emergency access account is usually separated into two or three parts, written on separate pieces of paper, and stored in secure, fireproof safes that are in secure, separate locations.
92+
Organizations need to ensure that the credentials for emergency access accounts are kept secure and known only to individuals who are authorized to use them. Some customers use a smartcard for Windows Server AD, a [FIDO2 security key](../authentication/howto-authentication-passwordless-security-key.md) for Azure AD and others use passwords. A password for an emergency access account is usually separated into two or three parts, written on separate pieces of paper, and stored in secure, fireproof safes that are in secure, separate locations.
9393

9494
If using passwords, make sure the accounts have strong passwords that do not expire the password. Ideally, the passwords should be at least 16 characters long and randomly generated.
9595

articles/aks/TOC.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -507,6 +507,8 @@
507507
href: deployment-center-launcher.md
508508
- name: GitHub Actions for Kubernetes
509509
href: ../aks/kubernetes-action.md
510+
- name: Configure automated deployments (preview)
511+
href: automated-deployments.md
510512
- name: CI/CD with Azure Pipelines
511513
href: ../aks/devops-pipeline.md
512514
- name: Troubleshoot

articles/aks/automated-deployments.md

Lines changed: 72 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,72 @@
1+
---
2+
title: Automated deployments for Azure Kubernetes Service (Preview)
3+
description: Learn how to use automated deployments to simplify the process of adding GitHub Actions to your Azure Kubernetes Service (AKS) project
4+
ms.author: qpetraroia
5+
ms.topic: tutorial
6+
ms.date: 7/21/2022
7+
author: qpetraroia
8+
---
9+
10+
# Automated Deployments for Azure Kubernetes Service (Preview)
11+
12+
Automated deployments simplify the process of setting up a GitHub Action and creating an automated pipeline for your code releases to your Azure Kubernetes Service (AKS) cluster. Once connected, every new commit will kick off the pipeline, resulting in your application being updated.
13+
14+
[!INCLUDE [preview features callout](./includes/preview/preview-callout.md)]
15+
16+
> [!NOTE]
17+
> This feature is not yet available in all regions.
18+
19+
## Prerequisites
20+
21+
* A GitHub account.
22+
* An AKS cluster.
23+
* An Azure Container Registry (ACR)
24+
25+
## Deploy an application to your AKS cluster
26+
27+
1. In the Azure portal, navigate to the resource group containing the AKS cluster you want to deploy the application to.
28+
29+
1. Select your AKS cluster, and then select **Automated deployments (preview)** on the left blade. Select **Create an automated deployment**.
30+
31+
:::image type="content" source="media/automated-deployments/ad-homescreen.png" alt-text="The automated deployments screen in the Azure portal." lightbox="media/automated-deployments/ad-homescreen-expanded.png":::
32+
33+
1. Name your workflow and click **Authorize** to connect your Azure account with your GitHub account. After your accounts are linked, choose which repository and branch you would like to create the GitHub Action for.
34+
35+
- **GitHub**: Authorize and select the repository for your GitHub account.
36+
37+
:::image type="content" source="media/automated-deployments/ad-ghactivate-repo.png" alt-text="The authorize and repository selection screen." lightbox="media/automated-deployments/ad-ghactivate-repo-expanded.png":::
38+
39+
1. Pick your dockerfile and your ACR and image.
40+
41+
:::image type="content" source="media/automated-deployments/ad-image.png" alt-text="The image selection screen." lightbox="media/automated-deployments/ad-image-expanded.png":::
42+
43+
1. Determine whether you'll deploy with Helm or regular Kubernetes manifests. Once decided, pick the appropriate deployment files from your repository and decide which namespace you want to deploy into.
44+
45+
:::image type="content" source="media/automated-deployments/ad-deployment-details.png" alt-text="The deployment details screen." lightbox="media/automated-deployments/ad-deployment-details-expanded.png":::
46+
47+
1. Review your deployment before creating the pull request.
48+
49+
1. Click **view pull request** to see your GitHub Action.
50+
51+
:::image type="content" source="media/automated-deployments/ad-view-pr.png" alt-text="The final screen of the deployment process. The view pull request button is highlighted." lightbox="media/automated-deployments/ad-view-pr-expanded.png" :::
52+
53+
1. Merge the pull request to kick off the GitHub Action and deploy your application.
54+
55+
:::image type="content" source="media/automated-deployments/ad-accept-pr.png" alt-text="The pull request page in GitHub. The merge pull request button is highlighted." lightbox="media/automated-deployments/ad-accept-pr-expanded.png" :::
56+
57+
1. Once your application is deployed, go back to automated deployments to see your history.
58+
59+
:::image type="content" source="media/automated-deployments/ad-view-history.png" alt-text="The history screen in Azure portal, showing all the previous automated deployments." lightbox="media/automated-deployments/ad-view-history-expanded.png" :::
60+
61+
## Clean up resources
62+
63+
You can remove any related resources that you created when you don't need them anymore individually or by deleting the resource group to which they belong. To delete your automated deployment, navigate to the automated deployment dashboard and select **...**, then select **delete** and confirm your action.
64+
65+
## Next steps
66+
67+
You can modify these GitHub Actions to meet the needs of your team by opening them up in an editor like Visual Studio Code and changing them as you see fit.
68+
69+
Learn more about [GitHub Actions for Kubernetes][kubernetes-action].
70+
71+
<!-- LINKS -->
72+
[kubernetes-action]: kubernetes-action.md

articles/aks/limit-egress-traffic.md

Lines changed: 8 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -462,23 +462,20 @@ You'll define the outbound type to use the UDR that already exists on the subnet
462462

463463
> [!NOTE]
464464
> AKS will create a system-assigned kubelet identity in the Node resource group if you do not [specify your own kubelet managed identity][Use a pre-created kubelet managed identity].
465+
>
466+
> For user defined routing (UDR), system-assigned identity only supports CNI network plugin. Because for kubelet network plugin, AKS cluster needs permission on route table as kubernetes cloud-provider manages rules.
465467
466-
You can create an AKS cluster using a system-assigned managed identity by running the following CLI command.
468+
You can create an AKS cluster using a system-assigned managed identity with CNI network plugin by running the following CLI command.
467469

468470
```azurecli
469471
az aks create -g $RG -n $AKSNAME -l $LOC \
470472
--node-count 3 \
471-
--network-plugin $PLUGIN \
473+
--network-plugin azure \
472474
--outbound-type userDefinedRouting \
473475
--vnet-subnet-id $SUBNETID \
474476
--api-server-authorized-ip-ranges $FWPUBLIC_IP
475477
```
476478

477-
> [!NOTE]
478-
> For creating and using your own VNet and route table where the resources are outside of the worker node resource group, the CLI will add the role assignment automatically. If you are using an ARM template or other client, you need to use the Principal ID of the cluster managed identity to perform a [role assignment.][add role to identity]
479-
>
480-
> If you are not using the CLI but using your own VNet or route table which are outside of the worker node resource group, it's recommended to use [user-assigned control plane identity][Create an AKS cluster with user-assigned identities]. For system-assigned control plane identity, we cannot get the identity ID before creating cluster, which causes delay for role assignment to take effect.
481-
482479
#### Create an AKS cluster with user-assigned identities
483480

484481
##### Create user-assigned managed identities
@@ -529,14 +526,17 @@ The output should resemble the following:
529526
}
530527
```
531528

529+
> [!NOTE]
530+
> For creating and using your own VNet and route table where the resources are outside of the worker node resource group, the CLI will add the role assignment automatically. If you are using an ARM template or other client, you need to use the Principal ID of the cluster managed identity to perform a [role assignment.][add role to identity]
531+
532532
##### Create an AKS cluster with user-assigned identities
533533

534534
Now you can use the following command to create your AKS cluster with your existing identities in the subnet. Provide the control plane identity resource ID via `assign-identity` and the kubelet managed identity via `assign-kubelet-identity`:
535535

536536
```azurecli
537537
az aks create -g $RG -n $AKSNAME -l $LOC \
538538
--node-count 3 \
539-
--network-plugin $PLUGIN \
539+
--network-plugin kubenet \
540540
--outbound-type userDefinedRouting \
541541
--vnet-subnet-id $SUBNETID \
542542
--api-server-authorized-ip-ranges $FWPUBLIC_IP
@@ -545,8 +545,6 @@ az aks create -g $RG -n $AKSNAME -l $LOC \
545545
--assign-kubelet-identity <kubelet-identity-resource-id>
546546
```
547547

548-
> [!NOTE]
549-
> For creating and using your own VNet and route table where the resources are outside of the worker node resource group, the CLI will add the role assignment automatically. If you are using an ARM template or other client, you need to use the Principal ID of the cluster managed identity to perform a [role assignment.][add role to identity]
550548

551549
### Enable developer access to the API server
552550

0 commit comments

Comments
 (0)