Updates from: 11/14/2022 02:06:15
Service Microsoft Docs article Related commit history on GitHub Change details
active-directory How To Install https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/active-directory/cloud-sync/how-to-install.md
Previously updated : 03/01/2022 Last updated : 11/11/2022 # Install the Azure AD Connect provisioning agent+ This article walks you through the installation process for the Azure Active Directory (Azure AD) Connect provisioning agent and how to initially configure it in the Azure portal. >[!IMPORTANT]
For more information and an example, see the following video.
> [!VIDEO https://www.microsoft.com/en-us/videoplayer/embed/RWK5mR] ## Group Managed Service Accounts
-A group Managed Service Account (gMSA) is a managed domain account that provides automatic password management, simplified service principal name (SPN) management, and the ability to delegate the management to other administrators. It also extends this functionality over multiple servers. Azure AD Connect cloud sync supports and recommends the use of a group Managed Service Account for running the agent. For more information on a group Managed Service Account, see [Group Managed Service Accounts](how-to-prerequisites.md#group-managed-service-accounts).
+A Group Managed Service Account (gMSA) is a managed domain account that provides automatic password management, simplified service principal name (SPN) management, and the ability to delegate the management to other administrators. It also extends this functionality over multiple servers. Azure AD Connect cloud sync supports and recommends the use of a Group Managed Service Account for running the agent. For more information on a Group Managed Service Account, see [Group Managed Service Accounts](how-to-prerequisites.md#group-managed-service-accounts).
### Upgrade an existing agent to use the gMSA
-To upgrade an existing agent to use the group Managed Service Account created during installation, update the agent service to the latest version by running AADConnectProvisioningAgent.msi. Now run through the installation wizard again and provide the credentials to create the account when prompted.
+To upgrade an existing agent to use the Group Managed Service Account created during installation, update the agent service to the latest version by running AADConnectProvisioningAgent.msi. Now run through the installation wizard again and provide the credentials to create the account when prompted.
## Install the agent
-To install the agent:
-
- 1. Sign in to the server you'll use with enterprise admin permissions.
- 2. Sign in to the Azure portal, and then go to **Azure Active Directory**.
- 3. On the menu on the left, select **Azure AD Connect**.
- 4. Select **Manage cloud sync**.
- [![Screenshot that shows manage cloud sync](media/how-to-install/new-install-1.png)](media/how-to-install/new-install-1.png#lightbox)</br>
- 5. At the top, click **Download agent**.
- [![Screenshot that the download agent](media/how-to-install/new-install-2.png)](media/how-to-install/new-install-2.png#lightbox)</br>
- 7. On the right, click **Accept terms and download**.
- [![Screenshot that accept and download](media/how-to-install/new-install-3.png)](media/how-to-install/new-install-3.png#lightbox)</br>
- 9. Once the agent has completed downloading, click **Open file**. This will start the installation.
- [![Screenshot that shows open file](media/how-to-install/new-install-4.png)](media/how-to-install/new-install-4.png#lightbox)</br>
- 10. On the **Microsoft Azure AD Connect Provisioning Agent Package** screen, accept the licensing terms, and select **Install**.
- [![Screenshot that shows install](media/how-to-install/new-install-5.png)](media/how-to-install/new-install-5.png#lightbox)</br>
- 11. After this operation finishes, the configuration wizard starts. Click **Next**.
- [![Screenshot that shows wizard](media/how-to-install/new-install-6.png)](media/how-to-install/new-install-6.png#lightbox)</br>
- 13. Sign in with your Azure AD global administrator account.
- 14. On the **Configure Service Account** screen, select either **Create gMSA**, or **Use custom gMSA**. If you allow the agent to create the account, it will be named **provAgentgMSA$**. If you specify **Use custom gMSA**, you're prompted to provide this account.
- [![Screenshot that shows create service account](media/how-to-install/new-install-7.png)](media/how-to-install/new-install-7.png#lightbox)</br>
- 15. Enter the domain administrator credentials to create the group Managed Service account that will be used to run the agent service. Select **Next**.
- ![Screenshot that shows the Create gMSA option.](media/how-to-install/install-12.png)</br>
- 16. On the **Connect Active Directory** screen, click **Next**. Your current domain has been added automatically. If you wish to add additional domains, enter them and select **Add Directory**. Then sign in with an administrator account from that domain.
- [![Screenshot that shows connecting to AD](media/how-to-install/new-install-8.png)](media/how-to-install/new-install-8.png#lightbox)</br>
- 17. Optionally, you can manage the preference of domain controllers the agent will use. To do this, click **Add Directory** and select the **Select domain controller priority** checkbox and then order the list of domain controllers. Select **OK**. Click **Next**.
- [![Screenshot that shows adding domain controller priority](media/how-to-install/new-install-10.png)](media/how-to-install/new-install-10.png#lightbox)</br>
- 18. On the **Agent installation** screen, confirm settings and the account that will be created and select **Confirm**.
- [![Screenshot that shows install confirmation](media/how-to-install/new-install-11.png)](media/how-to-install/new-install-11.png#lightbox)</br>
- 20. After this operation finishes, you should see **Your agent installation is complete.** Select **Exit**.
- 21. If you still see the initial **Microsoft Azure AD Connect Provisioning Agent Package** screen, select **Close**.
## Verify agent installation
-Agent verification occurs in the Azure portal and on the local server that's running the agent.
-
-### Azure portal agent verification
-To verify the agent is being seen by Azure:
-
- 1. Sign in to the Azure portal.
- 2. On the left, select **Azure Active Directory** > **Azure AD Connect**. In the center, select **Manage cloud sync**.
- ![Screenshot that shows the Azure portal.](media/how-to-install/install-6.png)</br>
- 3. On the **Azure AD Connect cloud sync** screen, select **Review all agents**.
- ![Screenshot that shows the Review all agents option.](media/how-to-install/install-7.png)</br>
- 4. On the **On-premises provisioning agents** screen, you see the agents you installed. Verify that the agent in question is there and is marked *active*.
- ![Screenshot that shows On-premises provisioning agents screen.](media/how-to-install/verify-1.png)</br>
-### On the local server
-To verify that the agent is running:
-
-1. Sign in to the server with an administrator account.
-2. Open **Services** by going to it or by selecting **Start** > **Run** > **Services.msc**.
-3. Under **Services**, make sure **Microsoft Azure AD Connect Agent Updater** and **Microsoft Azure AD Connect Provisioning Agent** are present. Also, ensure the status is *Running*.
- ![Screenshot that shows the Services screen.](media/how-to-install/troubleshoot-1.png)
>[!IMPORTANT] >The agent has been installed, but it must be configured and enabled before it will start synchronizing users. To configure a new agent, see [Create a new configuration for Azure AD Connect cloud sync](how-to-configure.md).
To use password writeback and enable the self-service password reset (SSPR) serv
For more information on using password writeback with Azure AD Connect cloud sync, see [Tutorial: Enable cloud sync self-service password reset writeback to an on-premises environment (preview)](../../active-directory/authentication/tutorial-enable-cloud-sync-sspr-writeback.md).
-## Installing against US govt cloud
-By default, the Azure Active Directory (Azure AD) Connect provisioning agent installs against the default Azure cloud environment. If you are installing the agent for use in the US government cloud do the following:
+## Installing against US government cloud
+
+By default, the Azure Active Directory (Azure AD) Connect provisioning agent installs against the default Azure cloud environment. If you're installing the agent for use in the US government, follow these steps:
-- In step #7 above, instead of click **Open file**, go to start run and navigate to the **AADConnectProvisioningAgentSetup.exe** file. In the run box, after the executable, enter **ENVIRONMENTNAME=AzureUSGovernment** and click **Ok**.
- [![Screenshot showing US govt cloud install](media/how-to-install/new-install-12.png)](media/how-to-install/new-install-12.png#lightbox)</br>
+- In step #7 above, instead of select **Open file**, go to start run and navigate to the **AADConnectProvisioningAgentSetup.exe** file. In the run box, after the executable, enter **ENVIRONMENTNAME=AzureUSGovernment** and select **Ok**.
+
+ [![Screenshot showing US government cloud install.](media/how-to-install/new-install-12.png)](media/how-to-install/new-install-12.png#lightbox)
## Password hash synchronization and FIPS with cloud sync+ If your server has been locked down according to Federal Information Processing Standard (FIPS), then MD5 is disabled.
-**To enable MD5 for password hash synchronization, perform the following steps:**
+
+To enable MD5 for password hash synchronization, perform the following steps:
1. Go to %programfiles%\Microsoft Azure AD Connect Provisioning Agent. 2. Open AADConnectProvisioningAgent.exe.config.
If your server has been locked down according to Federal Information Processing
For reference, this snippet is what it should look like:
-```
- <configuration>
- <runtime>
- <enforceFIPSPolicy enabled="false"/>
- </runtime>
- </configuration>
+```xml
+<configuration>
+ <runtime>
+ <enforceFIPSPolicy enabled="false"/>
+ </runtime>
+</configuration>
``` For information about security and FIPS, see [Azure AD password hash sync, encryption, and FIPS compliance](https://blogs.technet.microsoft.com/enterprisemobility/2014/06/28/aad-password-sync-encryption-and-fips-compliance/).
active-directory Tutorial Existing Forest https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/active-directory/cloud-sync/tutorial-existing-forest.md
Previously updated : 12/05/2019 Last updated : 11/11/2022
This tutorial walks you through adding cloud sync to an existing hybrid identity environment.
-![Create](media/tutorial-existing-forest/existing-forest-new-forest-2.png)
+![Diagram that shows the Azure AD Connect cloud sync flow.](media/tutorial-existing-forest/existing-forest-new-forest-2.png)
You can use the environment you create in this tutorial for testing or for getting more familiar with how a hybrid identity works.
-In this scenario, there is an existing forest synced using Azure AD Connect sync to an Azure AD tenant. And you have a new forest that you want to sync to the same Azure AD tenant. You will setup cloud sync for the new forest.
+In this scenario, there's an existing forest synced using Azure AD Connect sync to an Azure AD tenant. And you have a new forest that you want to sync to the same Azure AD tenant. You'll set up cloud sync for the new forest.
## Prerequisites ### In the Azure Active Directory admin center
In this scenario, there is an existing forest synced using Azure AD Connect sync
### In your on-premises environment
-1. Identify a domain-joined host server running Windows Server 2012 R2 or greater with minimum of 4 GB RAM and .NET 4.7.1+ runtime
+1. Identify a domain-joined host server running Windows Server 2012 R2 or greater with minimum of 4-GB RAM and .NET 4.7.1+ runtime
-2. If there is a firewall between your servers and Azure AD, configure the following items:
+2. If there's a firewall between your servers and Azure AD, configure the following items:
- Ensure that agents can make *outbound* requests to Azure AD over the following ports: | Port number | How it's used |
In this scenario, there is an existing forest synced using Azure AD Connect sync
If your firewall enforces rules according to the originating users, open these ports for traffic from Windows services that run as a network service. - If your firewall or proxy allows you to specify safe suffixes, then add connections to **\*.msappproxy.net** and **\*.servicebus.windows.net**. If not, allow access to the [Azure datacenter IP ranges](https://www.microsoft.com/download/details.aspx?id=41653), which are updated weekly. - Your agents need access to **login.windows.net** and **login.microsoftonline.com** for initial registration. Open your firewall for those URLs as well.
- - For certificate validation, unblock the following URLs: **mscrl.microsoft.com:80**, **crl.microsoft.com:80**, **ocsp.msocsp.com:80**, and **www\.microsoft.com:80**. Since these URLs are used for certificate validation with other Microsoft products you may already have these URLs unblocked.
+ - For certificate validation, unblock the following URLs: **mscrl.microsoft.com:80**, **crl.microsoft.com:80**, **ocsp.msocsp.com:80**, and **www\.microsoft.com:80**. Since these URLs are used for certificate validation with other Microsoft products, you may already have these URLs unblocked.
## Install the Azure AD Connect provisioning agent
-1. Sign in to the domain joined server. If you are using the [Basic AD and Azure environment](tutorial-basic-ad-azure.md) tutorial, it would be DC1.
-2. Sign in to the Azure portal using cloud-only global admin credentials.
-3. On the left, select **Azure Active Directory**, click **Azure AD Connect** and in the center select **Manage cloud sync**.</br>
-![Azure portal](media/how-to-install/install-6.png)</br>
-4. Click on "Download agent"
-5. Run the Azure AD Connect provisioning agent
-6. On the splash screen, **Accept** the licensing terms and click **Install**.</br>
-![Screenshot that shows the "Microsoft Azure AD Connect Provisioning Agent Package" splash screen.](media/how-to-install/install-1.png)</br>
-7. Once this operation completes, the configuration wizard will launch. Sign in with your Azure AD global administrator account. Note that if you have IE enhanced security enabled this will block the sign-in. If this is the case, close the installation, disable IE enhanced security in Server Manager, and click the **AAD Connect Provisioning Agent Wizard** to restart the installation.
-8. On the **Connect Active Directory** screen, click **Add directory** and then sign in with your Active Directory domain administrator account. The domain administrator account should not have password change requirements. In case the password expires or changes, you will need to re-configure the agent with the new credentials. This operation will add your on-premises directory. Click **Next**.</br>
-![Screenshot that shows the "Connect Active Directory" screen.](media/how-to-install/install-3a.png)</br>
+If you're using the [Basic AD and Azure environment](tutorial-basic-ad-azure.md) tutorial, it would be DC1. To install the agent, follow these steps:
-9. On the **Configuration complete** screen, click **Confirm**. This operation will register and restart the agent.</br>
-![Screenshot that shows the "Configuration complete" screen.](media/how-to-install/install-4a.png)</br>
- > [!NOTE]
- > The group managed service account (for example, CONTOSO\provAgentgMSA$) is created in the same Active Directory domain where the host server has joined.
-10. Once this operation completes you should see a notice: **Your agent configuration was successfully verified.** You can click **Exit**.</br>
-![Welcome screen](media/how-to-install/install-5.png)</br>
-11. If you still see the initial splash screen, click **Close**.
+## Verify agent installation
-## Verify agent installation
-Agent verification occurs in the Azure portal and on the local server that is running the agent.
+## Configure Azure AD Connect cloud sync
+ Use the following steps to configure provisioning
-### Azure portal agent verification
-To verify the agent is being seen by Azure follow these steps:
+1. Sign in to the Azure AD portal.
+2. Select **Azure Active Directory**
+3. Select **Azure AD Connect**
+4. Select **Manage cloud sync**
-1. Sign in to the Azure portal.
-2. On the left, select **Azure Active Directory**, click **Azure AD Connect** and in the center select **Manage cloud sync**.</br>
-![Azure portal](media/how-to-install/install-6.png)</br>
+ ![Screenshot showing "Manage cloud sync" link.](media/how-to-configure/manage-1.png)
-3. On the **Azure AD Connect cloud sync** screen click **Review all agents**.
-![Azure AD Provisioning](media/how-to-install/install-7.png)</br>
-
-4. On the **On-premises provisioning agents screen** you will see the agents you have installed. Verify that the agent in question is there and is marked **active**.
-![Provisioning agents](media/how-to-install/verify-1.png)</br>
+5. Select **New Configuration**
-### On the local server
-To verify that the agent is running follow these steps:
+ ![Screenshot of Azure AD Connect cloud sync screen with "New configuration" link highlighted.](media/tutorial-single-forest/configure-1.png)
-1. Log on to the server with an administrator account
-2. Open **Services** by either navigating to it or by going to Start/Run/Services.msc.
-3. Under **Services**, make sure **Microsoft Azure AD Connect Agent Updater** and **Microsoft Azure AD Connect Provisioning Agent** are present and the status is **Running**.
-![Services](media/how-to-install/troubleshoot-1.png)
+7. On the configuration screen, enter a **Notification email**, move the selector to **Enable** and select **Save**.
-## Configure Azure AD Connect cloud sync
- Use the following steps to configure provisioning
+ ![Screenshot of Configure screen with Notification email filled in and Enable selected.](media/how-to-configure/configure-2.png)
-1. Sign in to the Azure AD portal.
-2. Click **Azure Active Directory**
-3. Click **Azure AD Connect**
-4. Select **Manage cloud sync**
-![Screenshot showing "Manage cloud sync" link.](media/how-to-configure/manage-1.png)
-5. Click **New Configuration**
-![Screenshot of Azure AD Connect cloud sync screen with "New configuration" link highlighted.](media/tutorial-single-forest/configure-1.png)
-7. On the configuration screen, enter a **Notification email**, move the selector to **Enable** and click **Save**.
-![Screenshot of Configure screen with Notification email filled in and Enable selected.](media/how-to-configure/configure-2.png)
1. The configuration status should now be **Healthy**.
-![Screenshot of Azure AD Connect cloud sync screen showing Healthy status.](media/how-to-configure/manage-4.png)
+
+ ![Screenshot of Azure AD Connect cloud sync screen showing Healthy status.](media/how-to-configure/manage-4.png)
## Verify users are created and synchronization is occurring
-You will now verify that the users that you had in our on-premises directory have been synchronized and now exist in our Azure AD tenant. Be aware that this may take a few hours to complete. To verify users are synchronized do the following.
+
+You'll now verify that the users that you had in our on-premises directory have been synchronized and now exist in our Azure AD tenant. This process may take a few hours to complete. To verify users are synchronized, do the following:
1. Browse to the [Azure portal](https://portal.azure.com) and sign in with an account that has an Azure subscription. 2. On the left, select **Azure Active Directory** 3. Under **Manage**, select **Users**.
-4. Verify that you see the new users in our tenant</br>
+4. Verify that you see the new users in our tenant
## Test signing in with one of our users 1. Browse to [https://myapps.microsoft.com](https://myapps.microsoft.com)
-2. Sign in with a user account that was created in our new tenant. You will need to sign in using the following format: (user@domain.onmicrosoft.com). Use the same password that the user uses to sign in on-premises.</br>
- ![Verify](media/tutorial-single-forest/verify-1.png)</br>
+2. Sign in with a user account that was created in our new tenant. You'll need to sign in using the following format: (user@domain.onmicrosoft.com). Use the same password that the user uses to sign in on-premises.
+
+ ![Screenshot that shows the my apps portal with a signed in users.](media/tutorial-single-forest/verify-1.png)
You have now successfully set up a hybrid identity environment that you can use to test and familiarize yourself with what Azure has to offer.
active-directory Tutorial Pilot Aadc Aadccp https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/active-directory/cloud-sync/tutorial-pilot-aadc-aadccp.md
Previously updated : 03/22/2021 Last updated : 11/11/2022
This tutorial walks you through piloting cloud sync for a test Active Directory forest that is already synced using Azure Active Directory (Azure AD) Connect sync.
-![Create](media/tutorial-migrate-aadc-aadccp/diagram-2.png)
+![Diagram that shows the Azure AD Connect cloud sync flow.](media/tutorial-migrate-aadc-aadccp/diagram-2.png)
## Considerations
Before you try this tutorial, consider the following items:
1. Ensure that you're familiar with basics of cloud sync.
-2. Ensure that you're running Azure AD Connect sync version 1.4.32.0 or later and have configured the sync rules as documented. When piloting, you will be removing a test OU or group from Azure AD Connect sync scope. Moving objects out of scope leads to deletion of those objects in Azure AD. In case of user objects, the objects in Azure AD are soft-deleted and can be restored. In case of group objects, the objects in Azure AD are hard-deleted and cannot be restored. A new link type has been introduced in Azure AD Connect sync which will prevent the deletion in case of a piloting scenario.
+1. Ensure that you're running Azure AD Connect sync version 1.4.32.0 or later and have configured the sync rules as documented.
-3. Ensure that the objects in the pilot scope have ms-ds-consistencyGUID populated so cloud sync hard matches the objects.
+1. When piloting, you'll be removing a test OU or group from Azure AD Connect sync scope. Moving objects out of scope leads to deletion of those objects in Azure AD.
+
+ - User objects, the objects in Azure AD are soft-deleted and can be restored.
+ - Group objects, the objects in Azure AD are hard-deleted and can't be restored.
+
+ A new link type has been introduced in Azure AD Connect sync, which will prevent the deletion in a piloting scenario.
+
+1. Ensure that the objects in the pilot scope have ms-ds-consistencyGUID populated so cloud sync hard matches the objects.
> [!NOTE] > Azure AD Connect sync does not populate *ms-ds-consistencyGUID* by default for group objects.
-4. This is an advanced scenario. Ensure that you follow the steps documented in this tutorial precisely.
+1. This configuration is for advanced scenarios. Ensure that you follow the steps documented in this tutorial precisely.
## Prerequisites
As a minimum, you should have [Azure AD connect](https://www.microsoft.com/downl
## Stop the scheduler
-Azure AD Connect sync synchronizes changes occurring in your on-premises directory using a scheduler. In order to modify and add custom rules, you want to disable the scheduler so that synchronizations will not run while you are working on this. Use the following steps:
+Azure AD Connect sync synchronizes changes occurring in your on-premises directory using a scheduler. In order to modify and add custom rules, you want to disable the scheduler so that synchronizations won't run while you're working making the changes. To stop the scheduler, use the following steps:
1. On the server that is running Azure AD Connect sync open PowerShell with Administrative Privileges. 2. Run `Stop-ADSyncSyncCycle`. Hit Enter.
Azure AD Connect sync synchronizes changes occurring in your on-premises directo
## Create custom user inbound rule
- 1. Launch the synchronization editor from the application menu in desktop as shown below:</br>
- ![Synchronization Rule Editor Menu](media/tutorial-migrate-aadc-aadccp/user-8.png)</br>
+ 1. Launch the synchronization editor from the application menu in desktop as shown below:
+
+ ![Screenshot of the synchronization rule editor menu.](media/tutorial-migrate-aadc-aadccp/user-8.png)
+
+ 2. Select **Inbound** from the drop-down list for Direction and select **Add new rule**.
+
+ ![Screenshot that shows the "View and manage your synchronization rules" window with "Inbound" and the "Add new rule" button selected.](media/tutorial-migrate-aadc-aadccp/user-1.png)
- 2. Select **Inbound** from the drop-down list for Direction and click on **Add new rule**.
- ![Screenshot that shows the "View and manage your synchronization rules" window with "Inbound" and the "Add new rule" button selected.](media/tutorial-migrate-aadc-aadccp/user-1.png)</br>
+ 3. On the **Description** page, enter the following and select **Next**:
- 3. On the **Description** page, enter the following and click **Next**:
+ - **Name:** Give the rule a meaningful name
+ - **Description:** Add a meaningful description
+ - **Connected System:** Choose the AD connector that you're writing the custom sync rule for
+ - **Connected System Object Type:** User
+ - **Metaverse Object Type:** Person
+ - **Link Type:** Join
+ - **Precedence:** Provide a value that is unique in the system
+ - **Tag:** Leave this empty
- **Name:** Give the rule a meaningful name<br>
- **Description:** Add a meaningful description<br>
- **Connected System:** Choose the AD connector that you are writing the custom sync rule for<br>
- **Connected System Object Type:** User<br>
- **Metaverse Object Type:** Person<br>
- **Link Type:** Join<br>
- **Precedence:** Provide a value that is unique in the system<br>
- **Tag:** Leave this empty<br>
- ![Screenshot that shows the "Create inbound synchronization rule - Description" page with values entered.](media/tutorial-migrate-aadc-aadccp/user-2.png)</br>
+ ![Screenshot that shows the "Create inbound synchronization rule - Description" page with values entered.](media/tutorial-migrate-aadc-aadccp/user-2.png)
- 4. On the **Scoping filter** page, enter the OU or security group that you want the pilot based off. To filter on OU, add the OU portion of the distinguished name. This rule will be applied to all users who are in that OU. So, if DN ends with "OU=CPUsers,DC=contoso,DC=com, you would add this filter. Then click **Next**.
+ 4. On the **Scoping filter** page, enter the OU or security group that you want the pilot based off. To filter on OU, add the OU portion of the distinguished name. This rule will be applied to all users who are in that OU. So, if DN ends with "OU=CPUsers,DC=contoso,DC=com, you would add this filter. Then select **Next**.
|Rule|Attribute|Operator|Value| |--|-|-|--| |Scoping OU|DN|ENDSWITH|Distinguished name of the OU.| |Scoping group||ISMEMBEROF|Distinguished name of the security group.|
- ![Screenshot that shows the **Create inbound synchronization rule - Scoping filter** page with a scoping filter value entered.](media/tutorial-migrate-aadc-aadccp/user-3.png)</br>
+ ![Screenshot that shows the **Create inbound synchronization rule - Scoping filter** page with a scoping filter value entered.](media/tutorial-migrate-aadc-aadccp/user-3.png)
- 5. On the **Join** rules page, click **Next**.
- 6. On the **Transformations** page, add a Constant transformation: flow True to cloudNoFlow attribute. Click **Add**.
- ![Screenshot that shows the **Create inbound synchronization rule - Transformations** page with a **Constant transformation** flow added.](media/tutorial-migrate-aadc-aadccp/user-4.png)</br>
+ 5. On the **Join** rules page, select **Next**.
+ 6. On the **Transformations** page, add a Constant transformation: flow True to cloudNoFlow attribute. Select **Add**.
+
+ ![Screenshot that shows the **Create inbound synchronization rule - Transformations** page with a **Constant transformation** flow added.](media/tutorial-migrate-aadc-aadccp/user-4.png)
Same steps need to be followed for all object types (user, group and contact). Repeat steps per configured AD Connector / per AD forest. ## Create custom user outbound rule
- 1. Select **Outbound** from the drop-down list for Direction and click on **Add rule**.
- ![Screenshot that shows the **Outbound** Direction selected and the **Add new rule** button highlighted.](media/tutorial-migrate-aadc-aadccp/user-5.png)</br>
-
- 2. On the **Description** page, enter the following and click **Next**:
-
- **Name:** Give the rule a meaningful name<br>
- **Description:** Add a meaningful description<br>
- **Connected System:** Choose the Azure AD connector that you are writing the custom sync rule for<br>
- **Connected System Object Type:** User<br>
- **Metaverse Object Type:** Person<br>
- **Link Type:** JoinNoFlow<br>
- **Precedence:** Provide a value that is unique in the system<br>
- **Tag:** Leave this empty<br>
-
- ![Screenshot that shows the **Description** page with properties entered.](media/tutorial-migrate-aadc-aadccp/user-6.png)</br>
-
- 3. On the **Scoping filter** page, choose **cloudNoFlow** equal **True**. Then click **Next**.
- ![Custom rule](media/tutorial-migrate-aadc-aadccp/user-7.png)</br>
-
- 4. On the **Join** rules page, click **Next**.
- 5. On the **Transformations** page, click **Add**.
-
-Same steps need to be followed for all object types (user, group and contact).
-
-## Install the Azure AD Connect provisioning agent
-
-1. Sign in to the server you will use with enterprise admin permissions. If you are using the [Basic AD and Azure environment](tutorial-basic-ad-azure.md) tutorial it would be CP1.
+ 1. Select **Outbound** from the drop-down list for Direction and select **Add rule**.
-1. Download the Azure AD Connect cloud provisioning agent using the steps outlined [here](how-to-install.md#install-the-agent).
+ ![Screenshot that shows the **Outbound** Direction selected and the **Add new rule** button highlighted.](media/tutorial-migrate-aadc-aadccp/user-5.png)
-1. Run the Azure AD Connect cloud sync (AADConnectProvisioningAgent.Installer)
-1
-. On the splash screen, **Accept** the licensing terms and click **Install**.
+ 2. On the **Description** page, enter the following and select **Next**:
- ![Screenshot that shows the **Microsoft Azure A D Connect Provisioning Agent** splash screen.](media/how-to-install/install-1.png)</br>
+ - **Name:** Give the rule a meaningful name
+ - **Description:** Add a meaningful description
+ - **Connected System:** Choose the Azure AD connector that you're writing the custom sync rule for
+ - **Connected System Object Type:** User
+ - **Metaverse Object Type:** Person
+ - **Link Type:** JoinNoFlow
+ - **Precedence:** Provide a value that is unique in the system<br>
+ - **Tag:** Leave this empty
-1. Once this operation completes, the configuration wizard will launch. Sign in with your Azure AD global administrator account.
+ ![Screenshot that shows the **Description** page with properties entered.](media/tutorial-migrate-aadc-aadccp/user-6.png)
-1. On the **Connect Active Directory** screen, click **Add directory** and then sign in with your Active Directory administrator account. This operation will add your on-premises directory. Click **Next**.
+ 3. On the **Scoping filter** page, choose **cloudNoFlow** equal **True**. Then select **Next**.
- ![Screenshot that shows the **Connect Active Directory** screen with a directory value entered.](media/how-to-install/install-3a.png)
+ ![Screenshot that shows a custom rule.](media/tutorial-migrate-aadc-aadccp/user-7.png)
-1. On the **Configuration complete** screen, click **Confirm**. This operation will register and restart the agent.
+ 4. On the **Join** rules page, select **Next**.
+ 5. On the **Transformations** page, select **Add**.
- ![Screenshot that shows the **Configuration complete** screen with the **Confirm** button selected.](media/how-to-install/install-4a.png)
+Same steps need to be followed for all object types (user, group and contact).
-1. Once this operation completes you should see a notice **Your was successfully verified.** You can select **Exit**.
+## Install the Azure AD Connect provisioning agent
- ![Welcome screen](media/how-to-install/install-5.png)</br>
+If you're using the [Basic AD and Azure environment](tutorial-basic-ad-azure.md) tutorial, it would be CP1. To install the agent, follow these steps:
-1. If you still see the initial splash screen, click **Close**.
## Verify agent installation
-Agent verification occurs in the Azure portal and on the local server that is running the agent.
-### Azure portal agent verification
-
-To verify the agent is being seen by Azure follow these steps:
+## Configure Azure AD Connect cloud sync
-1. Sign in to the Azure portal.
-2. On the left, select **Azure Active Directory**, click **Azure AD Connect** and in the center select **Manage cloud sync**.</br>
-![Azure portal](media/how-to-install/install-6.png)</br>
+Use the following steps to configure provisioning:
-3. On the **Azure AD Connect cloud sync** screen click **Review all agents**.
-![Azure AD Provisioning](media/how-to-install/install-7.png)</br>
+1. Sign-in to the Azure AD portal.
+2. Select **Azure Active Directory**
+3. Select **Azure AD Connect**
+4. Select **Manage cloud sync**
-4. On the **On-premises provisioning agents screen** you will see the agents you have installed. Verify that the agent in question is there and is marked **Disabled**. The agent is disabled by default
-![Provisioning agents](media/how-to-install/verify-1.png)</br>
+ ![Screenshot showing "Manage cloud sync" link.](media/how-to-configure/manage-1.png)
-### On the local server
+5. Select **New Configuration**
-To verify that the agent is running follow these steps:
+ ![Screenshot of Azure AD Connect cloud sync screen with "New configuration" link highlighted.](media/tutorial-single-forest/configure-1.png)
-1. Log on to the server with an administrator account
-2. Open **Services** by either navigating to it or by going to Start/Run/Services.msc.
-3. Under **Services** make sure **Microsoft Azure AD Connect Agent Updater** and **Microsoft Azure AD Connect Provisioning Agent** are there and the status is **Running**.
+6. On the configuration screen, enter a **Notification email**, move the selector to **Enable** and select **Save**.
- ![Services](media/how-to-install/troubleshoot-1.png)
+ ![Screenshot of Configure screen with Notification email filled in and Enable selected.](media/tutorial-single-forest/configure-2.png)
-## Configure Azure AD Connect cloud sync
+7. Under **Configure**, select **All users** to change the scope of the configuration rule.
-Use the following steps to configure provisioning:
+ ![Screenshot of Configure screen with "All users" highlighted next to "Scope users".](media/how-to-configure/scope-2.png)
+
+8. On the right, change the scope to include the specific OU you created "OU=CPUsers,DC=contoso,DC=com".
-1. Sign-in to the Azure AD portal.
-2. Click **Azure Active Directory**
-3. Click **Azure AD Connect**
-4. Select **Manage cloud sync**
- ![Screenshot showing "Manage cloud sync" link.](media/how-to-configure/manage-1.png)</br>
-5. Click **New Configuration**
- ![Screenshot of Azure AD Connect cloud sync screen with "New configuration" link highlighted.](media/tutorial-single-forest/configure-1.png)</br>
-6. On the configuration screen, enter a **Notification email**, move the selector to **Enable** and click **Save**.
- ![Screenshot of Configure screen with Notification email filled in and Enable selected.](media/tutorial-single-forest/configure-2.png)</br>
-7. Under **Configure**, select **All users** to change the scope of the configuration rule.
- ![Screenshot of Configure screen with "All users" highlighted next to "Scope users".](media/how-to-configure/scope-2.png)</br>
-8. On the right, change the scope to include the specific OU you just created "OU=CPUsers,DC=contoso,DC=com".
- ![Screenshot of the Scope users screen highlighting the scope changed to the OU you created.](media/tutorial-existing-forest/scope-2.png)</br>
-9. Click **Done** and **Save**.
+ ![Screenshot of the Scope users screen highlighting the scope changed to the OU you created.](media/tutorial-existing-forest/scope-2.png)
+
+9. Select **Done** and **Save**.
10. The scope should now be set to one organizational unit.
- ![Screenshot of Configure screen with "1 organizational unit" highlighted next to "Scope users".](media/tutorial-existing-forest/scope-3.png)</br>
+
+ ![Screenshot of Configure screen with "1 organizational unit" highlighted next to "Scope users".](media/tutorial-existing-forest/scope-3.png)
## Verify users are provisioned by cloud sync
-You will now verify that the users that you had in our on-premises directory have been synchronized and now exist in out Azure AD tenant. Be aware that this may take a few hours to complete. To verify users are provisioning by cloud sync, follow these steps:
+You'll now verify that the users that you had in our on-premises directory have been synchronized and now exist in out Azure AD tenant. This process may take a few hours to complete. To verify users are provisioning by cloud sync, follow these steps:
1. Browse to the [Azure portal](https://portal.azure.com) and sign in with an account that has an Azure subscription. 2. On the left, select **Azure Active Directory**
-3. Click on **Azure AD Connect**
-4. Click on **Manage cloud sync**
-5. Click on **Logs** button
+3. Select on **Azure AD Connect**
+4. Select on **Manage cloud sync**
+5. Select on **Logs** button
6. Search for a username to confirm that the user is provisioned by cloud sync Additionally, you can verify that the user and group exist in Azure AD. ## Start the scheduler
-Azure AD Connect sync synchronizes changes occurring in your on-premises directory using a scheduler. Now that you have modified the rules, you can re-start the scheduler. Use the following steps:
+Azure AD Connect sync synchronizes changes occurring in your on-premises directory using a scheduler. Now that you've modified the rules, you can restart the scheduler. Use the following steps:
1. On the server that is running Azure AD Connect sync open PowerShell with Administrative Privileges 2. Run `Set-ADSyncScheduler -SyncCycleEnabled $true`.
Azure AD Connect sync synchronizes changes occurring in your on-premises directo
> [!NOTE] > If you are running your own custom scheduler for Azure AD Connect sync, then please enable the scheduler.
-Once the scheduler is enabled, Azure AD Connect will stop exporting any changes on objects with `cloudNoFlow=true` in the metaverse, unless any reference attribute (such as `manager`) is being updated. In case there is any reference attribute update on the object, Azure AD Connect will ignore the `cloudNoFlow` signal and export all updates on the object.
+Once the scheduler is enabled, Azure AD Connect will stop exporting any changes on objects with `cloudNoFlow=true` in the metaverse, unless any reference attribute (such as `manager`) is being updated. In case there's any reference attribute update on the object, Azure AD Connect will ignore the `cloudNoFlow` signal and export all updates on the object.
## Something went wrong
-In case the pilot does not work as expected, you can go back to the Azure AD Connect sync setup by following the steps below:
+In case the pilot doesn't work as expected, you can go back to the Azure AD Connect sync setup by following the steps below:
1. Disable provisioning configuration in the Azure portal. 2. Disable all the custom sync rules created for Cloud Provisioning using the Sync Rule Editor tool. Disabling should cause full sync on all the connectors.
active-directory Tutorial Single Forest https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/active-directory/cloud-sync/tutorial-single-forest.md
Previously updated : 11/10/2022 Last updated : 11/11/2022
This tutorial walks you through creating a hybrid identity environment using Azure Active Directory (Azure AD) Connect cloud sync.
-![Diagram that shows the Azure AD Connect cloud sync flow](media/tutorial-single-forest/diagram-2.png)
+![Diagram that shows the Azure AD Connect cloud sync flow.](media/tutorial-single-forest/diagram-2.png)
You can use the environment you create in this tutorial for testing or for getting more familiar with cloud sync.
You can use the environment you create in this tutorial for testing or for getti
## Install the Azure AD Connect provisioning agent
-1. Sign in to the domain joined server. If you're using the [Basic AD and Azure environment](tutorial-basic-ad-azure.md) tutorial, it would be DC1.
-
-1. Sign in to the Azure portal using cloud-only global admin credentials.
-
-1. On the left, select **Azure Active Directory**.
-
-1. Select **Azure AD Connect**, and in the center select **Manage Azure AD cloud sync**.
-
- ![Screenshot that shows how to download the Azure AD cloud sync.](media/how-to-install/install-6.png)
-
-1. Select **Download agent**, and select **Accept terms & download**.
-
- [![Screenshot that shows how to accept the terms and start the download of Azure AD cloud sync.](media/how-to-install/install-6a.png)](media/how-to-install/install-6a.png#lightbox)
-
-1. Run the **Azure AD Connect Provisioning Agent Package** AADConnectProvisioningAgentSetup.exe in your downloads folder.
-
-1. On the splash screen, select **I agree to the license and conditions**, and select **Install**.
-
- ![Screenshot that shows the "Microsoft Azure AD Connect Provisioning Agent Package" splash screen.](media/how-to-install/install-1.png)
-
-1. Once this operation completes, the configuration wizard will launch. Sign in with your Azure AD global administrator account. If you have Internet Explorer enhanced security enabled, it will block the sign-in. If so, close the installation, [disable Internet Explorer enhanced security](/troubleshoot/developer/browsers/security-privacy/enhanced-security-configuration-faq), and restart the **Azure AD Connect Provisioning Agent Package** installation.
-
-1. On the **Connect Active Directory** screen, select **Authenticate** and then sign in with your Active Directory domain administrator account. NOTE: The domain administrator account shouldn't have password change requirements. If the password expires or changes, you'll need to reconfigure the agent with the new credentials.
-
- ![Screenshot of the "Connect Active Directory" screen.](media/how-to-install/install-3.png)
-
-1. On the **Configure Service Account screen**, select **Create gMSA** and enter the Active Directory domain administrator credentials to create the group Managed Service Account. This account will be used to run the agent service. To continue, select **Next**.
-
- [![Screenshot that shows create service account.](media/how-to-install/new-install-7.png)](media/how-to-install/new-install-7.png#lightbox)
-
-1. On the **Connect Active Directory** screen, select **Next**. Your current domain has been added automatically.
-
- [![Screenshot that shows connecting to the Active Directory.](media/how-to-install/new-install-8.png)](media/how-to-install/new-install-8.png#lightbox)
-
-1. On the **Configuration complete** screen, select **Confirm**. This operation will register and restart the agent.
-
- ![Screenshot that shows the "Configuration complete" screen.](media/how-to-install/install-4a.png)
-
-1. Once this operation completes, you should see a notice: **Your agent configuration was successfully verified.** You can select **Exit**.
-
- ![Screenshot that shows the "configuration complete" screen.](media/how-to-install/install-5.png)
-
-1. If you still get the initial splash screen, select **Close**.
+If you're using the [Basic AD and Azure environment](tutorial-basic-ad-azure.md) tutorial, it would be DC1. To install the agent, follow these steps:
## Verify agent installation
-Agent verification occurs in the Azure portal and on the local server that is running the agent.
-
-### Azure portal agent verification
-
-To verify the agent is being registered by Azure AD, follow these steps:
-
-1. Sign in to the Azure portal.
-1. On the left, select **Azure Active Directory**, select **Azure AD Connect** and in the center select **Manage Azure AD cloud sync**.
-
- ![Screenshot that shows how to manage the Azure AD could sync.](media/how-to-install/install-6.png)
-
-1. On the **Azure AD Connect cloud sync** screen, select
-**Review all agents**.
-
- [![Screenshot that shows the Azure AD provisioning agents.](media/how-to-install/install-7.png)](media/how-to-install/install-7.png#lightbox)
-
-1. On the **On-premises provisioning agents screen**, you'll see the agents you've installed. Verify that the agent in question is there and is marked **active**.
-
- [![Screenshot that shows the status of a provisioning agent.](media/how-to-install/verify-1.png)](media/how-to-install/verify-1.png#lightbox)
-
-### On the local server
-
-To verify that the agent is running, follow these steps:
-
-1. Log on to the server with an administrator account
-
-1. Open **Services** by either navigating to it or by going to Start/Run/Services.msc.
-
-1. Under **Services**, make sure **Microsoft Azure AD Connect Agent Updater** and **Microsoft Azure AD Connect Provisioning Agent** are present and the status is **Running**.
-
- [![Screenshot that shows the Windows services.](media/how-to-install/troubleshoot-1.png)](media/how-to-install/troubleshoot-1.png#lightbox)
## Configure Azure AD Connect cloud sync
active-directory Directory Delete Howto https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/active-directory/enterprise-users/directory-delete-howto.md
If you have an active or canceled Azure subscription associated with your Azure
If you have a free trial or pay-as-you-go subscription, you don't have to wait 90 days for the subscription to be automatically deleted. You can delete your subscription three days after you cancel it, when the **Delete subscription** option becomes available. For details, read through [Delete free trial or pay-as-you-go subscriptions](../../cost-management-billing/manage/cancel-azure-subscription.md#delete-subscriptions).
-All other subscription types are deleted only through the [subscription cancellation](../../cost-management-billing/manage/cancel-azure-subscription.md#cancel-subscription-in-the-azure-portal) process. In other words, you can't delete a subscription directly unless it's a free trial or pay-as-you-go subscription. However, after you cancel a subscription, you can create an [Azure support request](https://go.microsoft.com/fwlink/?linkid=2083458) and ask to have the subscription deleted immediately.
+All other subscription types are deleted only through the [subscription cancellation](../../cost-management-billing/manage/cancel-azure-subscription.md#cancel-a-subscription-in-the-azure-portal) process. In other words, you can't delete a subscription directly unless it's a free trial or pay-as-you-go subscription. However, after you cancel a subscription, you can create an [Azure support request](https://go.microsoft.com/fwlink/?linkid=2083458) and ask to have the subscription deleted immediately.
Alternatively, you can move the Azure subscription to another Azure AD tenant account. When you transfer billing ownership of your subscription to an account in another Azure AD tenant, you can move the subscription to the new account's tenant. Performing a **Switch Directory** action on the subscription wouldn't help, because the billing would still be aligned with the Azure AD tenant that was used to sign up for the subscription. For more information, review [Transfer a subscription to another Azure AD tenant account](../../cost-management-billing/manage/billing-subscription-transfer.md#transfer-a-subscription-to-another-azure-ad-tenant-account).
aks Deploy Marketplace https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/aks/deploy-marketplace.md
az provider register --namespace Microsoft.KubernetesConfiguration --wait
## Select and deploy a Kubernetes offer
-1. In the [Azure portal](https://ms.portal.azure.com/), search for **Marketplace** on the top search bar. In the results, under **Services**, select **Marketplace**.
+1. In the [Azure portal](https://portal.azure.com/), search for **Marketplace** on the top search bar. In the results, under **Services**, select **Marketplace**.
1. You can search for an offer or publisher directly by name, or you can browse all offers. To find Kubernetes application offers, use the **Product Type** filter for **Azure Containers**.
aks Operator Best Practices Run At Scale https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/aks/operator-best-practices-run-at-scale.md
To increase the node limit beyond 1000, you must have the following pre-requisit
[Managed NAT Gateway - Azure Kubernetes Service]: nat-gateway.md [Configure Azure CNI networking in Azure Kubernetes Service (AKS)]: configure-azure-cni.md#dynamic-allocation-of-ips-and-enhanced-subnet-support [max surge]: upgrade-cluster.md?tabs=azure-cli#customize-node-surge-upgrade
-[Azure Portal]: https://ms.portal.azure.com/#create/Microsoft.Support/Parameters/%7B%0D%0A%09%22subId%22%3A+%22%22%2C%0D%0A%09%22pesId%22%3A+%225a3a423f-8667-9095-1770-0a554a934512%22%2C%0D%0A%09%22supportTopicId%22%3A+%2280ea0df7-5108-8e37-2b0e-9737517f0b96%22%2C%0D%0A%09%22contextInfo%22%3A+%22AksLabelDeprecationMarch22%22%2C%0D%0A%09%22caller%22%3A+%22Microsoft_Azure_ContainerService+%2B+AksLabelDeprecationMarch22%22%2C%0D%0A%09%22severity%22%3A+%223%22%0D%0A%7D
+[Azure Portal]: https://portal.azure.com/#create/Microsoft.Support/Parameters/%7B%0D%0A%09%22subId%22%3A+%22%22%2C%0D%0A%09%22pesId%22%3A+%225a3a423f-8667-9095-1770-0a554a934512%22%2C%0D%0A%09%22supportTopicId%22%3A+%2280ea0df7-5108-8e37-2b0e-9737517f0b96%22%2C%0D%0A%09%22contextInfo%22%3A+%22AksLabelDeprecationMarch22%22%2C%0D%0A%09%22caller%22%3A+%22Microsoft_Azure_ContainerService+%2B+AksLabelDeprecationMarch22%22%2C%0D%0A%09%22severity%22%3A+%223%22%0D%0A%7D
[uptime SLA]: uptime-sla.md <!-- LINKS - Internal -->
app-service Quickstart Wordpress https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/app-service/quickstart-wordpress.md
To complete this quickstart, you need an Azure account with an active subscripti
## Create WordPress site using Azure portal
-1. To start creating the WordPress site, browse to [https://ms.portal.azure.com/#create/WordPress.WordPress](https://ms.portal.azure.com/#create/WordPress.WordPress).
+1. To start creating the WordPress site, browse to [https://portal.azure.com/#create/WordPress.WordPress](https://portal.azure.com/#create/WordPress.WordPress).
:::image type="content" source="./media/quickstart-wordpress/01-portal-create-wordpress-on-app-service.png?text=WordPress from Azure Marketplace" alt-text="Screenshot of Create a WordPress site.":::
azure-arc Concept Log Analytics Extension Deployment https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/azure-arc/servers/concept-log-analytics-extension-deployment.md
This method supports managing the installation, management, and removal of VM ex
### Use Azure Policy
-You can use Azure Policy to deploy the Azure Monitor agent VM extension at-scale to machines in your environment, and maintain configuration compliance. This is accomplished by using either the [**Configure Linux Arc-enabled machines to run Azure Monitor Agent**](https://ms.portal.azure.com/#view/Microsoft_Azure_Policy/PolicyDetailBlade/definitionId/%2Fproviders%2FMicrosoft.Authorization%2FpolicyDefinitions%2F845857af-0333-4c5d-bbbc-6076697da122) or the [**Configure Windows Arc-enabled machines to run Azure Monitor Agent**](https://ms.portal.azure.com/#view/Microsoft_Azure_Policy/PolicyDetailBlade/definitionId/%2Fproviders%2FMicrosoft.Authorization%2FpolicyDefinitions%2F94f686d6-9a24-4e19-91f1-de937dc171a4) policy definition.
+You can use Azure Policy to deploy the Azure Monitor agent VM extension at-scale to machines in your environment, and maintain configuration compliance. This is accomplished by using either the [**Configure Linux Arc-enabled machines to run Azure Monitor Agent**](https://portal.azure.com/#view/Microsoft_Azure_Policy/PolicyDetailBlade/definitionId/%2Fproviders%2FMicrosoft.Authorization%2FpolicyDefinitions%2F845857af-0333-4c5d-bbbc-6076697da122) or the [**Configure Windows Arc-enabled machines to run Azure Monitor Agent**](https://portal.azure.com/#view/Microsoft_Azure_Policy/PolicyDetailBlade/definitionId/%2Fproviders%2FMicrosoft.Authorization%2FpolicyDefinitions%2F94f686d6-9a24-4e19-91f1-de937dc171a4) policy definition.
Azure Policy includes several prebuilt definitions related to Azure Monitor. For a complete list of the built-in policies in the **Monitoring** category, see [Azure Policy built-in definitions for Azure Monitor](../../azure-monitor/policy-reference.md).
azure-maps How To Dev Guide Csharp Sdk https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/azure-maps/how-to-dev-guide-csharp-sdk.md
description: How to develop applications that incorporate Azure Maps using the C# SDK Developers Guide. Previously updated : 10/31/2021 Last updated : 11/11/2021
# C# REST SDK Developers Guide
-The Azure Maps C# SDK supports all of the functionality provided in the [Azure Maps Rest API][Rest API], like searching for an address, routing between different coordinates, and getting the geo-location of a specific IP address. This article will help you get started building location-aware applications that incorporate the power of Azure Maps.
+The Azure Maps C# SDK supports functionality available in the [Azure Maps Rest API][Rest API], like searching for an address, routing between different coordinates, and getting the geo-location of a specific IP address. This article introduces the C# REST SDK with examples to help you get started building location-aware applications in C# that incorporate the power of Azure Maps.
> [!NOTE] > Azure Maps C# SDK supports any .NET version that is compatible with [.NET standard 2.0][.NET standard]. For an interactive table, seeΓÇ»[.NET Standard versions][.NET Standard versions].
dotnet add package Azure.Maps.Geolocation --prerelease
| [Rendering][rendering readme]| [Azure.Maps.Rendering][rendering package]|[rendering sample][rendering sample] | | [Geolocation][geolocation readme]|[Azure.Maps.Geolocation][geolocation package]|[geolocation sample][geolocation sample]|
+## Create and authenticate a MapsSearchClient
+
+The client object used to access the Azure Maps Search APIs require either an `AzureKeyCredential` object to authenticate when using an Azure Maps subscription key or a `TokenCredential` object with the Azure Maps client ID when authenticating using Azure Active Directory (Azure AD). For more information on authentication, see [Authentication with Azure Maps][authentication].
+
+### Using an Azure AD credential
+
+You can authenticate with Azure AD using the [Azure Identity library][Identity library .NET]. To use the [DefaultAzureCredential][defaultazurecredential.NET] provider, you'll need to install the Azure Identity client library for .NET:
+
+```powershell
+dotnet add package Azure.Identity
+```
+
+You'll need to register the new Azure AD application and grant access to Azure Maps by assigning the required role to your service principal. For more information, see [Host a daemon on non-Azure resources][Host daemon]. During this process you'll get an Application (client) ID, a Directory (tenant) ID, and a client secret. Copy these values and store them in a secure place. You'll need them in the following steps.
+
+Set the values of the Application (client) ID, Directory (tenant) ID, and client secret of your Azure AD application, and the map resourceΓÇÖs client ID as environment variables:
+
+| Environment Variable | Description |
+|-||
+| AZURE_CLIENT_ID | Application (client) ID in your registered application |
+| AZURE_CLIENT_SECRET | The value of the client secret in your registered application |
+| AZURE_TENANT_ID | Directory (tenant) ID in your registered application |
+| MAPS_CLIENT_ID | The client ID in your Azure Map resource |
+
+Now you can create environment variables in PowerShell to store these values:
+
+```powershell
+$Env:AZURE_CLIENT_ID="Application (client) ID"
+$Env:AZURE_CLIENT_SECRET="your client secret"
+$Env:AZURE_TENANT_ID="your Directory (tenant) ID"
+$Env:MAPS_CLIENT_ID="your Azure Maps client ID"
+```
+
+After setting up the environment variables, you can use them in your program to instantiate the `AzureMapsSearch` client:
+
+```csharp
+using System;
+using Azure.Identity;
+using Azure.Maps.Search;
+
+var credential = new DefaultAzureCredential();
+var clientId = Environment.GetEnvironmentVariable("MAPS_CLIENT_ID");
+var client = new MapsSearchClient(credential, clientId);
+
+```
+
+> [!IMPORTANT]
+> The other environment variables created above, while not used in the code sample here, are required by `DefaultAzureCredential()`. If you do not set these environment variables correctly, using the same naming conventions, you will get run-time errors. For example, if your `AZURE_CLIENT_ID` is missing or invalid you will get an `InvalidAuthenticationTokenTenant` error.
+
+### Using a subscription key credential
+
+You can authenticate with your Azure Maps subscription key. Your subscription key can be found in the **Authentication** section in the Azure Maps account as shown in the following screenshot:
++
+Now you can create environment variables in PowerShell to store the subscription key:
+
+```powershell
+$Env:SUBSCRIPTION_KEY="your subscription key"
+```
+
+Once your environment variable is created, you can access it in your code:
+
+```csharp
+using System;
+using Azure;
+using Azure.Maps.Search;
+
+// Use Azure Maps subscription key authentication
+var subscriptionKey = Environment.GetEnvironmentVariable("SUBSCRIPTION_KEY") ?? string.Empty;
+var credential = new AzureKeyCredential(subscriptionKey);
+var client = new MapsSearchClient(credential);
+```
+ ### Fuzzy search an entity The following code snippet demonstrates how, in a simple console application, to import the `Azure.Maps.Search` package and perform a fuzzy search onΓÇ£StarbucksΓÇ¥ near Seattle. In `Program.cs`: ```csharp
+using System;
using Azure; using Azure.Core.GeoJson; using Azure.Maps.Search; using Azure.Maps.Search.Models; // Use Azure Maps subscription key authentication
-var credential = new AzureKeyCredential("Azure_Maps_Subscription_key");
+var subscriptionKey = Environment.GetEnvironmentVariable("SUBSCRIPTION_KEY") ?? string.Empty;
+var credential = new AzureKeyCredential(subscriptionKey);
var client = new MapsSearchClient(credential); SearchAddressResult searchResult = client.FuzzySearch(
foreach (var result in searchResult.Results)
} ```
-In the above code snippet, you create a `MapsSearchClient` object using your Azure credentials, then use that Search Client's [FuzzySearch][FuzzySearch] method passing in the point of interest (POI) name "_Starbucks_" and coordinates _GeoPosition(-122.31, 47.61)_. This all gets wrapped up by the SDK and sent to the Azure Maps REST endpoints. When the search results are returned, they're written out to the screen using `Console.WriteLine`.
+The above code snippet demonstrates how to create a `MapsSearchClient` object using your Azure credentials, then uses its [FuzzySearch][FuzzySearch] method, passing in the point of interest (POI) name "_Starbucks_" and coordinates _GeoPosition(-122.31, 47.61)_. This all gets wrapped up by the SDK and sent to the Azure Maps REST endpoints. When the search results are returned, they're written out to the screen using `Console.WriteLine`.
The following libraries are used:
Call the `SearchAddress` method to get the coordinate of an address. Modify the
```csharp // Use Azure Maps subscription key authentication
-var credential = new AzureKeyCredential("Azure_Maps_Subscription_key");
-var client = new MapsSearchClient(credential);
+var subscriptionKey = Environment.GetEnvironmentVariable("SUBSCRIPTION_KEY") ?? string.Empty;
+var credential = new AzureKeyCredential(subscriptionKey);
+var client = new MapsSearchClient(credential);
SearchAddressResult searchResult = client.SearchAddress( "1301 Alaskan Way, Seattle, WA 98101, US");
printReverseBatchAddresses(newOperationResult);
The complete code for reverse address batch search with operation ID: ```csharp
+using system;
using Azure; using Azure.Core.GeoJson; using Azure.Maps.Search; using Azure.Maps.Search.Models; // Use Azure Maps subscription key authentication
-var credential = new AzureKeyCredential("Azure_Maps_Subscription_key");
-var client = new MapsSearchClient(credential);
+var subscriptionKey = Environment.GetEnvironmentVariable("SUBSCRIPTION_KEY") ?? string.Empty;
+var credential = new AzureKeyCredential(subscriptionKey);
+var client = new MapsSearchClient(credential);
var queries = new List<ReverseSearchAddressQuery>() {
The [Azure.Maps Namespace][Azure.Maps Namespace] in the .NET documentation.
[geolocation sample]: https://github.com/Azure/azure-sdk-for-net/tree/main/sdk/maps/Azure.Maps.Geolocation/samples [FuzzySearch]: /dotnet/api/azure.maps.search.mapssearchclient.fuzzysearch [Azure.Maps Namespace]: /dotnet/api/azure.maps
+[search-api]: /dotnet/api/azure.maps.search
+[Identity library .NET]: /dotnet/api/overview/azure/identity-readme?view=azure-dotnet
+[defaultazurecredential.NET]: /dotnet/api/overview/azure/identity-readme?view=azure-dotnet#defaultazurecredential
+[NuGet]: https://www.nuget.org/
azure-maps Rest Sdk Developer Guide https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/azure-maps/rest-sdk-developer-guide.md
Azure Maps Python SDK supports Python version 3.7 or later. Check theΓÇ»[Azure S
Azure Maps JavaScript/TypeScript SDK supports LTS versions of [Node.js][Node.js] including versions in Active status and Maintenance status.
-| Service Name  | NPM package  | Samples  |
+| Service Name  | npm package  | Samples  |
||-|--| | [Search][js search readme] | [@azure/maps-search][js search package] | [search samples][js search sample] |
-| [Route][js route readme] | [@azure/maps-route][js route package] | [route samples][js route sample] |
+| [Route][js route readme] | [@azure-rest/maps-route][js route package] | [route samples][js route sample] |
<!--For more information, see the [JavaScript/TypeScript SDK Developers Guide](how-to-dev-guide-js-sdk.md).-->
Azure Maps Java SDK supports [Java 8][Java 8] or above.
[js route package]: https://www.npmjs.com/package/@azure-rest/maps-route [js route sample]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/maps/maps-route-rest/samples/v1-beta
+[js route readme]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/maps/maps-route-rest/README.md
+[js route package]: https://www.npmjs.com/package/@azure-rest/maps-route
+[js route sample]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/maps/maps-route-rest/samples/v1-beta
+ <!-- Java SDK Developers Guide > [Java 8]: https://www.java.com/en/download/java8_update.jsp [java search package]: https://repo1.maven.org/maven2/com/azure/azure-maps-search
azure-monitor Java In Process Agent https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/azure-monitor/app/java-in-process-agent.md
Title: Azure Monitor Application Insights Java description: Application performance monitoring for Java applications running in any environment without requiring code modification. Distributed tracing and application map. Previously updated : 07/22/2022 Last updated : 11/12/2022 ms.devlang: java
This section shows you how to download the auto-instrumentation jar file.
#### Download the jar file
-Download the [applicationinsights-agent-3.4.3.jar](https://github.com/microsoft/ApplicationInsights-Java/releases/download/3.4.3/applicationinsights-agent-3.4.3.jar) file.
+Download the [applicationinsights-agent-3.4.4.jar](https://github.com/microsoft/ApplicationInsights-Java/releases/download/3.4.4/applicationinsights-agent-3.4.4.jar) file.
> [!WARNING] >
Download the [applicationinsights-agent-3.4.3.jar](https://github.com/microsoft/
#### Point the JVM to the jar file
-Add `-javaagent:"path/to/applicationinsights-agent-3.4.3.jar"` to your application's JVM args.
+Add `-javaagent:"path/to/applicationinsights-agent-3.4.4.jar"` to your application's JVM args.
> [!TIP] > For help with configuring your application's JVM args, see [Tips for updating your JVM args](./java-standalone-arguments.md).
Add `-javaagent:"path/to/applicationinsights-agent-3.4.3.jar"` to your applicati
APPLICATIONINSIGHTS_CONNECTION_STRING=<Copy connection string from Application Insights Resource Overview> ```
- - Or you can create a configuration file named `applicationinsights.json`. Place it in the same directory as `applicationinsights-agent-3.4.3.jar` with the following content:
+ - Or you can create a configuration file named `applicationinsights.json`. Place it in the same directory as `applicationinsights-agent-3.4.4.jar` with the following content:
```json {
azure-monitor Java Spring Boot https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/azure-monitor/app/java-spring-boot.md
Title: Configure Azure Monitor Application Insights for Spring Boot description: How to configure Azure Monitor Application Insights for Spring Boot applications Previously updated : 06/22/2022 Last updated : 11/12/2022 ms.devlang: java
There are two options for enabling Application Insights Java with Spring Boot: J
## Enabling with JVM argument
-Add the JVM arg `-javaagent:"path/to/applicationinsights-agent-3.4.3.jar"` somewhere before `-jar`, for example:
+Add the JVM arg `-javaagent:"path/to/applicationinsights-agent-3.4.4.jar"` somewhere before `-jar`, for example:
```
-java -javaagent:"path/to/applicationinsights-agent-3.4.3.jar" -jar <myapp.jar>
+java -javaagent:"path/to/applicationinsights-agent-3.4.4.jar" -jar <myapp.jar>
``` ### Spring Boot via Docker entry point
-If you're using the *exec* form, add the parameter `-javaagent:"path/to/applicationinsights-agent-3.4.3.jar"` to the parameter list somewhere before the `"-jar"` parameter, for example:
+If you're using the *exec* form, add the parameter `-javaagent:"path/to/applicationinsights-agent-3.4.4.jar"` to the parameter list somewhere before the `"-jar"` parameter, for example:
```
-ENTRYPOINT ["java", "-javaagent:path/to/applicationinsights-agent-3.4.3.jar", "-jar", "<myapp.jar>"]
+ENTRYPOINT ["java", "-javaagent:path/to/applicationinsights-agent-3.4.4.jar", "-jar", "<myapp.jar>"]
```
-If you're using the *shell* form, add the JVM arg `-javaagent:"path/to/applicationinsights-agent-3.4.3.jar"` somewhere before `-jar`, for example:
+If you're using the *shell* form, add the JVM arg `-javaagent:"path/to/applicationinsights-agent-3.4.4.jar"` somewhere before `-jar`, for example:
```
-ENTRYPOINT java -javaagent:"path/to/applicationinsights-agent-3.4.3.jar" -jar <myapp.jar>
+ENTRYPOINT java -javaagent:"path/to/applicationinsights-agent-3.4.4.jar" -jar <myapp.jar>
``` ### Configuration
azure-monitor Java Standalone Arguments https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/azure-monitor/app/java-standalone-arguments.md
Title: Adding the JVM arg - Azure Monitor Application Insights for Java description: How to add the JVM arg that enables Azure Monitor Application Insights for Java Previously updated : 04/16/2020 Last updated : 11/12/2022 ms.devlang: java
Read the Spring Boot documentation [here](../app/java-in-process-agent.md).
If you installed Tomcat via `apt-get` or `yum`, then you should have a file `/etc/tomcat8/tomcat8.conf`. Add this line to the end of that file: ```
-JAVA_OPTS="$JAVA_OPTS -javaagent:path/to/applicationinsights-agent-3.4.3.jar"
+JAVA_OPTS="$JAVA_OPTS -javaagent:path/to/applicationinsights-agent-3.4.4.jar"
``` ### Tomcat installed via download and unzip
JAVA_OPTS="$JAVA_OPTS -javaagent:path/to/applicationinsights-agent-3.4.3.jar"
If you installed Tomcat via download and unzip from [https://tomcat.apache.org](https://tomcat.apache.org), then you should have a file `<tomcat>/bin/catalina.sh`. Create a new file in the same directory named `<tomcat>/bin/setenv.sh` with the following content: ```
-CATALINA_OPTS="$CATALINA_OPTS -javaagent:path/to/applicationinsights-agent-3.4.3.jar"
+CATALINA_OPTS="$CATALINA_OPTS -javaagent:path/to/applicationinsights-agent-3.4.4.jar"
```
-If the file `<tomcat>/bin/setenv.sh` already exists, then modify that file and add `-javaagent:path/to/applicationinsights-agent-3.4.3.jar` to `CATALINA_OPTS`.
+If the file `<tomcat>/bin/setenv.sh` already exists, then modify that file and add `-javaagent:path/to/applicationinsights-agent-3.4.4.jar` to `CATALINA_OPTS`.
## Tomcat 8 (Windows)
If the file `<tomcat>/bin/setenv.sh` already exists, then modify that file and a
Locate the file `<tomcat>/bin/catalina.bat`. Create a new file in the same directory named `<tomcat>/bin/setenv.bat` with the following content: ```
-set CATALINA_OPTS=%CATALINA_OPTS% -javaagent:path/to/applicationinsights-agent-3.4.3.jar
+set CATALINA_OPTS=%CATALINA_OPTS% -javaagent:path/to/applicationinsights-agent-3.4.4.jar
``` Quotes aren't necessary, but if you want to include them, the proper placement is: ```
-set "CATALINA_OPTS=%CATALINA_OPTS% -javaagent:path/to/applicationinsights-agent-3.4.3.jar"
+set "CATALINA_OPTS=%CATALINA_OPTS% -javaagent:path/to/applicationinsights-agent-3.4.4.jar"
```
-If the file `<tomcat>/bin/setenv.bat` already exists, just modify that file and add `-javaagent:path/to/applicationinsights-agent-3.4.3.jar` to `CATALINA_OPTS`.
+If the file `<tomcat>/bin/setenv.bat` already exists, just modify that file and add `-javaagent:path/to/applicationinsights-agent-3.4.4.jar` to `CATALINA_OPTS`.
### Running Tomcat as a Windows service
-Locate the file `<tomcat>/bin/tomcat8w.exe`. Run that executable and add `-javaagent:path/to/applicationinsights-agent-3.4.3.jar` to the `Java Options` under the `Java` tab.
+Locate the file `<tomcat>/bin/tomcat8w.exe`. Run that executable and add `-javaagent:path/to/applicationinsights-agent-3.4.4.jar` to the `Java Options` under the `Java` tab.
## JBoss EAP 7 ### Standalone server
-Add `-javaagent:path/to/applicationinsights-agent-3.4.3.jar` to the existing `JAVA_OPTS` environment variable in the file `JBOSS_HOME/bin/standalone.conf` (Linux) or `JBOSS_HOME/bin/standalone.conf.bat` (Windows):
+Add `-javaagent:path/to/applicationinsights-agent-3.4.4.jar` to the existing `JAVA_OPTS` environment variable in the file `JBOSS_HOME/bin/standalone.conf` (Linux) or `JBOSS_HOME/bin/standalone.conf.bat` (Windows):
```java ...
- JAVA_OPTS="-javaagent:path/to/applicationinsights-agent-3.4.3.jar -Xms1303m -Xmx1303m ..."
+ JAVA_OPTS="-javaagent:path/to/applicationinsights-agent-3.4.4.jar -Xms1303m -Xmx1303m ..."
... ``` ### Domain server
-Add `-javaagent:path/to/applicationinsights-agent-3.4.3.jar` to the existing `jvm-options` in `JBOSS_HOME/domain/configuration/host.xml`:
+Add `-javaagent:path/to/applicationinsights-agent-3.4.4.jar` to the existing `jvm-options` in `JBOSS_HOME/domain/configuration/host.xml`:
```xml ...
Add `-javaagent:path/to/applicationinsights-agent-3.4.3.jar` to the existing `jv
<jvm-options> <option value="-server"/> <!--Add Java agent jar file here-->
- <option value="-javaagent:path/to/applicationinsights-agent-3.4.3.jar"/>
+ <option value="-javaagent:path/to/applicationinsights-agent-3.4.4.jar"/>
<option value="-XX:MetaspaceSize=96m"/> <option value="-XX:MaxMetaspaceSize=256m"/> </jvm-options>
Add these lines to `start.ini`
``` --exec--javaagent:path/to/applicationinsights-agent-3.4.3.jar
+-javaagent:path/to/applicationinsights-agent-3.4.4.jar
``` ## Payara 5
-Add `-javaagent:path/to/applicationinsights-agent-3.4.3.jar` to the existing `jvm-options` in `glassfish/domains/domain1/config/domain.xml`:
+Add `-javaagent:path/to/applicationinsights-agent-3.4.4.jar` to the existing `jvm-options` in `glassfish/domains/domain1/config/domain.xml`:
```xml ... <java-config ...> <!--Edit the JVM options here--> <jvm-options>
- -javaagent:path/to/applicationinsights-agent-3.4.3.jar>
+ -javaagent:path/to/applicationinsights-agent-3.4.4.jar>
</jvm-options> ... </java-config>
Java and Process Management > Process definition > Java Virtual Machine
``` In "Generic JVM arguments" add the following JVM argument: ```--javaagent:path/to/applicationinsights-agent-3.4.3.jar
+-javaagent:path/to/applicationinsights-agent-3.4.4.jar
``` After that, save and restart the application server.
After that, save and restart the application server.
Create a new file `jvm.options` in the server directory (for example `<openliberty>/usr/servers/defaultServer`), and add this line: ```--javaagent:path/to/applicationinsights-agent-3.4.3.jar
+-javaagent:path/to/applicationinsights-agent-3.4.4.jar
``` ## Others
azure-monitor Java Standalone Config https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/azure-monitor/app/java-standalone-config.md
Title: Configuration options - Azure Monitor Application Insights for Java description: This article shows you how to configure Azure Monitor Application Insights for Java. Previously updated : 10/24/2022 Last updated : 11/12/2022 ms.devlang: java
You'll find more information and configuration options in the following sections
## Configuration file path
-By default, Application Insights Java 3.x expects the configuration file to be named `applicationinsights.json`, and to be located in the same directory as `applicationinsights-agent-3.4.3.jar`.
+By default, Application Insights Java 3.x expects the configuration file to be named `applicationinsights.json`, and to be located in the same directory as `applicationinsights-agent-3.4.4.jar`.
You can specify your own configuration file path by using one of these two options: * `APPLICATIONINSIGHTS_CONFIGURATION_FILE` environment variable * `applicationinsights.configuration.file` Java system property
-If you specify a relative path, it will be resolved relative to the directory where `applicationinsights-agent-3.4.3.jar` is located.
+If you specify a relative path, it will be resolved relative to the directory where `applicationinsights-agent-3.4.4.jar` is located.
Alternatively, instead of using a configuration file, you can specify the entire _content_ of the JSON configuration via the environment variable `APPLICATIONINSIGHTS_CONFIGURATION_CONTENT`.
Or you can set the connection string by using the Java system property `applicat
You can also set the connection string by specifying a file to load the connection string from.
-If you specify a relative path, it's resolved relative to the directory where `applicationinsights-agent-3.4.3.jar` is located.
+If you specify a relative path, it's resolved relative to the directory where `applicationinsights-agent-3.4.4.jar` is located.
```json {
In the preceding configuration example:
* `level` can be one of `OFF`, `ERROR`, `WARN`, `INFO`, `DEBUG`, or `TRACE`. * `path` can be an absolute or relative path. Relative paths are resolved against the directory where
-`applicationinsights-agent-3.4.3.jar` is located.
+`applicationinsights-agent-3.4.4.jar` is located.
Starting from version 3.0.2, you can also set the self-diagnostics `level` by using the environment variable `APPLICATIONINSIGHTS_SELF_DIAGNOSTICS_LEVEL`. It then takes precedence over the self-diagnostics level specified in the JSON configuration.
azure-monitor Java Standalone Upgrade From 2X https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/azure-monitor/app/java-standalone-upgrade-from-2x.md
Title: Upgrading from 2.x - Azure Monitor Application Insights Java description: Upgrading from Azure Monitor Application Insights Java 2.x Previously updated : 11/25/2020 Last updated : 11/12/2022 ms.devlang: java
auto-instrumentation which is provided by the 3.x Java agent.
Add the 3.x Java agent to your JVM command-line args, for example ```--javaagent:path/to/applicationinsights-agent-3.4.3.jar
+-javaagent:path/to/applicationinsights-agent-3.4.4.jar
``` If you were using the Application Insights 2.x Java agent, just replace your existing `-javaagent:...` with the above.
azure-monitor Tutorial Asp Net Core https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/azure-monitor/app/tutorial-asp-net-core.md
Application Insights can collect the following telemetry from your ASP.NET Core
> * Heartbeats > * Logs
-For a sample application, we'll use an [ASP.NET Core MVC application](/aspnet/core/tutorials/first-mvc-app) that targets `net6.0`. However, you can apply these instructions to all ASP.NET Core applications. If you're using the [Worker Service](/aspnet/core/fundamentals/host/hosted-services#worker-service-template), use the instructions from [here](./worker-service.md).
+For a sample application, we'll use an [ASP.NET Core MVC application](https://github.com/AaronMaxwell/AzureCafe) that targets `net6.0`. However, you can apply these instructions to all ASP.NET Core applications. If you're using the [Worker Service](/aspnet/core/fundamentals/host/hosted-services#worker-service-template), use the instructions from [here](./worker-service.md).
> [!NOTE] > A preview [OpenTelemetry-based .NET offering](./opentelemetry-enable.md?tabs=net) is available. [Learn more](./opentelemetry-overview.md).
azure-monitor Insights Overview https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/azure-monitor/insights/insights-overview.md
Some visualizations are considered part of Azure Monitor and follow the support
## Insights and curated visualizations
-The following table lists the available curated visualizations and information about them. **Most** of the list below can be found in the [Insights hub in the Azure portal](https://ms.portal.azure.com/#view/Microsoft_Azure_Monitoring/AzureMonitoringBrowseBlade/~/more). The table uses the same grouping as portal.
+The following table lists the available curated visualizations and information about them. **Most** of the list below can be found in the [Insights hub in the Azure portal](https://portal.azure.com/#view/Microsoft_Azure_Monitoring/AzureMonitoringBrowseBlade/~/more). The table uses the same grouping as portal.
>[!NOTE] > Another type of older visualization called *monitoring solutions* is no longer in active development. The replacement technology is the Azure Monitor Insights, as mentioned here. We suggest you use the Insights and not deploy new instances of solutions. For more information on the solutions, see [Monitoring solutions in Azure Monitor](solutions.md).
azure-monitor Manage Access https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/azure-monitor/logs/manage-access.md
The factors that define the data you can access are described in the following t
| [Access mode](#access-mode) | Method used to access the workspace. Defines the scope of the data available and the access control mode that's applied. | | [Access control mode](#access-control-mode) | Setting on the workspace that defines whether permissions are applied at the workspace or resource level. | | [Azure role-based access control (RBAC)](#azure-rbac) | Permissions applied to individuals or groups of users for the workspace or resource sending data to the workspace. Defines what data you have access to. |
-| [Table-level Azure RBAC](#set-table-level-read-access) | Optional permissions that define specific data types in the workspace that you can access. Apply to all users no matter your access mode or access control mode. |
+| [Table-level Azure RBAC](#set-table-level-read-access-preview) | Optional permissions that define specific data types in the workspace that you can access. Apply to all users no matter your access mode or access control mode. |
## Access mode
The following table summarizes the access modes:
|:|:|:| | Who is each model intended for? | Central administration.<br>Administrators who need to configure data collection and users who need access to a wide variety of resources. Also currently required for users who need to access logs for resources outside of Azure. | Application teams.<br>Administrators of Azure resources being monitored. Allows them to focus on their resource without filtering. | | What does a user require to view logs? | Permissions to the workspace.<br>See "Workspace permissions" in [Manage access using workspace permissions](./manage-access.md#azure-rbac). | Read access to the resource.<br>See "Resource permissions" in [Manage access using Azure permissions](./manage-access.md#azure-rbac). Permissions can be inherited from the resource group or subscription or directly assigned to the resource. Permission to the logs for the resource will be automatically assigned. The user doesn't require access to the workspace.|
-| What is the scope of permissions? | Workspace.<br>Users with access to the workspace can query all logs in the workspace from tables they have permissions to. See [Set table-level read access](./manage-access.md#set-table-level-read-access). | Azure resource.<br>Users can query logs for specific resources, resource groups, or subscriptions they have access to in any workspace, but they can't query logs for other resources. |
+| What is the scope of permissions? | Workspace.<br>Users with access to the workspace can query all logs in the workspace from tables they have permissions to. See [Set table-level read access](./manage-access.md#set-table-level-read-access-preview). | Azure resource.<br>Users can query logs for specific resources, resource groups, or subscriptions they have access to in any workspace, but they can't query logs for other resources. |
| How can a user access logs? | On the **Azure Monitor** menu, select **Logs**.<br><br>Select **Logs** from **Log Analytics workspaces**.<br><br>From Azure Monitor [workbooks](../best-practices-analysis.md#workbooks). | Select **Logs** on the menu for the Azure resource. Users will have access to data for that resource.<br><br>Select **Logs** on the **Azure Monitor** menu. Users will have access to data for all resources they have access to.<br><br>Select **Logs** from **Log Analytics workspaces**. Users will have access to data for all resources they have access to.<br><br>From Azure Monitor [workbooks](../best-practices-analysis.md#workbooks). | ## Access control mode The *access control mode* is a setting on each workspace that defines how permissions are determined for the workspace.
-* **Require workspace permissions**. This control mode doesn't allow granular Azure RBAC. To access the workspace, the user must be [granted permissions to the workspace](#azure-rbac) or to [specific tables](#set-table-level-read-access).
+* **Require workspace permissions**. This control mode doesn't allow granular Azure RBAC. To access the workspace, the user must be [granted permissions to the workspace](#azure-rbac) or to [specific tables](#set-table-level-read-access-preview).
If a user accesses the workspace in [workspace-context mode](#access-mode), they have access to all data in any table they've been granted access to. If a user accesses the workspace in [resource-context mode](#access-mode), they have access to only data for that resource in any table they've been granted access to.
Grant a user access to log data from their resources and read all Azure AD sign-
- `Microsoft.OperationalInsights/workspaces/query/ComputerGroup/read`: Required to be able to use Update Management solutions - Grant users the following permissions to their resources: `*/read`, assigned to the Reader role, or `Microsoft.Insights/logs/*/read`
-## Set table-level read access
+## Set table-level read access (preview)
To create a [custom role](../../role-based-access-control/custom-roles.md) that lets specific users or groups read data from specific tables in a workspace:
-1. Create a custom role that grants read access to table data, based on the built-in Azure Monitor Logs **Reader** role:
+1. Create a custom role that grants users permission to execute queries in the Log Analytics workspace, based on the built-in Azure Monitor Logs **Reader** role:
1. Navigate to your workspace and select **Access control (AIM)** > **Roles**.
To create a [custom role](../../role-based-access-control/custom-roles.md) that
This opens the **Create a custom role** screen.
- 1. On the **Basics** tab of the screen enter a **Custom role name** value and, optionally, provide a description.
+ 1. On the **Basics** tab of the screen, enter a **Custom role name** value and, optionally, provide a description.
:::image type="content" source="media/manage-access/manage-access-create-custom-role.png" alt-text="Screenshot that shows the Basics tab of the Create a custom role screen with the Custom role name and Description fields highlighted." lightbox="media/manage-access/manage-access-create-custom-role.png":::
To create a [custom role](../../role-based-access-control/custom-roles.md) that
:::image type="content" source="media/manage-access/manage-access-create-custom-role-json.png" alt-text="Screenshot that shows the JSON tab of the Create a custom role screen with the actions section of the JSON file highlighted." lightbox="media/manage-access/manage-access-create-custom-role-json.png"::: 1. Select **Review + Create** at the bottom of the screen, and then **Create** on the next page.
- 1. Copy the custom role ID:
- 1. Select **Access control (AIM)** > **Roles**.
- 1. Right-click on your custom role and select **Edit**.
-
- This opens the **Custom Role** screen.
-
- :::image type="content" source="media/manage-access/manage-access-role-definition-id.png" alt-text="Screenshot that shows the JSON tab of the Custom Role screen with the ID field highlighted." lightbox="media/manage-access/manage-access-role-definition-id.png":::
-
- 1. Select **JSON** and copy the `id` field.
-
- You'll need the `/providers/Microsoft.Authorization/roleDefinitions/<definition_id>` value when you call the `https://management.azure.com/batch?api-version=2020-06-01` POST API.
1. Assign your custom role to the relevant users or groups: 1. Select **Access control (AIM)** > **Add** > **Add role assignment**.
To create a [custom role](../../role-based-access-control/custom-roles.md) that
"content": { "Id": "<GUID_1>", "Properties": {
- "PrincipalId": "<User_object_ID>",
+ "PrincipalId": "<user_object_ID>",
"PrincipalType": "User",
- "RoleDefinitionId": "<custom_role_ID>",
+ "RoleDefinitionId": "/providers/Microsoft.Authorization/roleDefinitions/acdd72a7-3385-48ef-bd42-f606fba81ae7",
"Scope": "/subscriptions/<subscription_ID>/resourceGroups/<resource_group_name>/providers/Microsoft.OperationalInsights/workspaces/<workspace_name>/Tables/<table_name>", "Condition": null, "ConditionVersion": null
To create a [custom role](../../role-based-access-control/custom-roles.md) that
Where: - You can generate a GUID for `<GUID 1>` and `<GUID 2>` using any GUID generator.
- - `<custom_role_ID>` is the `/providers/Microsoft.Authorization/roleDefinitions/<definition_id>` value you copied earlier.
+ - `<user_object_ID>` is the object ID of the user to which you want to grant table read access.
- `<subscription_ID>` is the ID of the subscription related to the workspace. - `<resource_group_name>` is the resource group of the workspace. - `<workspace_name>` is the name of the workspace.
To create a [custom role](../../role-based-access-control/custom-roles.md) that
### Legacy method of setting table-level read access
-[Azure custom roles](../../role-based-access-control/custom-roles.md) let you grant access to specific tables in the workspace, although we recommend defining [table-level read access](#set-table-level-read-access) as described above.
+[Azure custom roles](../../role-based-access-control/custom-roles.md) let you grant access to specific tables in the workspace, although we recommend defining [table-level read access](#set-table-level-read-access-preview) as described above.
Azure custom roles apply to workspaces with either workspace-context or resource-context [access control modes](#access-control-mode) regardless of the user's [access mode](#access-mode).
azure-monitor Workspace Design https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/azure-monitor/logs/workspace-design.md
When you grant a user [access to a workspace](manage-access.md#azure-rbac), the
- **If you want users to be able to access data for their resources:** Keep the default access control mode of **Use resource or workspace permissions**. - **If you want to explicitly assign permissions for all users:** Change the access control mode to **Require workspace permissions**.
-[Table-level RBAC](manage-access.md#set-table-level-read-access): With table-level RBAC, you can grant or deny access to specific tables in the workspace. In this way, you can implement granular permissions required for specific situations in your environment.
+[Table-level RBAC](manage-access.md#set-table-level-read-access-preview): With table-level RBAC, you can grant or deny access to specific tables in the workspace. In this way, you can implement granular permissions required for specific situations in your environment.
For example, you might grant access to only specific tables collected by Microsoft Sentinel to an internal auditing team. Or you might deny access to security-related tables to resource owners who need operational data related to their resources.
azure-monitor Monitor Reference https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/azure-monitor/monitor-reference.md
For a list of Azure resource provider namespaces, see [Resource providers for Az
For a list of resource providers that support Azure Monitor - **Metrics** - See [Supported metrics in Azure Monitor](essentials/metrics-supported.md).-- **Metric alerts** - See [Supported resources for metric alerts in Azure Monitor](/alerts/alerts-metric-near-real-time.md).-- **Prometheus metrics** - See [TBD](essentials/FILL ME IN.md).-- **Resource logs** - See [Supported categories for Azure Monitor resource logs](/essentials/resource-logs-categories.md).
+- **Metric alerts** - See [Supported resources for metric alerts in Azure Monitor](alerts/alerts-metric-near-real-time.md).
+- **Prometheus metrics** - See [Prometheus metrics overview](essentials/prometheus-metrics-overview.md#enable).
+- **Resource logs** - See [Supported categories for Azure Monitor resource logs](essentials/resource-logs-categories.md).
- **Activity log** - All entries in the activity log are available for query, alerting and routing to Azure Monitor Logs store regardless of resource provider. ## Services that require agents
azure-portal How To Manage Azure Support Request https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/azure-portal/supportability/how-to-manage-azure-support-request.md
To reopen a closed support request, create a [new message](#send-a-message), whi
## Cancel a support plan
-To cancel a support plan, see [Cancel a support plan](../../cost-management-billing/manage/cancel-azure-subscription.md#cancel-a-support-plan).
+To cancel a support plan, see [Cancel a support plan](../../cost-management-billing/manage/cancel-azure-subscription.md#cancel-a-subscription-in-the-azure-portal).
## Next steps
azure-video-indexer Logic Apps Connector Arm Accounts https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/azure-video-indexer/logic-apps-connector-arm-accounts.md
The following image shows the first flow:
![Screenshot of the file upload flow.](./media/logic-apps-connector-arm-accounts/first-flow-high-level.png)
-1. Create the [Logic App](https://ms.portal.azure.com/#create/Microsoft.LogicApp). We create a Logic App in the same region as the Azure Video Indexer region (recommended but not required). We call the logic app `UploadIndexVideosApp`.
+1. Create the [Logic App](https://portal.azure.com/#create/Microsoft.LogicApp). We create a Logic App in the same region as the Azure Video Indexer region (recommended but not required). We call the logic app `UploadIndexVideosApp`.
1. Select **Consumption** for **Plan type**. 1. Press **Review + Create** -> **Create**.
container-registry Tutorial Enable Customer Managed Keys https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/container-registry/tutorial-enable-customer-managed-keys.md
This article is part two in a four-part tutorial series. [Part one](tutorial-cus
## Prerequisites * [Install the Azure CLI][azure-cli] or prepare to use [Azure Cloud Shell](../cloud-shell/quickstart.md).
-* Sign in to the [Azure portal](https://ms.portal.azure.com/).
+* Sign in to the [Azure portal](https://portal.azure.com/).
## Enable a customer-managed key by using the Azure CLI
cosmos-db Powerbi Visualize https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/cosmos-db/nosql/powerbi-visualize.md
To build a Power BI report/dashboard:
10. Power BI Desktop Report view is where you can start creating reports to visualize data. You can create reports by dragging and dropping fields into the **Report** canvas.
-11. There are two ways to refresh data: ad hoc and scheduled. Simply click **Refresh Now** to refresh the data. For a scheduled refresh, go to **Settings**, open the **Datasets** tab. Click on **Scheduled Refresh** and set your schedule.
+11. There are two ways to refresh data: ad hoc and scheduled. Simply click **Refresh Now** to refresh the data. Check Power BI documentation for more information about the scheduled refresh option.
## Next steps * To learn more about Power BI, see [Get started with Power BI](https://powerbi.microsoft.com/documentation/powerbi-service-get-started/).
-* To learn more about Azure Cosmos DB, see the [Azure Cosmos DB documentation landing page](../index.yml).
+* To learn more about Azure Cosmos DB, see the [Azure Cosmos DB documentation landing page](../index.yml).
cost-management-billing Cancel Azure Subscription https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/cost-management-billing/manage/cancel-azure-subscription.md
tags: billing
Previously updated : 03/09/2022 Last updated : 11/11/2022
You can cancel your Azure subscription in the Azure portal if you no longer need
Although not required, Microsoft *recommends* that you take the following actions before you cancel your subscription: * Back up your data. For example, if you're storing data in Azure storage or SQL, download a copy. If you have a virtual machine, save an image of it locally.
-* Shut down your services. Go to the [resources page in the management portal](https://portal.azure.com/?flight=1#blade/HubsExtension/Resources/resourceType/Microsoft.Resources%2Fresources), and **Stop** any running virtual machines, applications, or other services.
+* Shut down your services. Go to the [All resources](https://portal.azure.com/?flight=1#blade/HubsExtension/Resources/resourceType/Microsoft.Resources%2Fresources) page, and **Stop** any running virtual machines, applications, or other services.
* Consider migrating your data. See [Move resources to new resource group or subscription](../../azure-resource-manager/management/move-resource-group-and-subscription.md).
-* Delete all resources and all resource groups.
+* Delete all resources and all resource groups.
+ * To later delete a subscription, you must first delete all resources associated with the subscription.
* If you have any custom roles that reference this subscription in `AssignableScopes`, you should update those custom roles to remove the subscription. If you try to update a custom role after you cancel a subscription, you might get an error. For more information, see [Troubleshoot problems with custom roles](../../role-based-access-control/troubleshooting.md#custom-roles) and [Azure custom roles](../../role-based-access-control/custom-roles.md). > [!NOTE]
-> After you cancel your subscription, you'll receive a final invoice for the pay-as-you-go usage that you incurred in the last billing cycle.
+> After you cancel your subscription, you'll receive a final invoice for the usage that you incurred in the last billing cycle.
-If you cancel a paid Azure Support plan, you're billed for the rest of the subscription term. For more information, see [Azure support plans](https://azure.microsoft.com/support/plans/).
+If you cancel an Azure Support plan, you're billed for the rest of the month. Cancelling a support plan doesn't result in a prorated refund. For more information, see [Azure support plans](https://azure.microsoft.com/support/plans/).
## Who can cancel a subscription?
The table below describes the permission required to cancel a subscription.
An account administrator without the service administrator or subscription owner role canΓÇÖt cancel an Azure subscription. However, an account administrator can make themself the service administrator and then they can cancel a subscription. For more information, see [Change the Service Administrator](../../role-based-access-control/classic-administrators.md#change-the-service-administrator).
-## Cancel subscription in the Azure portal
+## Cancel a subscription in the Azure portal
-1. Select your subscription from the [Subscriptions page in the Azure portal](https://portal.azure.com/#blade/Microsoft_Azure_Billing/SubscriptionsBlade).
-1. Select the subscription that you want to cancel.
-1. Select **Overview**, and then select **Cancel subscription**.
- ![Screenshot that shows the Cancel button](./media/cancel-azure-subscription/cancel_ibiza.png)
-1. Follow prompts and finish cancellation.
+Depending on your environment, the cancel subscription experience allows you to cancel a subscription, turn off auto-renewal for an associated support plan, and stop all Azure subscription resources.
-> [!NOTE]
-> Partners can suspend or cancel a subscription if requested by a customer or in cases of nonpayment or fraud. For more information, see [Suspend or cancel a subscription](/partner-center/create-a-new-subscription#suspend-or-cancel-a-subscription).
+If you have a support plan associated with the subscription, it's shown in the cancellation process. Otherwise, it isn't shown.
+
+If you have any Azure resources associated with the subscription, they're shown in the cancellation process. Otherwise, they're not shown.
-## Cancel a support plan
+A billing account owner uses the following steps to cancel a subscription.
-If you purchased your support plan through the Azure website, Azure portal, or if you have one under a Microsoft Customer Agreement, you can cancel a support plan. If you purchased your support plan through a Microsoft representative or partner, contact them for assistance.
+A subscription owner can navigate in the Azure portal to **Subscriptions** and then start at step 3.
-### Cancel a support plan bought from the Azure portal
+1. In the Azure portal, navigate to Cost Management + Billing.
+1. In the left menu under **Products + services**, select **All billing subscriptions**. If you a support plan, it's shown in the list.
+ :::image type="content" source="./media/cancel-azure-subscription/all-billing-subscriptions.png" alt-text="Screenshot showing all billing subscriptions." lightbox="./media/cancel-azure-subscription/all-billing-subscriptions.png" :::
+1. Select the subscription that you want to cancel.
+1. At the top of page, select **Cancel**.
+1. If you have any resources associated with the subscription, they're shown on the page. At the top of the page, select **Cancel subscription**.
+ :::image type="content" source="./media/cancel-azure-subscription/cancel-subscription.png" alt-text="Screenshot showing the subscription properties where you select Cancel subscription." lightbox="./media/cancel-azure-subscription/cancel-subscription.png" :::
+1. Select a reason for cancellation.
+1. If you have a support plan and no other subscriptions use it, select **Turn off auto-renew**. If other subscriptions use the support plan, clear the option.
+1. If you have any running resources associated with the subscription, you must select **Turn off resources**. Ensure that you have already backed up any data that you want to keep.
+1. Select **Cancel subscription**.
+ :::image type="content" source="./media/cancel-azure-subscription/cancel-subscription-final.png" alt-text="Screenshot showing the Cancel subscription window options." lightbox="./media/cancel-azure-subscription/cancel-subscription-final.png" :::
-1. In the Azure portal, navigate to **Cost Management + Billing**.
-1. On the Overview page, find your plan and then select it.
-1. On the support plan page, select **Cancel**.
-1. In the Cancel support window, verify that you want to cancel and select **Yes, cancel**.
- :::image type="content" source="./media/cancel-azure-subscription/cancel-legacy-support-plan.png" alt-text="Screenshot showing the legacy Cancel support plan page." lightbox="./media/cancel-azure-subscription/cancel-legacy-support-plan.png" :::
+After the subscription is canceled, you'll see a notification that the cancellation is complete. If you have any outstanding charges that haven't been invoiced yet, you'll see their estimated charges. If you have any outstanding credits that haven't been applied to your invoice, you'll see the estimated credits that will get applied to your invoice. For more information about data update frequency, see [Cost and usage data updates and retention](../costs/understand-cost-mgt-data.md#cost-and-usage-data-updates-and-retention).
-### Cancel a support plan for a Microsoft Customer Agreement
-1. In the Azure portal, navigate to **Cost Management + Billing**.
-1. Under **Billing**, select **Recurring charges**.
-1. On the right-hand side for the support plan line item, select the ellipsis (**...**) and select **Turn off auto-renewal**.
+> [!NOTE]
+> Partners can suspend or cancel a subscription if requested by a customer or in cases of nonpayment or fraud. For more information, see [Suspend or cancel a subscription](/partner-center/create-a-new-subscription#suspend-or-cancel-a-subscription).
## What happens after subscription cancellation? After you cancel, billing is stopped immediately. However, it can take up to 10 minutes for the cancellation to show in the portal. If you cancel in the middle of a billing period, we send the final invoice on your typical invoice date after the period ends.
-After you cancel, your services are disabled. That means your virtual machines are de-allocated, temporary IP addresses are freed, and storage is read-only.
+After you cancel, your services are disabled. That means your virtual machines are de-allocated, temporary IP addresses are freed, and storage is read-only. Here's an example of the cancellation window.
+
-After your subscription is canceled, Microsoft waits 30 - 90 days before permanently deleting your data in case you need to access it or you change your mind. We don't charge you for keeping the data. To learn more, see [Microsoft Trust Center - How we manage your data](https://go.microsoft.com/fwLink/p/?LinkID=822930&clcid=0x409).
+After your subscription is canceled, Microsoft waits 30 - 90 days before permanently deleting your data in case you need to access it, or if you change your mind. We don't charge you for keeping the data. To learn more, see [Microsoft Trust Center - How we manage your data](https://go.microsoft.com/fwLink/p/?LinkID=822930&clcid=0x409).
## Delete subscriptions
-If you have a free trial or pay-as-you-go subscription, you don't have to wait 90 days for the subscription to automatically delete. You can delete your subscription *three days* after you cancel it. The **Delete subscription** option isn't available until three days after you cancel your subscription.
+The **Delete subscription** option isn't available until at least 15 minutes after you cancel your subscription.
-1. Wait three days after the date you canceled the subscription.
1. Select your subscription on the [Subscriptions](https://portal.azure.com/#blade/Microsoft_Azure_Billing/SubscriptionsBlade) page in the Azure portal. 1. Select the subscription that you want to delete. 1. Select **Overview**, and then select **Delete subscription**.
-**Note:** 90 days after you cancel a subscription, the subscription will automatically be deleted.
+>[!NOTE]
+> 90 days after you cancel a subscription, the subscription is automatically deleted.
## Delete other subscriptions
-The only subscription types that you can manually delete are free trial and pay-as-you-go subscriptions. All other subscription types are deleted only through the [subscription cancellation](#cancel-subscription-in-the-azure-portal) process. In other words, you can't delete a subscription directly unless it's a free trial or pay-as-you-go subscription. However, after you cancel a subscription, you can create an [Azure support request](https://go.microsoft.com/fwlink/?linkid=2083458) to ask to have the subscription deleted immediately.
+The only subscription types that you can manually delete are free trial and pay-as-you-go subscriptions. All other subscription types are deleted only through the [subscription cancellation](#cancel-a-subscription-in-the-azure-portal) process. In other words, you can't delete a subscription directly unless it's a free trial or pay-as-you-go subscription. However, after you cancel a subscription, you can create an [Azure support request](https://go.microsoft.com/fwlink/?linkid=2083458) to ask to have the subscription deleted immediately.
## Reactivate a subscription
cost-management-billing Subscription Disabled https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/cost-management-billing/manage/subscription-disabled.md
tags: billing
Previously updated : 03/22/2022 Last updated : 11/10/2022
If you're the Account Administrator and accidentally canceled a pay-as-you-go su
1. Sign in to the [Azure portal](https://portal.azure.com). 1. Go to Subscriptions and then select the canceled subscription.
-1. Select **Reactivate**.
-1. Confirm reactivation by selecting **OK**.
- :::image type="content" source="./media/subscription-disabled/reactivate-sub.png" alt-text="Screenshot that shows Confirm reactivation" :::
+1. Select **Reactivate**.
+ :::image type="content" source="./media/subscription-disabled/reactivate-sub.png" alt-text="Screenshot that shows Confirm reactivation." :::
For other subscription types, [contact support](https://portal.azure.com/?#blade/Microsoft_Azure_Support/HelpAndSupportBlade) to have your subscription reactivated.
defender-for-cloud Asset Inventory https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/defender-for-cloud/asset-inventory.md
Title: Microsoft Defender for Cloud's asset inventory description: Learn about Microsoft Defender for Cloud's asset management experience providing full visibility over all your Defender for Cloud monitored resources. Previously updated : 11/09/2021 Last updated : 11/13/2022
The asset management possibilities for this tool are substantial and continue to
|Release state:|General availability (GA)| |Pricing:|Free<br> Some features of the inventory page, such as the [software inventory](#access-a-software-inventory) require paid solutions to be in-place| |Required roles and permissions:|All users|
-|Clouds:|:::image type="icon" source="./media/icons/yes-icon.png"::: Commercial clouds<br>:::image type="icon" source="./media/icons/no-icon.png"::: National (Azure Government, Azure China 21Vianet)|
+|Clouds:|:::image type="icon" source="./media/icons/yes-icon.png"::: Commercial clouds<br>:::image type="icon" source="./media/icons/yes-icon.png"::: National (Azure Government, Azure China 21Vianet) <br> <br> Software inventory is not currently supported on the National cloud.|
## What are the key features of asset inventory?
Using the [Kusto Query Language (KQL)](/azure/data-explorer/kusto/query/), asset
## Access a software inventory
-If you've enabled the integration with Microsoft Defender for Endpoint and enabled Microsoft Defender for Servers, you'll have access to the software inventory.
+Software inventory can be enabled either using the agentless scanner or with the agent based Microsoft Defender for Endpoint integration.
+
+If you've already enabled the integration with Microsoft Defender for Endpoint and enabled Microsoft Defender for Servers, you'll have access to the software inventory.
:::image type="content" source="media/asset-inventory/software-inventory-filters.gif" alt-text="If you've enabled the threat and vulnerability solution, Defender for Cloud's asset inventory offers a filter to select resources by their installed software.":::
defender-for-cloud Defender For Devops Introduction https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/defender-for-cloud/defender-for-devops-introduction.md
Defender for DevOps helps unify, strengthen and manage multi-pipeline DevOps sec
| Release state: | Preview<br>The [Azure Preview Supplemental Terms](https://azure.microsoft.com/support/legal/preview-supplemental-terms/) include other legal terms that apply to Azure features that are in beta, preview, or otherwise not yet released into general availability. | | Clouds | :::image type="icon" source="./media/icons/yes-icon.png"::: Commercial clouds<br>:::image type="icon" source="./media/icons/no-icon.png"::: National (Azure Government, Azure China 21Vianet) | | Regions: | Central US |
-| Source Code Management | [Azure DevOps](https://ms.portal.azure.com/#home) |
+| Source Code Management | [Azure DevOps](https://portal.azure.com/#home) |
| Systems | [GitHub](https://github.com/) | | Required permissions: | <br> **Azure account** - with permissions to sign into Azure portal. <br> **Contributor** - on the relevant Azure subscription. <br> **Organization Administrator** - in GitHub. <br> **Security Admin role** - in Defender for Cloud. | ## Manage your DevOps environments in Defender for Cloud
-Defender for DevOps allows you to manage your connected environments and provides your security teams with a high level overview of discovered issues that may exist within them through the [Defender for DevOps console](https://ms.portal.azure.com/#view/Microsoft_Azure_Security/SecurityMenuBlade/~/DevOpsSecurity).
+Defender for DevOps allows you to manage your connected environments and provides your security teams with a high level overview of discovered issues that may exist within them through the [Defender for DevOps console](https://portal.azure.com/#view/Microsoft_Azure_Security/SecurityMenuBlade/~/DevOpsSecurity).
:::image type="content" source="media/defender-for-devops-introduction/devops-dashboard.png" alt-text="Screenshot of the Defender for DevOps dashboard." lightbox="media/defender-for-devops-introduction/devops-dashboard.png":::
defender-for-cloud Defender For Storage Exclude https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/defender-for-cloud/defender-for-storage-exclude.md
When you [enable Microsoft Defender for Storage](../storage/common/azure-defender-storage-configure.md) on a subscription for the per-transaction pricing, all current and future Azure Storage accounts in that subscription are protected. You can exclude specific storage accounts from the Defender for Storage protections using the Azure portal, PowerShell, or the Azure CLI.
-We don't recommend that you exclude storage accounts from Defender for Storage because attackers can use any opening in order to compromise your environment. If you want to optimize your Azure costs and remove storage accounts that you feel are low risk from Defender for Storage, you can use the [Price Estimation Workbook](https://ms.portal.azure.com/#view/Microsoft_Azure_Security/SecurityMenuBlade/~/28) in the Azure portal to evaluate the cost savings.
+We don't recommend that you exclude storage accounts from Defender for Storage because attackers can use any opening in order to compromise your environment. If you want to optimize your Azure costs and remove storage accounts that you feel are low risk from Defender for Storage, you can use the [Price Estimation Workbook](https://portal.azure.com/#view/Microsoft_Azure_Security/SecurityMenuBlade/~/28) in the Azure portal to evaluate the cost savings.
## Exclude an Azure Storage account protection on a subscription with per-transaction pricing
defender-for-cloud Release Notes https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/defender-for-cloud/release-notes.md
The following new recommendations are now available for DevOps:
| Recommendation | Description | Severity | |--|--|--|
-| (Preview) [Code repositories should have code scanning findings resolved](https://ms.portal.azure.com/#view/Microsoft_Azure_Security/GenericRecommendationDetailsWithRulesBlade/assessmentKey/c68a8c2a-6ed4-454b-9e37-4b7654f2165f/showSecurityCenterCommandBar~/false) | Defender for DevOps has found vulnerabilities in code repositories. To improve the security posture of the repositories, it is highly recommended to remediate these vulnerabilities. (No related policy) | Medium |
-| (Preview) [Code repositories should have secret scanning findings resolved](https://ms.portal.azure.com/#view/Microsoft_Azure_Security/GenericRecommendationDetailsWithRulesBlade/assessmentKey/4e07c7d0-e06c-47d7-a4a9-8c7b748d1b27/showSecurityCenterCommandBar~/false) | Defender for DevOps has found a secret in code repositories.  This should be remediated immediately to prevent a security breach.  Secrets found in repositories can be leaked or discovered by adversaries, leading to compromise of an application or service. For Azure DevOps, the Microsoft Security DevOps CredScan tool only scans builds on which it has been configured to run. Therefore, results may not reflect the complete status of secrets in your repositories. (No related policy) | High |
-| (Preview) [Code repositories should have Dependabot scanning findings resolved](https://ms.portal.azure.com/#view/Microsoft_Azure_Security/GenericRecommendationDetailsBlade/assessmentKey/822425e3-827f-4f35-bc33-33749257f851/showSecurityCenterCommandBar~/false) | Defender for DevOps has found vulnerabilities in code repositories. To improve the security posture of the repositories, it is highly recommended to remediate these vulnerabilities. (No related policy) | Medium |
-| (Preview) [Code repositories should have infrastructure as code scanning findings resolved](https://ms.portal.azure.com/#view/Microsoft_Azure_Security/GenericRecommendationDetailsBlade/assessmentKey/2ebc815f-7bc7-4573-994d-e1cc46fb4a35/showSecurityCenterCommandBar~/false) | (Preview) Code repositories should have infrastructure as code scanning findings resolved | Medium |
-| (Preview) [GitHub repositories should have code scanning enabled](https://ms.portal.azure.com/#view/Microsoft_Azure_Security/GenericRecommendationDetailsBlade/assessmentKey/6672df26-ff2e-4282-83c3-e2f20571bd11/showSecurityCenterCommandBar~/false) | GitHub uses code scanning to analyze code in order to find security vulnerabilities and errors in code. Code scanning can be used to find, triage, and prioritize fixes for existing problems in your code. Code scanning can also prevent developers from introducing new problems. Scans can be scheduled for specific days and times, or scans can be triggered when a specific event occurs in the repository, such as a push. If code scanning finds a potential vulnerability or error in code, GitHub displays an alert in the repository. A vulnerability is a problem in a project's code that could be exploited to damage the confidentiality, integrity, or availability of the project. (No related policy) | Medium |
-| (Preview) [GitHub repositories should have secret scanning enabled](https://ms.portal.azure.com/#view/Microsoft_Azure_Security/GenericRecommendationDetailsBlade/assessmentKey/1a600c61-6443-4ab4-bd28-7a6b6fb4691d/showSecurityCenterCommandBar~/false) | GitHub scans repositories for known types of secrets, to prevent fraudulent use of secrets that were accidentally committed to repositories. Secret scanning will scan the entire Git history on all branches present in the GitHub repository for any secrets. Examples of secrets are tokens and private keys that a service provider can issue for authentication. If a secret is checked into a repository, anyone who has read access to the repository can use the secret to access the external service with those privileges. Secrets should be stored in a dedicated, secure location outside the repository for the project. (No related policy) | High |
-| (Preview) [GitHub repositories should have Dependabot scanning enabled](https://ms.portal.azure.com/#view/Microsoft_Azure_Security/GenericRecommendationDetailsBlade/assessmentKey/92643c1f-1a95-4b68-bbd2-5117f92d6e35/showSecurityCenterCommandBar~/false) | GitHub sends Dependabot alerts when it detects vulnerabilities in code dependencies that affect repositories. A vulnerability is a problem in a project's code that could be exploited to damage the confidentiality, integrity, or availability of the project or other projects that use its code. Vulnerabilities vary in type, severity, and method of attack. When code depends on a package that has a security vulnerability, this vulnerable dependency can cause a range of problems. (No related policy) | Medium |
+| (Preview) [Code repositories should have code scanning findings resolved](https://portal.azure.com/#view/Microsoft_Azure_Security/GenericRecommendationDetailsWithRulesBlade/assessmentKey/c68a8c2a-6ed4-454b-9e37-4b7654f2165f/showSecurityCenterCommandBar~/false) | Defender for DevOps has found vulnerabilities in code repositories. To improve the security posture of the repositories, it is highly recommended to remediate these vulnerabilities. (No related policy) | Medium |
+| (Preview) [Code repositories should have secret scanning findings resolved](https://portal.azure.com/#view/Microsoft_Azure_Security/GenericRecommendationDetailsWithRulesBlade/assessmentKey/4e07c7d0-e06c-47d7-a4a9-8c7b748d1b27/showSecurityCenterCommandBar~/false) | Defender for DevOps has found a secret in code repositories.  This should be remediated immediately to prevent a security breach.  Secrets found in repositories can be leaked or discovered by adversaries, leading to compromise of an application or service. For Azure DevOps, the Microsoft Security DevOps CredScan tool only scans builds on which it has been configured to run. Therefore, results may not reflect the complete status of secrets in your repositories. (No related policy) | High |
+| (Preview) [Code repositories should have Dependabot scanning findings resolved](https://portal.azure.com/#view/Microsoft_Azure_Security/GenericRecommendationDetailsBlade/assessmentKey/822425e3-827f-4f35-bc33-33749257f851/showSecurityCenterCommandBar~/false) | Defender for DevOps has found vulnerabilities in code repositories. To improve the security posture of the repositories, it is highly recommended to remediate these vulnerabilities. (No related policy) | Medium |
+| (Preview) [Code repositories should have infrastructure as code scanning findings resolved](https://portal.azure.com/#view/Microsoft_Azure_Security/GenericRecommendationDetailsBlade/assessmentKey/2ebc815f-7bc7-4573-994d-e1cc46fb4a35/showSecurityCenterCommandBar~/false) | (Preview) Code repositories should have infrastructure as code scanning findings resolved | Medium |
+| (Preview) [GitHub repositories should have code scanning enabled](https://portal.azure.com/#view/Microsoft_Azure_Security/GenericRecommendationDetailsBlade/assessmentKey/6672df26-ff2e-4282-83c3-e2f20571bd11/showSecurityCenterCommandBar~/false) | GitHub uses code scanning to analyze code in order to find security vulnerabilities and errors in code. Code scanning can be used to find, triage, and prioritize fixes for existing problems in your code. Code scanning can also prevent developers from introducing new problems. Scans can be scheduled for specific days and times, or scans can be triggered when a specific event occurs in the repository, such as a push. If code scanning finds a potential vulnerability or error in code, GitHub displays an alert in the repository. A vulnerability is a problem in a project's code that could be exploited to damage the confidentiality, integrity, or availability of the project. (No related policy) | Medium |
+| (Preview) [GitHub repositories should have secret scanning enabled](https://portal.azure.com/#view/Microsoft_Azure_Security/GenericRecommendationDetailsBlade/assessmentKey/1a600c61-6443-4ab4-bd28-7a6b6fb4691d/showSecurityCenterCommandBar~/false) | GitHub scans repositories for known types of secrets, to prevent fraudulent use of secrets that were accidentally committed to repositories. Secret scanning will scan the entire Git history on all branches present in the GitHub repository for any secrets. Examples of secrets are tokens and private keys that a service provider can issue for authentication. If a secret is checked into a repository, anyone who has read access to the repository can use the secret to access the external service with those privileges. Secrets should be stored in a dedicated, secure location outside the repository for the project. (No related policy) | High |
+| (Preview) [GitHub repositories should have Dependabot scanning enabled](https://portal.azure.com/#view/Microsoft_Azure_Security/GenericRecommendationDetailsBlade/assessmentKey/92643c1f-1a95-4b68-bbd2-5117f92d6e35/showSecurityCenterCommandBar~/false) | GitHub sends Dependabot alerts when it detects vulnerabilities in code dependencies that affect repositories. A vulnerability is a problem in a project's code that could be exploited to damage the confidentiality, integrity, or availability of the project or other projects that use its code. Vulnerabilities vary in type, severity, and method of attack. When code depends on a package that has a security vulnerability, this vulnerable dependency can cause a range of problems. (No related policy) | Medium |
The Defender for DevOps recommendations replace the deprecated vulnerability scanner for CI/CD workflows that was included in Defender for Containers.
Updates in August include:
Defender for Containers now shows vulnerabilities for running Windows containers.
-When vulnerabilities are detected, Defender for Cloud generates the following security recommendation listing the detected issues: [Running container images should have vulnerability findings resolved](https://ms.portal.azure.com/#view/Microsoft_Azure_Security_CloudNativeCompute/KubernetesRuntimeVisibilityRecommendationDetailsBlade/assessmentKey/41503391-efa5-47ee-9282-4eff6131462c/showSecurityCenterCommandBar~/false).
+When vulnerabilities are detected, Defender for Cloud generates the following security recommendation listing the detected issues: [Running container images should have vulnerability findings resolved](https://portal.azure.com/#view/Microsoft_Azure_Security_CloudNativeCompute/KubernetesRuntimeVisibilityRecommendationDetailsBlade/assessmentKey/41503391-efa5-47ee-9282-4eff6131462c/showSecurityCenterCommandBar~/false).
Learn more about [viewing vulnerabilities for running images](defender-for-containers-introduction.md#view-vulnerabilities-for-running-images-in-azure-container-registry-acr).
defender-for-cloud Supported Machines Endpoint Solutions Clouds Containers https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/defender-for-cloud/supported-machines-endpoint-solutions-clouds-containers.md
The **tabs** below show the features that are available, by environment, for Mic
#### Private link
-Defender for Containers relies on the Defender profile\extension for several features. The Defender profile\extension doesn't support the ability to ingest data through Private Link. You can disable public access for ingestion, so that only machines that are configured to send traffic through Azure Monitor Private Link can send data to that workstation. You can configure a private link by navigating to **`your workspace`** > **Network Isolation** and setting the Virtual networks access configurations to **No**.
+Defender for Containers relies on the Defender profile/extension for several features. The Defender profile/extension doesn't support the ability to ingest data through Private Link. You can disable public access for ingestion, so that only machines that are configured to send traffic through Azure Monitor Private Link can send data to that workstation. You can configure a private link by navigating to **`your workspace`** > **Network Isolation** and setting the Virtual networks access configurations to **No**.
:::image type="content" source="media/supported-machines-endpoint-solutions-cloud-containers/network-access.png" alt-text="Screenshot that shows where to go to turn off data ingestion.":::
Learn how to [use Azure Private Link to connect networks to Azure Monitor](../az
#### Private link
-Defender for Containers relies on the Defender profile\extension for several features. The Defender profile\extension doesn't support the ability to ingest data through Private Link. You can disable public access for ingestion, so that only machines that are configured to send traffic through Azure Monitor Private Link can send data to that workstation. You can configure a private link by navigating to **`your workspace`** > **Network Isolation** and setting the Virtual networks access configurations to **No**.
+Defender for Containers relies on the Defender profile/extension for several features. The Defender profile/extension doesn't support the ability to ingest data through Private Link. You can disable public access for ingestion, so that only machines that are configured to send traffic through Azure Monitor Private Link can send data to that workstation. You can configure a private link by navigating to **`your workspace`** > **Network Isolation** and setting the Virtual networks access configurations to **No**.
:::image type="content" source="media/supported-machines-endpoint-solutions-cloud-containers/network-access.png" alt-text="Screenshot that shows where to go to turn off data ingestion.":::
Outbound proxy without authentication and outbound proxy with basic authenticati
#### Private link
-Defender for Containers relies on the Defender profile\extension for several features. The Defender profile\extension doesn't support the ability to ingest data through Private Link. You can disable public access for ingestion, so that only machines that are configured to send traffic through Azure Monitor Private Link can send data to that workstation. You can configure a private link by navigating to **`your workspace`** > **Network Isolation** and setting the Virtual networks access configurations to **No**.
+Defender for Containers relies on the Defender profile/extension for several features. The Defender profile/extension doesn't support the ability to ingest data through Private Link. You can disable public access for ingestion, so that only machines that are configured to send traffic through Azure Monitor Private Link can send data to that workstation. You can configure a private link by navigating to **`your workspace`** > **Network Isolation** and setting the Virtual networks access configurations to **No**.
:::image type="content" source="media/supported-machines-endpoint-solutions-cloud-containers/network-access.png" alt-text="Screenshot that shows where to go to turn off data ingestion.":::
Ensure your Kubernetes node is running on one of the verified supported operatin
#### Private link
-Defender for Containers relies on the Defender profile\extension for several features. The Defender profile\extension doesn't support the ability to ingest data through Private Link. You can disable public access for ingestion, so that only machines that are configured to send traffic through Azure Monitor Private Link can send data to that workstation. You can configure a private link by navigating to **`your workspace`** > **Network Isolation** and setting the Virtual networks access configurations to **No**.
+Defender for Containers relies on the Defender profile/extension for several features. The Defender profile/extension doesn't support the ability to ingest data through Private Link. You can disable public access for ingestion, so that only machines that are configured to send traffic through Azure Monitor Private Link can send data to that workstation. You can configure a private link by navigating to **`your workspace`** > **Network Isolation** and setting the Virtual networks access configurations to **No**.
:::image type="content" source="media/supported-machines-endpoint-solutions-cloud-containers/network-access.png" alt-text="Screenshot that shows where to go to turn off data ingestion.":::
defender-for-cloud Upcoming Changes https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/defender-for-cloud/upcoming-changes.md
Title: Important changes coming to Microsoft Defender for Cloud description: Upcoming changes to Microsoft Defender for Cloud that you might need to be aware of and for which you might need to plan Previously updated : 11/08/2022 Last updated : 11/13/2022 # Important upcoming changes to Microsoft Defender for Cloud
If you're looking for the latest release notes, you'll find them in the [What's
### The ability to create custom assessments in AWS and GCP (Preview) is set to be deprecated
-**Estimated date for change: November 21st, 2022**
+**Estimated date for change: November 2022**
The ability to create custom assessments for [AWS accounts](how-to-manage-aws-assessments-standards.md#create-a-new-custom-assessment-for-your-aws-account-preview) and [GCP projects](how-to-manage-gcp-assessments-standards.md#create-a-new-custom-assessment-for-your-gcp-project-preview) (Preview) is set to be deprecated. This feature will be replaced by with a new feature that will be a part of the [Defender CSPM](concept-cloud-security-posture-management.md) plan, which will be released in the future.
The ability to create custom assessments for [AWS accounts](how-to-manage-aws-as
**Estimated date for change: November 2022**
-The recommendation [`Lambda functions should have a dead-letter queue configured`](https://ms.portal.azure.com/#view/Microsoft_Azure_Security/AwsRecommendationDetailsBlade/assessmentKey/dcf10b98-798f-4734-9afd-800916bf1e65/showSecurityCenterCommandBar~/false) is set to be deprecated.
+The recommendation [`Lambda functions should have a dead-letter queue configured`](https://portal.azure.com/#view/Microsoft_Azure_Security/AwsRecommendationDetailsBlade/assessmentKey/dcf10b98-798f-4734-9afd-800916bf1e65/showSecurityCenterCommandBar~/false) is set to be deprecated.
| Recommendation | Description | Severity | |--|--|--|
The recommendation [`Lambda functions should have a dead-letter queue configured
**Estimated date for change: December 2022**
-The recommendation [`Diagnostic logs in Virtual Machine Scale Sets should be enabled`](https://ms.portal.azure.com/#view/Microsoft_Azure_Security/GenericRecommendationDetailsBlade/assessmentKey/961eb649-3ea9-f8c2-6595-88e9a3aeedeb/showSecurityCenterCommandBar~/false) is set to be deprecated.
+The recommendation [`Diagnostic logs in Virtual Machine Scale Sets should be enabled`](https://portal.azure.com/#view/Microsoft_Azure_Security/GenericRecommendationDetailsBlade/assessmentKey/961eb649-3ea9-f8c2-6595-88e9a3aeedeb/showSecurityCenterCommandBar~/false) is set to be deprecated.
-The related [policy definition](https://ms.portal.azure.com/#view/Microsoft_Azure_Policy/PolicyDetailBlade/definitionId/%2Fproviders%2FMicrosoft.Authorization%2FpolicyDefinitions%2F7c1b1214-f927-48bf-8882-84f0af6588b1) will also be deprecated from any standards displayed in the regulatory compliance dashboard.
+The related [policy definition](https://portal.azure.com/#view/Microsoft_Azure_Policy/PolicyDetailBlade/definitionId/%2Fproviders%2FMicrosoft.Authorization%2FpolicyDefinitions%2F7c1b1214-f927-48bf-8882-84f0af6588b1) will also be deprecated from any standards displayed in the regulatory compliance dashboard.
| Recommendation | Description | Severity | |--|--|--|
defender-for-cloud Workflow Automation https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/defender-for-cloud/workflow-automation.md
To implement these policies:
|Goal |Policy |Policy ID | ||||
- |Workflow automation for security alerts |[Deploy Workflow Automation for Microsoft Defender for Cloud alerts](https://ms.portal.azure.com/#view/Microsoft_Azure_Policy/PolicyDetailBlade/definitionId/%2Fproviders%2FMicrosoft.Authorization%2FpolicyDefinitions%2Ff1525828-9a90-4fcf-be48-268cdd02361e)|f1525828-9a90-4fcf-be48-268cdd02361e|
- |Workflow automation for security recommendations |[Deploy Workflow Automation for Microsoft Defender for Cloud recommendations](https://ms.portal.azure.com/#view/Microsoft_Azure_Policy/PolicyDetailBlade/definitionId/%2Fproviders%2FMicrosoft.Authorization%2FpolicyDefinitions%2F73d6ab6c-2475-4850-afd6-43795f3492ef)|73d6ab6c-2475-4850-afd6-43795f3492ef|
- |Workflow automation for regulatory compliance changes|[Deploy Workflow Automation for Microsoft Defender for Cloud regulatory compliance](https://ms.portal.azure.com/#view/Microsoft_Azure_Policy/PolicyDetailBlade/definitionId/%2Fproviders%2FMicrosoft.Authorization%2FpolicyDefinitions%2F509122b9-ddd9-47ba-a5f1-d0dac20be63c)|509122b9-ddd9-47ba-a5f1-d0dac20be63c|
+ |Workflow automation for security alerts |[Deploy Workflow Automation for Microsoft Defender for Cloud alerts](https://portal.azure.com/#view/Microsoft_Azure_Policy/PolicyDetailBlade/definitionId/%2Fproviders%2FMicrosoft.Authorization%2FpolicyDefinitions%2Ff1525828-9a90-4fcf-be48-268cdd02361e)|f1525828-9a90-4fcf-be48-268cdd02361e|
+ |Workflow automation for security recommendations |[Deploy Workflow Automation for Microsoft Defender for Cloud recommendations](https://portal.azure.com/#view/Microsoft_Azure_Policy/PolicyDetailBlade/definitionId/%2Fproviders%2FMicrosoft.Authorization%2FpolicyDefinitions%2F73d6ab6c-2475-4850-afd6-43795f3492ef)|73d6ab6c-2475-4850-afd6-43795f3492ef|
+ |Workflow automation for regulatory compliance changes|[Deploy Workflow Automation for Microsoft Defender for Cloud regulatory compliance](https://portal.azure.com/#view/Microsoft_Azure_Policy/PolicyDetailBlade/definitionId/%2Fproviders%2FMicrosoft.Authorization%2FpolicyDefinitions%2F509122b9-ddd9-47ba-a5f1-d0dac20be63c)|509122b9-ddd9-47ba-a5f1-d0dac20be63c|
> [!NOTE] > The three workflow automation policies have recently been rebranded. nfortunately, this change came with an unavoidable breaking change. To learn how to mitigate this breaking change, see [mitigate breaking change](#mitigate-breaking-change),
Learn more about [Business continuity and disaster recovery for Azure Logic Apps
Recently we've rebranded the following recommendation: -- [Deploy Workflow Automation for Microsoft Defender for Cloud alerts](https://ms.portal.azure.com/#view/Microsoft_Azure_Policy/PolicyDetailBlade/definitionId/%2Fproviders%2FMicrosoft.Authorization%2FpolicyDefinitions%2Ff1525828-9a90-4fcf-be48-268cdd02361e)-- [Deploy Workflow Automation for Microsoft Defender for Cloud recommendations](https://ms.portal.azure.com/#view/Microsoft_Azure_Policy/PolicyDetailBlade/definitionId/%2Fproviders%2FMicrosoft.Authorization%2FpolicyDefinitions%2F73d6ab6c-2475-4850-afd6-43795f3492ef)-- [Deploy Workflow Automation for Microsoft Defender for Cloud regulatory compliance](https://ms.portal.azure.com/#view/Microsoft_Azure_Policy/PolicyDetailBlade/definitionId/%2Fproviders%2FMicrosoft.Authorization%2FpolicyDefinitions%2F509122b9-ddd9-47ba-a5f1-d0dac20be63c)
+- [Deploy Workflow Automation for Microsoft Defender for Cloud alerts](https://portal.azure.com/#view/Microsoft_Azure_Policy/PolicyDetailBlade/definitionId/%2Fproviders%2FMicrosoft.Authorization%2FpolicyDefinitions%2Ff1525828-9a90-4fcf-be48-268cdd02361e)
+- [Deploy Workflow Automation for Microsoft Defender for Cloud recommendations](https://portal.azure.com/#view/Microsoft_Azure_Policy/PolicyDetailBlade/definitionId/%2Fproviders%2FMicrosoft.Authorization%2FpolicyDefinitions%2F73d6ab6c-2475-4850-afd6-43795f3492ef)
+- [Deploy Workflow Automation for Microsoft Defender for Cloud regulatory compliance](https://portal.azure.com/#view/Microsoft_Azure_Policy/PolicyDetailBlade/definitionId/%2Fproviders%2FMicrosoft.Authorization%2FpolicyDefinitions%2F509122b9-ddd9-47ba-a5f1-d0dac20be63c)
Unfortunately, this change came with an unavoidable breaking change. The breaking change causes all of the old workflow automation policies that used the built-in connectors to be uncompliant.
defender-for-iot How To Forward Alert Information To Partners https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/defender-for-iot/organizations/how-to-forward-alert-information-to-partners.md
Enter the following parameters:
| Priority | User.Alert | | Date and time | Date and time that sensor sent the information | | Hostname | Sensor hostname |
-| Message | CEF:0 <br />Microsoft Defender for IoT/CyberX <br />Sensor name <br />Sensor version <br />Microsoft Defender for IoT Alert <br />Alert title <br />Integer indication of serverity. 1=**Warning**, 4=**Minor**, 8=**Major**, or 10=**Critical**.<br />msg= The message of the alert. <br />protocol= The protocol of the alert. <br />severity= **Warning**, **Minor**, **Major**, or **Critical**. <br />type= **Protocol Violation**, **Policy Violation**, **Malware**, **Anomaly**, or **Operational**. <br />UUID= UUID of the alert <br /> start= The time that the alert was detected. <br />Might vary from the time of the syslog server machine, and depends on the time-zone configuration of the forwarding rule. <br />src_ip= IP address of the source device. <br />src_mac= MAC address of the source device. (Optional) <br />dst_ip= IP address of the destination device.<br />dst_mac= MAC address of the destination device. (Optional)<br />cat= The alert group associated with the alert. |
+| Message | CEF:0 <br />Microsoft Defender for IoT/CyberX <br />Sensor name <br />Sensor version <br />Microsoft Defender for IoT Alert <br />Alert title <br />Integer indication of severity. 1=**Warning**, 4=**Minor**, 8=**Major**, or 10=**Critical**.<br />msg= The message of the alert. <br />protocol= The protocol of the alert. <br />severity= **Warning**, **Minor**, **Major**, or **Critical**. <br />type= **Protocol Violation**, **Policy Violation**, **Malware**, **Anomaly**, or **Operational**. <br />UUID= UUID of the alert (Optional) <br /> start= The time that the alert was detected. <br />Might vary from the time of the syslog server machine, and depends on the time-zone configuration of the forwarding rule. <br />src_ip= IP address of the source device. (Optional) <br />src_mac= MAC address of the source device. (Optional) <br />dst_ip= IP address of the destination device. (Optional)<br />dst_mac= MAC address of the destination device. (Optional)<br />cat= The alert group associated with the alert. |
| Syslog LEEF output format | Description | |--|--|
defender-for-iot How To Investigate All Enterprise Sensor Detections In A Device Inventory https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/defender-for-iot/organizations/how-to-investigate-all-enterprise-sensor-detections-in-a-device-inventory.md
Last updated 07/12/2022
Use the **Device inventory** page from an on-premises management console to manage all OT and IT devices detected by sensors connected to that console. Identify new devices detected, devices that might need troubleshooting, and more.
-For more information, see [What is a Defender for IoT committed device?](architecture.md#what-is-a-defender-for-iot-committed-device).
+For more information, see [What is a Defender for IoT committed device?](architecture.md#what-is-a-defender-for-iot-committed-device)
> [!TIP]
dev-box How To Configure Azure Compute Gallery https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/dev-box/how-to-configure-azure-compute-gallery.md
Follow these steps to manually assign each role:
1. On the Review + assign tab, select **Review + assign**. #### Dev center Managed Identity
-1. Open the gallery you want to attach to the dev center from the [Azure portal](https://ms.portal.azure.com/#blade/HubsExtension/BrowseResource/resourceType/Microsoft.Compute%2Fgalleries). You can also search for Azure Compute Galleries to find your gallery.
+1. Open the gallery you want to attach to the dev center from the [Azure portal](https://portal.azure.com/#blade/HubsExtension/BrowseResource/resourceType/Microsoft.Compute%2Fgalleries). You can also search for Azure Compute Galleries to find your gallery.
1. Select **Access Control (IAM)** from the left menu.
external-attack-surface-management Deploying The Defender Easm Azure Resource https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/external-attack-surface-management/deploying-the-defender-easm-azure-resource.md
Creating the EASM Azure resource involves two steps:
## Prerequisites
-Before you create a Defender EASM resource group, we recommend that you are familiar with how to access and use the [Microsoft Azure portal](https://ms.portal.azure.com/) and read the [Defender EASM Overview article](index.md) for key context on the product. You will need:
+Before you create a Defender EASM resource group, we recommend that you are familiar with how to access and use the [Microsoft Azure portal](https://portal.azure.com/) and read the [Defender EASM Overview article](index.md) for key context on the product. You will need:
- A valid Azure subscription or free Defender EASM trial account. If you donΓÇÖt have an [Azure subscription](../guides/developer/azure-developer-guide.md#understanding-accounts-subscriptions-and-billing), create a free Azure account before you begin.
healthcare-apis Use Smart On Fhir Proxy https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/healthcare-apis/azure-api-for-fhir/use-smart-on-fhir-proxy.md
Title: Azure Active Directory SMART on FHIR proxy
+ Title: SMART on FHIR - Azure API for FHIR
description: This tutorial describes how to use a proxy to enable SMART on FHIR applications with the Azure API for FHIR.
Last updated 06/03/2022
-# SMART on FHIR
+# SMART on FHIR overview
[SMART on FHIR](https://docs.smarthealthit.org/) is a set of open specifications to integrate partner applications with FHIR servers and electronic medical records systems that have Fast Healthcare Interoperability Resources (FHIR&#174;) interfaces. One of the main purposes of the specifications is to describe how an application should discover authentication endpoints for an FHIR server and start an authentication sequence.
These fields are meant to provide guidance to the app, but they don't convey any
Notice that the SMART on FHIR app launcher updates the **Launch URL** information at the bottom of the page. Select **Launch** to start the sample app, and you should see something like this sample:
-![SMART on FHIR app](media/tutorial-smart-on-fhir/smart-on-fhir-app.png)
-
+<!![SMART on FHIR app](media/tutorial-smart-on-fhir/smart-on-fhir-app.png)>
Inspect the token response to see how the launch context fields are passed on to the app.
-## Next steps
-
-In this tutorial, you've configured the Azure Active Directory SMART on FHIR proxy. To explore the use of SMART on FHIR applications with the Azure API for FHIR and the open-source FHIR Server for Azure, go to the repository of FHIR server samples on GitHub:
-
->[!div class="nextstepaction"]
->[FHIR server samples](https://github.com/Microsoft/fhir-server-samples)
- FHIR&#174; is a registered trademark of [HL7](https://hl7.org/fhir/) and is used with the permission of HL7.
healthcare-apis Smart On Fhir https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/healthcare-apis/fhir/smart-on-fhir.md
+
+ Title: SMART on FHIR - Azure Health Data Services
+description: This tutorial describes how to use a proxy to enable SMART on FHIR applications with the FHIR service.
++++++ Last updated : 11/10/2022++
+# SMART on FHIR
+
+[SMART on FHIR](https://docs.smarthealthit.org/) is a set of open specifications to integrate partner applications with FHIR servers and electronic medical records systems that have Fast Healthcare Interoperability Resources (FHIR&#174;) interfaces. One of the main purposes of the specifications is to describe how an application should discover authentication endpoints for an FHIR server and start an authentication sequence.
+
+Authentication is based on OAuth2. But because SMART on FHIR uses parameter naming conventions that arenΓÇÖt immediately compatible with Azure Active Directory (Azure AD), the Azure API for FHIR has a built-in Azure AD SMART on FHIR proxy that enables a subset of the SMART on FHIR launch sequences. Specifically, the proxy enables the [EHR launch sequence](https://hl7.org/fhir/smart-app-launch/#ehr-launch-sequence).
+
+This tutorial describes how to use the proxy to enable SMART on FHIR applications with FHIR Service.
+
+## Prerequisites
+
+- An instance of the FHIR Service
+- [.NET Core 2.2](https://dotnet.microsoft.com/download/dotnet-core/2.2)
+
+## Configure Azure AD registrations
+
+SMART on FHIR requires that `Audience` has an identifier URI equal to the URI of the FHIR service. The standard configuration of the FHIR service uses an `Audience` value of `https://azurehealthcareapis.com`. However, you can also set a value matching the specific URL of your FHIR service (for example `https://MYFHIRAPI.fhir.azurehealthcareapis.com`). This is required when working with the SMART on FHIR proxy.
+
+You'll also need a client application registration. Most SMART on FHIR applications are single-page JavaScript applications. So you should follow the instructions for configuring a [public client application in Azure AD](register-public-azure-ad-client-app.md).
+
+After you complete these steps, you should have:
+
+- A FHIR server with the audience set to `https://MYFHIRAPI.fhir.azurehealthcareapis.com`, where `MYFHIRAPI` is the name of your FHIR service instance.
+- A public client application registration. Make a note of the application ID for this client application.
+
+### Set admin consent for your app
+
+To use SMART on FHIR, you must first authenticate and authorize the app. The first time you use SMART on FHIR, you also must get administrative consent to let the app access your FHIR resources.
+
+If you don't have an ownership role in the app, contact the app owner and ask them to grant admin consent for you in the app.
+
+If you do have administrative privileges, complete the following steps to grant admin consent to yourself directly. (You also can grant admin consent to yourself later when you're prompted in the app.) You can complete the same steps to add other users as owners, so they can view and edit this app registration.
+
+To add yourself or another user as owner of an app:
+
+1. In the Azure portal, go to Azure Active Directory.
+2. In the left menu, select **App Registration**.
+3. Search for the app registration you created, and then select it.
+4. In the left menu, under **Manage**, select **Owners**.
+5. Select **Add owners**, and then add yourself or the user you want to have admin consent.
+6. Select **Save**.
+
+## Enable the SMART on FHIR proxy
+
+Enable the SMART on FHIR proxy in the **Authentication** settings for your FHIR instance by selecting the **SMART on FHIR proxy** check box.
+Enable CORS : Because most SMART on FHIR applications are single-page JavaScript apps, you need to [enable cross-origin resource sharing (CORS)](configure-cross-origin-resource-sharing.md)
+Configure the reply URL: The SMART on FHIR proxy acts as an intermediary between the SMART on FHIR app and Azure AD. The authentication reply (the authentication code) must go to the SMART on FHIR proxy instead of the app itself. The proxy then forwards the reply to the app.
+
+Because of this two-step relay of the authentication code, you need to set the reply URL (callback) for your Azure AD client application to a URL that is a combination of the reply URL for the SMART on FHIR proxy and the reply URL for the SMART on FHIR app. The combined reply URL takes this form:
+
+```http
+https://MYFHIRAPI.azurehealthcareapis.com/AadSmartOnFhirProxy/callback/aHR0cHM6Ly9sb2NhbGhvc3Q6NTAwMS9zYW1wbGVhcHAvaW5kZXguaHRtbA
+```
+
+In that reply, `aHR0cHM6Ly9sb2NhbGhvc3Q6NTAwMS9zYW1wbGVhcHAvaW5kZXguaHRtbA` is a URL-safe, base64-encoded version of the reply URL for the SMART on FHIR app. For the SMART on FHIR app launcher, when the app is running locally, the reply URL is `https://localhost:5001/sampleapp/https://docsupdatetracker.net/index.html`.
+
+You can generate the combined reply URL by using a script like this:
+
+```PowerShell
+$replyUrl = "https://localhost:5001/sampleapp/https://docsupdatetracker.net/index.html"
+$fhirServerUrl = "https://MYFHIRAPI.azurewebsites.net"
+$bytes = [System.Text.Encoding]::UTF8.GetBytes($ReplyUrl)
+$encodedText = [Convert]::ToBase64String($bytes)
+$encodedText = $encodedText.TrimEnd('=');
+$encodedText = $encodedText.Replace('/','_');
+$encodedText = $encodedText.Replace('+','-');
+
+$newReplyUrl = $FhirServerUrl.TrimEnd('/') + "/AadSmartOnFhirProxy/callback/" + $encodedText
+```
+
+Add the reply URL to the public client application that you created earlier for Azure AD
+
+<!![Reply URL configured for the public client](media/tutorial-smart-on-fhir/configure-reply-url.png)>
+
+## Get a test patient
+
+To test the FHIR service and the SMART on FHIR proxy, you'll need to have at least one patient in the database. If you've not interacted with the API yet, and you don't have data in the database, see [Access the FHIR service using Postman](./../fhir/use-postman.md) to load a patient. Make a note of the ID of a specific patient.
+
+## Download the SMART on FHIR app launcher
+
+The open-source [FHIR Server for Azure repository](https://github.com/Microsoft/fhir-server) includes a simple SMART on FHIR app launcher and a sample SMART on FHIR app. In this tutorial, use this SMART on FHIR launcher locally to test the setup.
+
+You can clone the GitHub repository and go to the application by using these commands:
+
+```PowerShell
+git clone https://github.com/Microsoft/fhir-server
+cd fhir-server/samples/apps/SmartLauncher
+```
+
+The application needs a few configuration settings, which you can set in `appsettings.json`:
+
+```json
+{
+ "FhirServerUrl": "https://MYFHIRAPI.fhir.azurehealthcareapis.com",
+ "ClientId": "APP-ID",
+ "DefaultSmartAppUrl": "/sampleapp/launch.html"
+}
+```
+
+We recommend that you use the `dotnet user-secrets` feature:
+
+```PowerShell
+dotnet user-secrets set FhirServerUrl https://MYFHIRAPI.fhir.azurehealthcareapis.com
+dotnet user-secrets set ClientId <APP-ID>
+```
+
+Use this command to run the application:
+
+```PowerShell
+dotnet run
+```
+
+## Test the SMART on FHIR proxy
+
+After you start the SMART on FHIR app launcher, you can point your browser to `https://localhost:5001`, where you should see the following screen:
+
+![Screenshot showing SMART on FHIR app launcher.](media/smart-on-fhir/smart-on-fhir-app-launcher.png)
+
+When you enter **Patient**, **Encounter**, or **Practitioner** information, you'll notice that the **Launch context** is updated. When you're using the FHIR service, the launch context is simply a JSON document that contains information about patient, practitioner, and more. This launch context is base64 encoded and passed to the SMART on FHIR app as the `launch` query parameter. According to the SMART on FHIR specification, this variable is opaque to the SMART on FHIR app and passed on to the identity provider.
+
+The SMART on FHIR proxy uses this information to populate fields in the token response. The SMART on FHIR app *can* use these fields to control which patient it requests data for and how it renders the application on the screen. The SMART on FHIR proxy supports the following fields:
+
+* `patient`
+* `encounter`
+* `practitioner`
+* `need_patient_banner`
+* `smart_style_url`
+
+These fields are meant to provide guidance to the app, but they don't convey any security information. A SMART on FHIR application can ignore them.
+
+Notice that the SMART on FHIR app launcher updates the **Launch URL** information at the bottom of the page. Select **Launch** to start the sample app, and you should see something like this sample:
+
+![Screenshot showing SMART on FHIR app.](media/smart-on-fhir/smart-on-fhir-app.png)
+
+Inspect the token response to see how the launch context fields are passed on to the app.
++
+FHIR&#174; is a registered trademark of [HL7](https://hl7.org/fhir/) and is used with the permission of HL7.
healthcare-apis Device Data Through Iot Hub https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/healthcare-apis/iot/device-data-through-iot-hub.md
Previously updated : 11/10/2022 Last updated : 11/11/2022
Now that your deployment has successfully completed, we'll connect to your IoT H
:::image type="content" source="media\iot-hub-to-iot-connector\iot-select-iot-hub.png" alt-text="Screenshot of VSCode with the Azure IoT Hub extension selecting the deployed IoT Hub for this tutorial " lightbox="media\iot-hub-to-iot-connector\iot-select-iot-hub.png":::
-3. To create a device within your IoT Hub to use to send a test message, select **…**, and then select **Create Device**. For this example, we'll be creating a device named **device-001**. You'll create a device name of your own choosing.
+3. To create a device within your IoT Hub to use to send a test message, select **…**, and then select **Create Device**. For this example, we'll be creating a device named **iot-001**. You'll create a device name of your own choosing.
:::image type="content" source="media\iot-hub-to-iot-connector\iot-create-device.png" alt-text="Screenshot of VSCode with the Azure IoT Hub extension selecting Create device for this tutorial." lightbox="media\iot-hub-to-iot-connector\iot-create-device.png":::
hpc-cache Increase Quota https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/hpc-cache/increase-quota.md
If you want to host more HPC Caches than your subscription currently allows, use the support request form in the Azure portal to request a quota increase.
-You also can use the [quotas page](https://ms.portal.azure.com/#view/Microsoft_Azure_Capacity/QuotaMenuBlade/~/overview) in the Azure portal to check your current quotas and request increases.
+You also can use the [quotas page](https://portal.azure.com/#view/Microsoft_Azure_Capacity/QuotaMenuBlade/~/overview) in the Azure portal to check your current quotas and request increases.
## Quota information
iot-hub Iot Hub Csharp Csharp Module Twin Getstarted https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/iot-hub/iot-hub-csharp-csharp-module-twin-getstarted.md
At the end of this article, you have two .NET console apps:
Now let's communicate to the cloud from your simulated device. Once a module identity is created, a module twin is implicitly created in IoT Hub. In this section, you create a .NET console app on your simulated device that updates the module twin reported properties.
-To retrieve your module connection string, navigate to your [IoT hub](https://ms.portal.azure.com/#view/HubsExtension/BrowseResource/resourceType/Microsoft.Devices%2FIotHubs) then select **Devices**. Find and select **myFirstDevice** to open it and then select **myFirstModule** to open it. In **Module Identity Details**, copy the **Connection string (primary key)** and save it for the console app.
+To retrieve your module connection string, navigate to your [IoT hub](https://portal.azure.com/#view/HubsExtension/BrowseResource/resourceType/Microsoft.Devices%2FIotHubs) then select **Devices**. Find and select **myFirstDevice** to open it and then select **myFirstModule** to open it. In **Module Identity Details**, copy the **Connection string (primary key)** and save it for the console app.
:::image type="content" source="./media/iot-hub-csharp-csharp-module-twin-getstarted/module-identity-detail.png" alt-text="Screenshot that shows the 'Module Identity Details' page." lightbox="./media/iot-hub-csharp-csharp-module-twin-getstarted/module-identity-detail.png":::
machine-learning How To Troubleshoot Online Endpoints https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/machine-learning/how-to-troubleshoot-online-endpoints.md
To run the `score.py` provided as part of the deployment, Azure creates a contai
- A package that was imported but isn't in the conda environment. - A syntax error. - A failure in the `init()` method.-- If `get-logs` isn't producing any logs, it usually means that the container has failed to start. To debug this issue, try [deploying locally](https://github.com/MicrosoftDocs/azure-docs/blob/master/articles/machine-learning/how-to-troubleshoot-online-endpoints.md#deploy-locally) instead.
+- If `get-logs` isn't producing any logs, it usually means that the container has failed to start. To debug this issue, try [deploying locally](#deploy-locally) instead.
- Readiness or liveness probes aren't set up correctly. - There's an error in the environment setup of the container, such as a missing dependency. - When you face `TypeError: register() takes 3 positional arguments but 4 were given` error, the error may be caused by the dependency between flask v2 and `azureml-inference-server-http`. See [FAQs for inference HTTP server](how-to-inference-server-http.md#1-i-encountered-the-following-error-during-server-startup) for more details.
marketplace Azure Container Technical Assets Kubernetes https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/marketplace/azure-container-technical-assets-kubernetes.md
For an example of how to integrate `container-package-app` into an Azure Pipelin
[cluster-extensions]: ../aks/cluster-extensions.md [azure-voting-app]: https://github.com/Azure-Samples/kubernetes-offer-samples/tree/main/samples/k8s-offer-azure-vote/azure-vote [createuidefinition]: ../azure-resource-manager/managed-applications/create-uidefinition-overview.md
-[sandbox-environment]: https://ms.portal.azure.com/#view/Microsoft_Azure_CreateUIDef/SandboxBlade
+[sandbox-environment]: https://portal.azure.com/#view/Microsoft_Azure_CreateUIDef/SandboxBlade
[arm-template-overview]: ../azure-resource-manager/templates/overview.md [namespaces-and-dns]: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/#namespaces-and-dns [create-acr]: ../container-registry/container-registry-get-started-azure-cli.md
marketplace Test Saas Preview Offer https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/marketplace/test-saas-preview-offer.md
If your offer is a _Contact Me_ listing, test that a lead is created as expected
Use the following steps to preview your offer.
-1. Sign in to [Azure portal](https://ms.portal.azure.com/#home). Make sure youΓÇÖre signed in to the Azure tenant you submitted the offer to.
+1. Sign in to [Azure portal](https://portal.azure.com/#home). Make sure youΓÇÖre signed in to the Azure tenant you submitted the offer to.
1. In Partner Center, go to the **Offportal.azureage, and then select the **Azure portal preview** link under the **Go live** button. ## Subscribe to a test plan
mysql Tutorial Wordpress App Service https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/mysql/flexible-server/tutorial-wordpress-app-service.md
In this tutorial, you'll learn how to create and deploy your first [WordPress](h
## Create WordPress site using Azure portal
-1. Browse to [https://ms.portal.azure.com/#create/WordPress.WordPress](https://ms.portal.azure.com/#create/WordPress.WordPress), or search for "WordPress" in the Azure Marketplace.
+1. Browse to [https://portal.azure.com/#create/WordPress.WordPress](https://portal.azure.com/#create/WordPress.WordPress), or search for "WordPress" in the Azure Marketplace.
:::image type="content" source="./media/tutorial-wordpress-app-service/01-portal-create-wordpress-on-app-service.png?text=WordPress from Azure Marketplace" alt-text="Screenshot of Create a WordPress site.":::
network-watcher View Network Topology https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/network-watcher/view-network-topology.md
# View the topology of an Azure virtual network > [!IMPORTANT]
-> Try the new [Topology (Preview)](network-insights-topology.md) experience which offers visualization of Azure resources for ease of inventory management and monitoring network at scale. Leverage it to visualize resources and their dependencies across subscriptions, regions and locations. [Click](https://ms.portal.azure.com/#view/Microsoft_Azure_Monitoring/AzureMonitoringBrowseBlade/~/overview) to navigate to the experience.
+> Try the new [Topology (Preview)](network-insights-topology.md) experience which offers visualization of Azure resources for ease of inventory management and monitoring network at scale. Leverage it to visualize resources and their dependencies across subscriptions, regions and locations. [Click](https://portal.azure.com/#view/Microsoft_Azure_Monitoring/AzureMonitoringBrowseBlade/~/overview) to navigate to the experience.
In this article, you learn how to view resources in a Microsoft Azure virtual network, and the relationships between the resources. For example, a virtual network contains subnets. Subnets contain resources, such as Azure Virtual Machines (VM). VMs have one or more network interfaces. Each subnet can have a network security group and a route table associated to it. The topology capability of Azure Network Watcher enables you to view all of the resources in a virtual network, the resources associated to resources in a virtual network, and the relationships between the resources.
remote-rendering Create An Account https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/remote-rendering/how-tos/create-an-account.md
This chapter guides you through the steps to create an account for the **Azure R
The following steps are needed to create an account for the Azure Remote Rendering service:
-1. Go to the Azure portal [portal.azure.com](https://ms.portal.azure.com/)
+1. Go to the Azure portal [portal.azure.com](https://portal.azure.com/)
1. Click the 'Create a resource' button 1. In the search field ("Search the marketplace"), type in "Remote Rendering" and hit 'enter'. 1. In the result list, click on the "Remote Rendering" tile
sentinel Best Practices Workspace Architecture https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/sentinel/best-practices-workspace-architecture.md
For more information, see [Data residency in Azure](https://azure.microsoft.com/
You may have situations planned where different teams will need access to the same data. For example, your SOC team must have access to all Microsoft Sentinel data, while operations and applications teams will need access to only specific parts. Independent security teams may also need to access Microsoft Sentinel features, but with varying sets of data.
-Combine [resource-context RBAC](resource-context-rbac.md) and [table-level RBAC](../azure-monitor/logs/manage-access.md#set-table-level-read-access) to provide your teams with a wide range of access options that should support most use cases.
+Combine [resource-context RBAC](resource-context-rbac.md) and [table-level RBAC](../azure-monitor/logs/manage-access.md#set-table-level-read-access-preview) to provide your teams with a wide range of access options that should support most use cases.
For more information, see [Permissions in Microsoft Sentinel](roles.md).
service-fabric Service Fabric Cluster Creation Setup Aad https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/service-fabric/service-fabric-cluster-creation-setup-aad.md
$resourceGroupName = 'mysftestcluster'
## Granting admin consent
-It may be necessary to 'Grant admin consent' for the 'API permissions' being configured. Navigate to [Azure App registrations](https://ms.portal.azure.com/#view/Microsoft_AAD_IAM/ActiveDirectoryMenuBlade/~/RegisteredApps) blade and add name of cluster to the filter. For both registrations, open 'API permissions', and select 'Grant admin consent for' if available.
+It may be necessary to 'Grant admin consent' for the 'API permissions' being configured. Navigate to [Azure App registrations](https://portal.azure.com/#view/Microsoft_AAD_IAM/ActiveDirectoryMenuBlade/~/RegisteredApps) blade and add name of cluster to the filter. For both registrations, open 'API permissions', and select 'Grant admin consent for' if available.
![Screenshot that shows Grant admin consent selected on the Azure App registrations blade.](media/service-fabric-cluster-creation-setup-aad/portal-client-api-grant.png)
service-fabric Service Fabric Cluster Creation Setup Azure Ad Via Portal https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/service-fabric/service-fabric-cluster-creation-setup-azure-ad-via-portal.md
For users who need full read/write access, find each user, and then under **Sele
## Configure clusters with Azure AD registrations
-In the Azure portal, open the [Service Fabric Clusters](https://ms.portal.azure.com/#view/HubsExtension/BrowseResource/resourceType/Microsoft.ServiceFabric%2Fclusters) pane.
+In the Azure portal, open the [Service Fabric Clusters](https://portal.azure.com/#view/HubsExtension/BrowseResource/resourceType/Microsoft.ServiceFabric%2Fclusters) pane.
### Service Fabric managed cluster configuration
service-health Service Health Overview https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/service-health/service-health-overview.md
Last updated 05/10/2019
# Service Health portal classic experience overview
-The [Service Health portal](https://ms.portal.azure.com/#view/Microsoft_Azure_Health/AzureHealthBrowseBlade/~/serviceIssues) is part of the [Service Health service](overview.md). The portal provides you with a customizable dashboard which tracks the health of your Azure services in the regions where you use them. In this dashboard, you can track active events like ongoing service issues, upcoming planned maintenance, or relevant health advisories. When events become inactive, they get placed in your health history for up to 90 days. Finally, you can use the Service Health dashboard to create and manage service health alerts which proactively notify you when service issues are affecting you.
+The [Service Health portal](https://portal.azure.com/#view/Microsoft_Azure_Health/AzureHealthBrowseBlade/~/serviceIssues) is part of the [Service Health service](overview.md). The portal provides you with a customizable dashboard which tracks the health of your Azure services in the regions where you use them. In this dashboard, you can track active events like ongoing service issues, upcoming planned maintenance, or relevant health advisories. When events become inactive, they get placed in your health history for up to 90 days. Finally, you can use the Service Health dashboard to create and manage service health alerts which proactively notify you when service issues are affecting you.
This article goes through the classic portal experience. The portal is in process of updating to a new user interface. Some users will see the experience below. Others will see the [updated service Health portal experience](service-health-portal-update.md). ## Service Health Events
-The [Service Health portal](https://ms.portal.azure.com/#view/Microsoft_Azure_Health/AzureHealthBrowseBlade/~/serviceIssues) tracks four types of health events that may impact your resources:
+The [Service Health portal](https://portal.azure.com/#view/Microsoft_Azure_Health/AzureHealthBrowseBlade/~/serviceIssues) tracks four types of health events that may impact your resources:
1. **Service issues** - Problems in the Azure services that affect you right now. 2. **Planned maintenance** - Upcoming maintenance that can affect the availability of your services in the future.
site-recovery Physical Server Enable Replication https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/site-recovery/physical-server-enable-replication.md
This tutorial, explains on how to enable replication for a physical server.
Physical server to Azure replication includes the following procedures: -- Sign in to the [Azure portal](https://ms.portal.azure.com/#home)
+- Sign in to the [Azure portal](https://portal.azure.com/#home)
- [Prepare Azure account](/azure/site-recovery/vmware-azure-set-up-replication-tutorial-preview#prepare-azure-account) - [Create a recovery Services vault](./quickstart-create-vault-template.md?tabs=CLI) - [Prepare infrastructure](#prepare-infrastructureset-up-azure-site-recovery-replication-appliance)
storage Archive Cost Estimation https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/storage/blobs/archive-cost-estimation.md
The following table compares the cost of archive storage with the cost of cold s
</table> > [!TIP]
-> To view these costs over 12 months, open the **Cool vs Archive** tab of this [workbook](https://azure.github.io/Storage/docs/backup-and-archive/azure-archive-storage-cost-estimation/azure-archive-storage-cost-estimation.xlsx). You can modify the values in that worksheet to estimate your costs.
+> To view live formula of these costs, open the **Cool vs Archive** tab of this [workbook](https://azure.github.io/Storage/docs/backup-and-archive/azure-archive-storage-cost-estimation/azure-archive-storage-cost-estimation.xlsx). You can modify the values in that worksheet to estimate your costs.
The following chart shows the impact on monthly spending given various read percentages. This chart assumes a monthly ingest of 1,000,000 files totaling 10,240 GB in size.
storage Elastic San Connect Linux https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/storage/elastic-san/elastic-san-connect-linux.md
description: Learn how to connect to an Azure Elastic SAN (preview) volume from
Previously updated : 10/27/2022 Last updated : 11/07/2022
storage Elastic San Connect Windows https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/storage/elastic-san/elastic-san-connect-windows.md
description: Learn how to connect to an Azure Elastic SAN (preview) volume from
Previously updated : 10/27/2022 Last updated : 11/07/2022
storage Elastic San Create https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/storage/elastic-san/elastic-san-create.md
description: Learn how to deploy an Azure Elastic SAN (preview) with the Azure p
Previously updated : 10/12/2022 Last updated : 11/07/2022
storage Elastic San Scale Targets https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/storage/elastic-san/elastic-san-scale-targets.md
description: Learn about the capacity, IOPS, and throughput rates for Azure Elas
Previously updated : 10/24/2022 Last updated : 11/07/2022
The appliance scale targets vary depending on region and redundancy of the SAN i
#### LRS -
-|Resource |France Central |Southeast Asia |
-||||
-|Maximum number of Elastic SAN that can be deployed per subscription per region |5 |5 |
-|Maximum total capacity (TiB) |100 |100 |
-|Maximum base capacity (TiB) |100 |100 |
-|Minimum total capacity (TiB) |1 |1 |
-|Maximum total IOPS |500,000 |500,000 |
-|Maximum total throughput (MB/s) |8,000 |8,000 |
+|Resource |France Central |Southeast Asia |West US 2 |
+|||||
+|Maximum number of Elastic SAN that can be deployed per subscription per region |5 |5 |5 |
+|Maximum total capacity (TiB) |100 |100 |600 |
+|Maximum base capacity (TiB) |100 |100 |400 |
+|Minimum total capacity (TiB) |1 |1 |1 |
+|Maximum total IOPS |500,000 |500,000 |2,000,000 |
+|Maximum total throughput (MB/s) |8,000 |8,000 |32,000 |
#### ZRS
-ZRS is only available in France Central.
+ZRS is only available in France Central and West US 2.
-|Resource |France Central |
-||||
-|Maximum number of Elastic SAN that can be deployed per subscription per region |5 |
-|Maximum total capacity (TiB) |200 |
-|Maximum base capacity (TiB) |100 |
-|Minimum total capacity (TiB) |1 |
-|Maximum total IOPS |500,000 |
-|Maximum total throughput (MB/s) |8,000 |
+|Resource |France Central |West US 2 |
+|||||
+|Maximum number of Elastic SAN that can be deployed per subscription per region |5 |5 |
+|Maximum total capacity (TiB) |200 |200 |
+|Maximum base capacity (TiB) |100 |100 |
+|Minimum total capacity (TiB) |1 |1 |
+|Maximum total IOPS |500,000 |500,000 |
+|Maximum total throughput (MB/s) |8,000 |8,000 |
## Volume group
stream-analytics Write To Delta Table Adls Gen2 https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/stream-analytics/write-to-delta-table-adls-gen2.md
The next step is to define an input source for the job to read data using the ev
4. Fill out the input form with the following values created through [TollApp Azure Template](https://portal.azure.com/#create/Microsoft.Template/uri/https%3A%2F%2Fraw.githubusercontent.com%2FAzure%2Fazure-stream-analytics%2Fmaster%2FSamples%2FTollApp%2FVSProjects%2FTollAppDeployment%2Fazuredeploy.json):
- 1. For **Input alias**, provide a friendly name to identify your input.
- 2. For **Subscription**, select your Azure subscription.
- 3. For **Resource group**, select the same resource that you used earlier in the TollApp deployment.
+ 1. For **Input alias**, enter **entrystream**.
+ 2. Choose **Select Event Hub from your subscriptions**.
+ 3. For **Subscription**, select your Azure subscription.
4. For **Event Hub namespace**, select the event hub namespace you created in the previous section. 5. Use default options on the remaining settings and select **Save**.
The next step is to define an output sink where the job can write data to. In th
3. Fill the output form with the following details and select **Save**: 1. For **Output alias**, enter **DeltaOutput**.
- 2. For **Subscription**, select your Azure subscription.
- 3. For **Resource group**, select the same resource under which you created the ADLS Gen2 account in prerequisites.
+ 2. Choose **Select Blob storage/ADLS Gen2 from your subscriptions**.
+ 3. For **Subscription**, select your Azure subscription.
4. For **Storage account**, choose the ADLS Gen2 account you created. 5. For **container**, provide a unique container name. 6. For **Event Serialization Format**, select **Delta Lake**. Although Delta lake is listed as one of the options here, it isn't a data format. Delta Lake uses versioned Parquet files to store your data. To learn more about [Delta lake](write-to-delta-lake.md).
synapse-analytics Proof Of Concept Playbook Data Explorer Pool https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/synapse-analytics/guidance/proof-of-concept-playbook-data-explorer-pool.md
Here are some examples of high-level tasks:
- Depending on the test results, you may need to fine-tune your workspace with a caching policy, partitioning policy, workspace sizing, or other optimizations. For recommendations, see [Optimize for high concurrency](/azure/data-explorer/high-concurrency?context=/azure/synapse-analytics/context/context). 1. Monitor for troubleshooting and performance: - For more information, see [Monitor Data Explorer performance, health, and usage with metrics](../data-explorer/data-explorer-monitor-pools.md).
- - For technical issues, please [create a support ticket](https://ms.portal.azure.com/#create/Microsoft.Support).
+ - For technical issues, please [create a support ticket](https://portal.azure.com/#create/Microsoft.Support).
1. Estimating the pricing: - At the end of the POC, you should use what you learned in the POC to [estimate the cost](https://azure.microsoft.com/pricing/calculator/?service=synapse-analytics) of a workspace that meets your requirements. 1. Close the POC:
synapse-analytics How To Monitor Synapse Link Sql Database https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/synapse-analytics/synapse-link/how-to-monitor-synapse-link-sql-database.md
Title: Monitor Azure Synapse Link for Azure SQL Database through Synapse Studio and Azure Monitor description: Learn how to monitor your Azure Synapse Link for Azure SQL Database link connections.-+
synapse-analytics How To Monitor Synapse Link Sql Server 2022 https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/synapse-analytics/synapse-link/how-to-monitor-synapse-link-sql-server-2022.md
Title: Monitor Azure Synapse Link for SQL Server 2022 through Synapse Studio and Azure Monitor description: Learn how to monitor your Azure Synapse Link for SQL Server 2022 link connections.-+
virtual-desktop Environment Setup https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/virtual-desktop/environment-setup.md
Title: Azure Virtual Desktop terminology - Azure
description: Learn about the basic elements of Azure Virtual Desktop, like host pools, app groups, and workspaces. Previously updated : 11/04/2022 Last updated : 11/12/2022
A host pool is a collection of Azure virtual machines that register to Azure Vir
A host pool can be one of two types: -- Personal, where each session host is assigned to individual users.-- Pooled, where session hosts can accept connections from any user authorized to an app group within the host pool.
+- Personal, where each session host is assigned to an individual user. Personal host pools provide dedicated desktops to end-users that optimize environments for performance and data separation.
+- Pooled, where user sessions can be load balanced to any session host in the host pool. There can be multiple user sessions on a single session host. Pooled host pools provide a shared remote experience to end-users, which ensures lower costs costs and greater efficiency.
+
+The following table goes into more detail about the features each type of host pool has:
+
+|Feature|Personal host pools|Pooled host pools|
+||||
+|Load balancing| User sessions are always load balanced to the session host the user is assigned to. If the user isn't currently assigned to a session host, the user session is load balanced to the next available session host in the host pool. | User sessions are load balanced to session hosts in the host pool based on user session count. You can choose which [load balancing algorithm](host-pool-load-balancing.md) to use: breadth-first or depth-first. |
+|Maximum session limit| One. | As many as the user wants. |
+|User assignment process| Customers can either directly assign users to session hosts or choose to have users automatically assigned to the first available session host. Users always have sessions on the session hosts they are assigned to. | Users aren't assigned to session hosts. After a user signs out and signs back in, their user session might get load balanced to a different session host. |
+|Scaling|None. | [Autoscale](autoscale-scaling-plan.md) for pooled host pools turns VMs on and off based on the capacity thresholds and schedules the customer defines. |
+|Updates|Updated with Windows Updates, [System Center Configuration Manager (SCCM)](configure-automatic-updates.md), or other software distribution configuration tools.|Updated by redeploying session hosts from updated images instead of traditional updates.|
+|User data| Each user only ever uses one session host, so they can store their user profile data in drive C on the operating system (OS) disk of the VM. | Users can connect to different session hosts every time they connect, so they should store their user profile data in FSLogix. |
You can set additional properties on the host pool to change its load-balancing behavior, how many sessions each session host can take, and what the user can do to session hosts in the host pool while signed in to their Azure Virtual Desktop sessions. You control the resources published to users through app groups.
virtual-desktop Management https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/virtual-desktop/management.md
Title: Manage session hosts with Microsoft Endpoint Manager - Azure Virtual Desktop
+ Title: Manage session hosts with Microsoft Intune - Azure Virtual Desktop
description: Recommended ways for you to manage your Azure Virtual Desktop session hosts.
Last updated 08/30/2022
-# Manage session hosts with Microsoft Endpoint Manager
+# Manage session hosts with Microsoft Intune
-We recommend using [Microsoft Endpoint Manager](https://www.microsoft.com/endpointmanager) to manage your Azure Virtual Desktop environment. Microsoft Endpoint Manager is a unified management platform that includes Microsoft Endpoint Configuration Manager and Microsoft Intune.
+We recommend using [Microsoft Intune](https://www.microsoft.com/endpointmanager) to manage your Azure Virtual Desktop environment. Microsoft Intune is a unified management platform that includes Microsoft Configuration Manager and Microsoft Intune.
-## Microsoft Endpoint Configuration Manager
+## Microsoft Configuration Manager
-Microsoft Endpoint Configuration Manager versions 1906 and later can manage your domain-joined and Hybrid Azure Active Directory (Azure AD)-joined session hosts. For more information, see [Supported OS versions for clients and devices for Configuration Manager](/mem/configmgr/core/plan-design/configs/supported-operating-systems-for-clients-and-devices#azure-virtual-desktop).
+Microsoft Configuration Manager versions 1906 and later can manage your domain-joined and Hybrid Azure Active Directory (Azure AD)-joined session hosts. For more information, see [Supported OS versions for clients and devices for Configuration Manager](/mem/configmgr/core/plan-design/configs/supported-operating-systems-for-clients-and-devices#azure-virtual-desktop).
## Microsoft Intune Microsoft Intune can manage your Azure AD-joined and Hybrid Azure AD-joined session hosts. To learn more about using Intune to manage Windows 11 and Windows 10 single session hosts, see [Using Azure Virtual Desktop with Intune](/mem/intune/fundamentals/windows-virtual-desktop).
-For Windows 11 and Windows 10 multi-session hosts, Intune currently supports device-based configurations. User scope configurations are also currently in preview on Windows 11. To learn more about using Intune to manage multi-session hosts, see [Using Azure Virtual Desktop multi-session with Intune](/mem/intune/fundamentals/windows-virtual-desktop-multi-session).
+For Windows 11 and Windows 10 multi-session hosts, Intune supports both device-based configurations on Windows 11 and Windows 10 and user-scope configurations on Windows 11. User-scope configurations for Windows 10 are currently in preview. To learn more about using Intune to manage multi-session hosts, see [Using Azure Virtual Desktop multi-session with Intune](/mem/intune/fundamentals/windows-virtual-desktop-multi-session).
> [!NOTE]
-> Managing Azure Virtual Desktop session hosts using Intune is currently supported in the Azure Public and Azure Government clouds.
+> Managing Azure Virtual Desktop session hosts using Intune is currently supported in the Azure Public and [Azure Government clouds](/enterprise-mobility-security/solutions/ems-intune-govt-service-description).
## Licensing
-[Microsoft Endpoint Configuration Manager and Microsoft Intune licenses](https://microsoft.com/microsoft-365/enterprise-mobility-security/compare-plans-and-pricing) are included with most Microsoft 365 subscriptions.
+[Microsoft Intune licenses](https://microsoft.com/microsoft-365/enterprise-mobility-security/compare-plans-and-pricing) are included with most Microsoft 365 subscriptions.
Learn more about licensing requirements at the following resources:
virtual-machines Disks Cross Tenant Customer Managed Keys https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/virtual-machines/disks-cross-tenant-customer-managed-keys.md
Title: Use a disk encryption set across Azure AD tenants (preview)
+ Title: Use a disk encryption set across Azure AD tenants
description: Learn how to use customer-managed keys with your Azure disks in different Azure AD tenants. Previously updated : 10/31/2022 Last updated : 11/11/2022
-# Encrypt managed disks with cross-tenant customer-managed keys (preview)
-
-> [!IMPORTANT]
-> Cross-tenant encryption with customer-managed keys (CMK) is currently in public preview.
-> This preview version is provided without a service level agreement, and isn't recommended for production workloads. Certain features might not be supported or might have constrained capabilities.
-> For more information, see [Supplemental Terms of Use for Microsoft Azure Previews](https://azure.microsoft.com/support/legal/preview-supplemental-terms/).
+# Encrypt managed disks with cross-tenant customer-managed keys
This article covers building a solution where you encrypt managed disks with customer-managed keys using Azure Key Vaults stored in a different Azure Active Directory (Azure AD) tenant. This configuration can be ideal for several scenarios, one example being Azure support for service providers that want to offer bring-your-own encryption keys to their customers where resources from the service provider's tenant are encrypted with keys from their customer's tenant.
virtual-machines Unmanaged Disks Deprecation https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/virtual-machines/unmanaged-disks-deprecation.md
Start planning your migration to Azure managed disks today.
1. Make a list of all affected VMs:
- - The VMs with **Uses managed disks** set to **No** on the [Azure portal's VM pane](https://ms.portal.azure.com/#blade/HubsExtension/BrowseResourceBlade/resourceType/Microsoft.ClassicCompute%2FVirtualMachines) are all the affected VMs within the subscription.
+ - The VMs with **Uses managed disks** set to **No** on the [Azure portal's VM pane](https://portal.azure.com/#blade/HubsExtension/BrowseResourceBlade/resourceType/Microsoft.ClassicCompute%2FVirtualMachines) are all the affected VMs within the subscription.
- You can also query Azure Resource Graph by using the [portal](https://portal.azure.com/#blade/HubsExtension/ArgQueryBlade/query/resources%0A%7C%20where%20type%20%3D%3D%20%22microsoft.classiccompute%2Fvirtualmachines%22) or [PowerShell](https://github.com/MicrosoftDocs/azure-docs/blob/master/articles/governance/resource-graph/concepts/work-with-data.md) to view the list of all flagged VMs and related information for the selected subscriptions. - On February 28, 2020, we sent out emails to subscription owners with a list of all subscriptions that contain these VMs. Please use them to build this list. 1. [Learn more](windows/migrate-to-managed-disks.md) about migrating your VMs to managed disks. For more information, see [Frequently asked questions about migrating to managed disks](faq-for-disks.yml).
-1. For technical questions, issues, and help with adding subscriptions to the allow list, [contact support](https://ms.portal.azure.com/#create/Microsoft.Support/Parameters/%7B%22pesId%22:%226f16735c-b0ae-b275-ad3a-03479cfa1396%22,%22supportTopicId%22:%228a82f77d-c3ab-7b08-d915-776b4ff64ff4%22%7D).
+1. For technical questions, issues, and help with adding subscriptions to the allowlist, [contact support](https://portal.azure.com/#create/Microsoft.Support/Parameters/%7B%22pesId%22:%226f16735c-b0ae-b275-ad3a-03479cfa1396%22,%22supportTopicId%22:%228a82f77d-c3ab-7b08-d915-776b4ff64ff4%22%7D).
1. Complete the migration as soon as possible to prevent business impact and to take advantage of the improved reliability, scalability, security, and new features of Azure managed disks. ## What resources are available for this migration? - [Microsoft Q&A](/answers/topics/azure-virtual-machines-migration.html): Microsoft and community support for migration.-- [Azure Migration Support](https://ms.portal.azure.com/#create/Microsoft.Support/Parameters/%7B%22pesId%22:%226f16735c-b0ae-b275-ad3a-03479cfa1396%22,%22supportTopicId%22:%221135e3d0-20e2-aec5-4ef0-55fd3dae2d58%22%7D): Dedicated support team for technical assistance during migration.
+- [Azure Migration Support](https://portal.azure.com/#create/Microsoft.Support/Parameters/%7B%22pesId%22:%226f16735c-b0ae-b275-ad3a-03479cfa1396%22,%22supportTopicId%22:%221135e3d0-20e2-aec5-4ef0-55fd3dae2d58%22%7D): Dedicated support team for technical assistance during migration.
- [Microsoft FastTrack](https://www.microsoft.com/fasttrack): FastTrack can assist eligible customers with planning and execution of this migration. [Nominate yourself](https://azure.microsoft.com/programs/azure-fasttrack/#nomination). - If your company/organization has partnered with Microsoft or works with Microsoft representatives such as cloud solution architects (CSAs) or technical account managers (TAMs), please work with them for additional resources for migration.
virtual-network-manager How To View Applied Configurations https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/virtual-network-manager/how-to-view-applied-configurations.md
All network group memberships are recorded and available for query inside [Azure
Open the [Azure portal](https://portal.azure.com) to find and use the Resource Graph Explorer with the following steps:
-1. Select **All services** in the left pane. Search for and select **Resource Graph Explorer**, or connect directly to the [Resource Graph Explorer](https://ms.portal.azure.com/#view/HubsExtension/ArgQueryBlade)
+1. Select **All services** in the left pane. Search for and select **Resource Graph Explorer**, or connect directly to the [Resource Graph Explorer](https://portal.azure.com/#view/HubsExtension/ArgQueryBlade)
1. In the **Query 1** portion of the window, enter the following query to find all network groups containing your virtual network: ```kusto
virtual-network Quickstart Create Nat Gateway Cli https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/virtual-network/nat-gateway/quickstart-create-nat-gateway-cli.md
description: Get started creating a NAT gateway using the Azure CLI.
-+ Last updated 02/04/2022
# Quickstart: Create a NAT gateway using the Azure CLI
-This quickstart shows you how to use Azure Virtual Network NAT service. You'll create a NAT gateway to provide outbound connectivity for a virtual machine in Azure.
+This quickstart shows you how to use the Azure Virtual Network NAT service. You'll create a NAT gateway to provide outbound connectivity for a virtual machine in Azure.
[!INCLUDE [quickstarts-free-trial-note](../../../includes/quickstarts-free-trial-note.md)]
Create a virtual network with a subnet with [az network vnet create](/cli/azure/
Create an Azure Bastion host to access the virtual machine.
-Use [az network vnet subnet create](/cli/azure/network/vnet/subnet#az-network-vnet-subnet-create) to create a Azure Bastion subnet.
+Use [az network vnet subnet create](/cli/azure/network/vnet/subnet#az-network-vnet-subnet-create) to create an Azure Bastion subnet.
:::code language="azurecli" source="~/azure_cli_scripts/virtual-network/create-nat-gateway/create-nat-gateway-cli.sh" id="subnet":::
In this section, we'll test the NAT gateway. We'll first discover the public IP
1. Make note of the public IP address:
- :::image type="content" source="./media/tutorial-create-nat-gateway-portal/find-public-ip.png" alt-text="Discover public IP address of NAT gateway" border="true":::
+ :::image type="content" source="./media/quickstart-create-nat-gateway-portal/find-public-ip.png" alt-text="Discover public IP address of NAT gateway" border="true":::
1. Select **All services** in the left-hand menu, select **All resources**, and then from the resources list, select **myVM** that is located in the **myResourceGroupNAT** resource group.
In this section, we'll test the NAT gateway. We'll first discover the public IP
1. Verify the IP address displayed matches the NAT gateway address you noted in the previous step:
- :::image type="content" source="./media/tutorial-create-nat-gateway-portal/my-ip.png" alt-text="Internet Explorer showing external outbound IP" border="true":::
+ :::image type="content" source="./media/quickstart-create-nat-gateway-portal/my-ip.png" alt-text="Internet Explorer showing external outbound IP" border="true":::
## Clean up resources
virtual-network Quickstart Create Nat Gateway Portal https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/virtual-network/nat-gateway/quickstart-create-nat-gateway-portal.md
Previously updated : 03/02/2021 Last updated : 11/11/2022 # Quickstart: Create a NAT gateway using the Azure portal
-This quickstart shows you how to use Azure Virtual Network NAT service. You'll create a NAT gateway to provide outbound connectivity for a virtual machine in Azure.
+This quickstart shows you how to use the Azure Virtual Network NAT service. You'll create a NAT gateway to provide outbound connectivity for a virtual machine in Azure.
## Prerequisites - An Azure account with an active subscription. [Create an account for free](https://azure.microsoft.com/free/?WT.mc_id=A261C142F).
-## Virtual network
+## Create a NAT gateway
+
+Before you deploy the NAT gateway resource and the other resources, a resource group is required to contain the resources deployed. In the following steps, you'll create a resource group, NAT gateway resource, and a public IP address. You can use one or more public IP address resources, public IP prefixes, or both.
-Before you deploy a VM and can use your NAT gateway, we need to create the resource group and virtual network.
+For information more about public IP prefixes and a NAT gateway, see [Manage NAT gateway](/azure/virtual-network/nat-gateway/manage-nat-gateway?tabs=manage-nat-portal#add-or-remove-a-public-ip-prefix)
1. Sign in to the [Azure portal](https://portal.azure.com).
-2. On the upper-left side of the screen, select **Create a resource > Networking > Virtual network** or search for **Virtual network** in the search box.
+2. In the search box at the top of the portal, enter **NAT gateway**. Select **NAT gateways** in the search results.
-3. Select **Create**.
+3. Select **+ Create**.
-4. In **Create virtual network**, enter or select this information in the **Basics** tab:
+4. In **Create network address translation (NAT) gateway**, enter or select this information in the **Basics** tab:
| **Setting** | **Value** | ||--| | **Project Details** | |
- | Subscription | Select your Azure subscription |
+ | Subscription | Select your Azure subscription. |
| Resource Group | Select **Create new**. </br> Enter **myResourceGroupNAT**. </br> Select **OK**. | | **Instance details** | |
- | Name | Enter **myVNet** |
- | Region | Select **(Europe) West Europe** |
-
-5. Select the **IP Addresses** tab or select the **Next: IP Addresses** button at the bottom of the page.
-
-6. In the **IP Addresses** tab, enter this information:
-
- | Setting | Value |
- |--|-|
- | IPv4 address space | Enter **10.1.0.0/16** |
-
-7. Select **+ Add subnet**.
-
-8. In **Edit subnet**, enter this information:
-
- | Setting | Value |
- |--|-|
- | Subnet name | Enter **mySubnet** |
- | Subnet address range | Enter **10.1.0.0/24** |
+ | NAT gateway name | Enter **myNATgateway** |
+ | Region | Select **West Europe** |
+ | Availability Zone | Select **No Zone**. |
+ | Idle timeout (minutes) | Enter **10**. |
-9. Select **Add**.
+ For information about availability zones and NAT gateway, see [NAT gateway and availability zones](/azure/virtual-network/nat-gateway/nat-availability-zones).
-10. Select the **Security** tab.
+5. Select the **Outbound IP** tab, or select the **Next: Outbound IP** button at the bottom of the page.
-11. Under **BastionHost**, select **Enable**. Enter this information:
+6. In the **Outbound IP** tab, enter or select the following information:
- | Setting | Value |
- |--|-|
- | Bastion name | Enter **myBastionHost** |
- | AzureBastionSubnet address space | Enter **10.1.1.0/24** |
- | Public IP Address | Select **Create new**. </br> For **Name**, enter **myBastionIP**. </br> Select **OK**. |
+ | **Setting** | **Value** |
+ | -- | |
+ | Public IP addresses | Select **Create a new public IP address**. </br> In **Name**, enter **myPublicIP**. </br> Select **OK**. |
-12. Select the **Review + create** tab or select the **Review + create** button.
+7. Select the **Review + create** tab, or select the blue **Review + create** button at the bottom of the page.
-13. Select **Create**.
+8. Select **Create**.
-## NAT gateway
+## Virtual network
-You can use one or more public IP address resources, public IP prefixes, or both. We'll add a public IP resource and a NAT gateway resource.
+Before you deploy a virtual machine and can use your NAT gateway, you need to create the virtual network. This virtual network will contain the virtual machine created in later steps.
-1. On the upper-left side of the screen, select **Create a resource > Networking > NAT gateway** or search for **NAT gateway** in the search box.
+1. In the search box at the top of the portal, enter **Virtual network**. Select **Virtual networks** in the search results.
-2. Select **Create**.
+2. Select **Create**.
-3. In **Create network address translation (NAT) gateway**, enter or select this information in the **Basics** tab:
+3. In **Create virtual network**, enter or select this information in the **Basics** tab:
| **Setting** | **Value** | ||--| | **Project Details** | |
- | Subscription | Select your Azure subscription. |
+ | Subscription | Select your Azure subscription |
| Resource Group | Select **myResourceGroupNAT**. | | **Instance details** | |
- | Name | Enter **myNATgateway** |
- | Region | Select **(Europe) West Europe** |
- | Availability Zone | Select **None**. |
- | Idle timeout (minutes) | Enter **10**. |
+ | Name | Enter **myVNet** |
+ | Region | Select **(Europe) West Europe** |
-4. Select the **Outbound IP** tab, or select the **Next: Outbound IP** button at the bottom of the page.
+4. Select the **IP Addresses** tab or select the **Next: IP Addresses** button at the bottom of the page.
-5. In the **Outbound IP** tab, enter or select the following information:
+5. Accept the default IPv4 address space of **10.1.0.0/16**.
- | **Setting** | **Value** |
- | -- | |
- | Public IP addresses | Select **Create a new public IP address**. </br> In **Name**, enter **myPublicIP**. </br> Select **OK**. |
+6. In the subnet section in **Subnet name**, select the **default** subnet.
+
+7. In **Edit subnet**, enter this information:
+
+ | Setting | Value |
+ |--|-|
+ | Subnet name | Enter **mySubnet** |
+ | Subnet address range | Enter **10.1.0.0/24** |
+ | **NAT GATEWAY** |
+ | NAT gateway | Select **myNATgateway**. |
-6. Select the **Subnet** tab, or select the **Next: Subnet** button at the bottom of the page.
+8. Select **Save**.
-7. In the **Subnet** tab, select **myVNet** in the **Virtual network** pull-down.
+9. Select the **Security** tab.
-8. Check the box next to **mySubnet**.
+10. Under **BastionHost**, select **Enable**. Enter this information:
-9. Select the **Review + create** tab, or select the blue **Review + create** button at the bottom of the page.
+ | Setting | Value |
+ |--|-|
+ | Bastion name | Enter **myBastionHost** |
+ | AzureBastionSubnet address space | Enter **10.1.1.0/26** |
+ | Public IP Address | Select **Create new**. </br> For **Name**, enter **myBastionIP**. </br> Select **OK**. |
-10. Select **Create**.
+11. Select the **Review + create** tab or select the **Review + create** button.
+
+12. Select **Create**.
+
+It can take a few minutes for the deployment of the virtual network to complete. Proceed to the next steps when the deployment completes.
## Virtual machine In this section, you'll create a virtual machine to test the NAT gateway and verify the public IP address of the outbound connection.
-1. On the upper-left side of the portal, select **Create a resource** > **Compute** > **Virtual machine**.
+1. In the search box at the top of the portal, enter **Virtual machine**. Select **Virtual machines** in the search results.
+
+2. Select **+ Create** > **Azure virtual machine**.
2. In the **Create a virtual machine** page in the **Basics** tab, enter, or select the following information:
In this section, you'll create a virtual machine to test the NAT gateway and ver
| Virtual machine name | Enter **myVM**. | | Region | Select **(Europe) West Europe**. | | Availability options | Select **No infrastructure redundancy required**. |
- | Image | Select **Windows Server 2019 Datacenter - Gen2**. |
- | Size | Select **Standard_DS1_v2**. |
+ | Security type | Select **Standard**. |
+ | Image | Select **Windows Server 2022 Datacenter: Azure Edition - Gen2**. |
+ | Size | Select a size. |
| **Administrator account** | | | Username | Enter a username for the virtual machine. | | Password | Enter a password. |
In this section, you'll create a virtual machine to test the NAT gateway and ver
| -- | | | **Network interface** | | | Virtual network | Select **myVNet**. |
- | Subnet | Select **mySubnet**. |
+ | Subnet | Select **mySubnet (10.1.0.0/24)**. |
| Public IP | Select **None**. | | NIC network security group | Select **Basic**. | | Public inbound ports | Select **None**. |
In this section, you'll create a virtual machine to test the NAT gateway and ver
## Test NAT gateway
-In this section, we'll test the NAT gateway. We'll first discover the public IP of the NAT gateway. We'll then connect to the test virtual machine and verify the outbound connection through the NAT gateway.
+In this section, you'll test the NAT gateway. You'll first discover the public IP of the NAT gateway. You'll then connect to the test virtual machine and verify the outbound connection through the NAT gateway.
-1. Find the public IP address for the NAT gateway on the **Overview** screen. Select **All services** in the left-hand menu, select **All resources**, and then select **myPublicIP**.
+1. In the search box at the top of the portal, enter **Public IP**. Select **Public IP addresses** in the search results.
-2. Make note of the public IP address:
+2. Select **myPublicIP**.
- :::image type="content" source="./media/tutorial-create-nat-gateway-portal/find-public-ip.png" alt-text="Discover public IP address of NAT gateway" border="true":::
+3. Make note of the public IP address:
-3. Select **All services** in the left-hand menu, select **All resources**, and then from the resources list, select **myVM** that is located in the **myResourceGroupNAT** resource group.
+ :::image type="content" source="./media/quickstart-create-nat-gateway-portal/find-public-ip.png" alt-text="Discover public IP address of NAT gateway" border="true":::
-4. On the **Overview** page, select **Connect**, then **Bastion**.
+4. In the search box at the top of the portal, enter **Virtual machine**. Select **Virtual machines** in the search results.
+
+5. Select **myVM**.
-5. Select the blue **Use Bastion** button.
+4. On the **Overview** page, select **Connect**, then **Bastion**.
-6. Enter the username and password entered during VM creation.
+6. Enter the username and password entered during VM creation. Select **Connect**.
-7. Open **Internet Explorer** on **myTestVM**.
+7. Open **Microsoft Edge** on **myTestVM**.
8. Enter **https://whatsmyip.com** in the address bar. 9. Verify the IP address displayed matches the NAT gateway address you noted in the previous step:
- :::image type="content" source="./media/tutorial-create-nat-gateway-portal/my-ip.png" alt-text="Internet Explorer showing external outbound IP" border="true":::
+ :::image type="content" source="./media/quickstart-create-nat-gateway-portal/my-ip.png" alt-text="Internet Explorer showing external outbound IP" border="true":::
## Clean up resources
virtual-network Quickstart Create Nat Gateway Powershell https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/virtual-network/nat-gateway/quickstart-create-nat-gateway-powershell.md
# Quickstart: Create a NAT gateway using Azure PowerShell
-This quickstart shows you how to use Azure Virtual Network NAT service. You'll create a NAT gateway to provide outbound connectivity for a virtual machine in Azure.
+This quickstart shows you how to use the Azure Virtual Network NAT service. You'll create a NAT gateway to provide outbound connectivity for a virtual machine in Azure.
## Prerequisites
In this section, we'll test the NAT gateway. We'll first discover the public IP
2. Make note of the public IP address:
- :::image type="content" source="./media/tutorial-create-nat-gateway-portal/find-public-ip.png" alt-text="Discover public IP address of NAT gateway" border="true":::
+ :::image type="content" source="./media/quickstart-create-nat-gateway-portal/find-public-ip.png" alt-text="Discover public IP address of NAT gateway" border="true":::
3. Select **All services** in the left-hand menu, select **All resources**, and then from the resources list, select **myVM** that is located in the **myResourceGroupNAT** resource group.
In this section, we'll test the NAT gateway. We'll first discover the public IP
9. Verify the IP address displayed matches the NAT gateway address you noted in the previous step:
- :::image type="content" source="./media/tutorial-create-nat-gateway-portal/my-ip.png" alt-text="Internet Explorer showing external outbound IP" border="true":::
+ :::image type="content" source="./media/quickstart-create-nat-gateway-portal/my-ip.png" alt-text="Internet Explorer showing external outbound IP" border="true":::
## Clean up resources