From 3210cada332f4702189e428edad55b23bf79ba52 Mon Sep 17 00:00:00 2001 From: v-bvishnu <129953098+v-bvishnu@users.noreply.github.com> Date: Thu, 12 Sep 2024 11:39:54 +0530 Subject: [PATCH 01/29] [Doc Feature][Update Bot/ME Project to use Certificate or MSI][3928131] --- ...e-certificate-or-msi-for-authentication.md | 123 ++++++++++++++++++ 1 file changed, 123 insertions(+) create mode 100644 msteams-platform/toolkit/update-bot-me-project-to-use-certificate-or-msi-for-authentication.md diff --git a/msteams-platform/toolkit/update-bot-me-project-to-use-certificate-or-msi-for-authentication.md b/msteams-platform/toolkit/update-bot-me-project-to-use-certificate-or-msi-for-authentication.md new file mode 100644 index 00000000000..58e863d1d4f --- /dev/null +++ b/msteams-platform/toolkit/update-bot-me-project-to-use-certificate-or-msi-for-authentication.md @@ -0,0 +1,123 @@ +--- +title: Update bot/ME project to use Certificate or MSI for Authentication +author: surbhigupta +description: Learn about Update bot/ME project to use Certificate or MSI for Authentication. +ms.topic: conceptual +ms.author: surbhigupta +ms.localizationpriority: high +--- + +# Update bot/ME project to use Certificate or MSI for Authentication + +## Introduction + +This guide provides step-by-step instructions to update your existing bot project from using a Bot ID and secret for authentication to using a certificate or Managed Service Identity (MSI). This change helps address compliance concerns related to using Entra ID with a secret. + +## Prerequisites + +Before proceeding, ensure that you have a Teams bot app deployed to Azure with the following resources: + +- An Azure Bot Service. +- An Entra ID with a secret used for bot authentication. +- A resource that hosts your bot app (e.g., Azure App Service, Azure Functions). + +## Updating to Certificate-Based Authentication + +### Step 1: Prepare and Upload the Certificate + +1. Obtain a certificate and private key. +2. Upload the certificate to your Entra ID. + +### Step 2: Update Your Code and Deploy + +#### For TypeScript/JavaScript Projects + +```javascript +const credentialsFactory = new ConfigurationServiceClientCredentialFactory({ + MicrosoftAppId: config.botId, + CertificatePrivateKey: '{your private key}', + CertificateThumbprint: '{your cert thumbprint}', + MicrosoftAppType: "MultiTenant", +}); + +const botFrameworkAuthentication = new ConfigurationBotFrameworkAuthentication( + {}, + credentialsFactory +); + +const adapter = new CloudAdapter(botFrameworkAuthentication); +``` + +#### For C# Projects + +```csharp +builder.Services.AddSingleton((e) => + new CertificateServiceClientCredentialsFactory("{your certificate}", "{your Entra ID}") +); +``` + +### Step 3: Test Your Bot App + +Ensure your bot functions correctly with the updated authentication method. + +### Step 4: Clean Up Secrets + +Once verified, delete the secrets in your Entra ID to maintain security compliance. + +## Updating to MSI-Based Authentication + +### Step 1: Create a New Azure Bot Service with MSI + +Since the Azure Bot Service’s ID and type cannot be modified after creation, follow these steps: + +1. Create a new Azure Bot Service, selecting **User-Assigned Managed Identity** as the type and **Create new Microsoft App ID** as the creation type. This will automatically create the Azure Bot Service and the associated managed identity. + + *Alternatively*: You can manually create a managed identity first, then create the Azure Bot Service using the "Use existing app registration" option. + +2. Update the new Azure Bot Service’s messaging endpoint and channels to match those of the old service. + +### Step 2: Assign the Managed Identity to Your Hosting Resource + +1. Navigate to your app’s hosting resource. +2. Select **Settings > Identity > User assigned**. +3. Add the managed identity created in the previous step. + +### Step 3: Update Your Code and Deploy + +#### For TypeScript/JavaScript Projects + +```javascript +const credentialsFactory = new ConfigurationServiceClientCredentialFactory({ + MicrosoftAppType: 'UserAssignedMsi', + MicrosoftAppId: '{your MSI’s client ID}', + MicrosoftAppTenantId: '{your MSI’s tenant ID}', +}); + +const botFrameworkAuthentication = new ConfigurationBotFrameworkAuthentication( + {}, + credentialsFactory +); + +const adapter = new CloudAdapter(botFrameworkAuthentication); +``` + +#### For C# Projects + +```csharp +builder.Configuration["MicrosoftAppType"] = "UserAssignedMsi"; +builder.Configuration["MicrosoftAppId"] = "{your MSI’s client ID}"; +builder.Configuration["MicrosoftAppPassword"] = "{your MSI’s tenant ID}"; +builder.Services.AddSingleton(); +``` + +### Step 4: Update the `BOT_ID` Value in the `.env` File + +Update the `BOT_ID` value in your `.env` file to reflect your newly created managed identity’s client ID. + +### Step 5: Test Your Bot App + +Verify that your bot operates as expected with the updated authentication. + +### Step 6: Clean Up Unneeded Resources + +If everything is functioning correctly, you can delete the old Azure Bot Service and the old Entra ID to clean up unnecessary resources. From d02d116b548e1e01b25152c401232af36cffda44 Mon Sep 17 00:00:00 2001 From: v-bvishnu <129953098+v-bvishnu@users.noreply.github.com> Date: Fri, 13 Sep 2024 02:23:19 +0530 Subject: [PATCH 02/29] Update --- msteams-platform/TOC.yml | 2 + ...e-certificate-or-msi-for-authentication.md | 188 +++++++++++------- 2 files changed, 117 insertions(+), 73 deletions(-) diff --git a/msteams-platform/TOC.yml b/msteams-platform/TOC.yml index c5be7c2b811..443f39465e1 100644 --- a/msteams-platform/TOC.yml +++ b/msteams-platform/TOC.yml @@ -175,6 +175,8 @@ - name: Add single sign-on to Teams app href: toolkit/add-single-sign-on.md - name: Using existing Microsoft Entra app in TeamsFx project + href: toolkit/use-existing-aad-app.md + - name: Update bot/ME project to use Certificate or MSI for Authentication href: toolkit/use-existing-aad-app.md - name: Customize Manifest items: diff --git a/msteams-platform/toolkit/update-bot-me-project-to-use-certificate-or-msi-for-authentication.md b/msteams-platform/toolkit/update-bot-me-project-to-use-certificate-or-msi-for-authentication.md index 58e863d1d4f..2cef10acc2b 100644 --- a/msteams-platform/toolkit/update-bot-me-project-to-use-certificate-or-msi-for-authentication.md +++ b/msteams-platform/toolkit/update-bot-me-project-to-use-certificate-or-msi-for-authentication.md @@ -9,115 +9,157 @@ ms.localizationpriority: high # Update bot/ME project to use Certificate or MSI for Authentication -## Introduction - -This guide provides step-by-step instructions to update your existing bot project from using a Bot ID and secret for authentication to using a certificate or Managed Service Identity (MSI). This change helps address compliance concerns related to using Entra ID with a secret. +Update your bot project to authenticate using a certificate or Managed Service Identity (MSI), rather than a bot ID and secret. This addresses compliance issues associated with the use of Entra ID and a secret. ## Prerequisites -Before proceeding, ensure that you have a Teams bot app deployed to Azure with the following resources: - -- An Azure Bot Service. -- An Entra ID with a secret used for bot authentication. -- A resource that hosts your bot app (e.g., Azure App Service, Azure Functions). +Ensure that you have a Teams bot app deployed to Azure with the following resources: -## Updating to Certificate-Based Authentication +* An Azure bot. +* An Entra ID with a secret used for bot authentication. +* A resource that hosts your bot app such as, Azure App Service, Azure Functions, and so on. -### Step 1: Prepare and Upload the Certificate +## Update to Certificate based Authentication 1. Obtain a certificate and private key. -2. Upload the certificate to your Entra ID. -### Step 2: Update Your Code and Deploy +1. Go to [Azure portal.](https://ms.portal.azure.com) + +1. Select **App registrations**. + + :::image type="content" source="../../assets/images/include-files/azure-app-registration.png" alt-text="Screenshot shows the Azure services to select App registrations."::: + +1. Select your registered app. + +1. In the left pane, under **Manage**, select **Certificates & secrets**. + +1. Under **Certificates**, select **Upload certificate**. + + :::image type="content" source="../assets/images/teams-toolkit-v2/certificates-secrets.png" alt-text="Screenshot shows the certificates and secrets option."::: + + The **Upload a certiificate** window appears. + + > [!NOTE] + > Upload a certiificate (public key) with one of the following file types: .cer, .pem, .crt + +1. Upload a certificate. + +1. Enter **Description**. + +1. Select **Add**. + + :::image type="content" source="../assets/images/teams-toolkit-v2/upload-certificate.png" alt-text="Screenshot shows the upload certificate option."::: + +1. Update your code and deploy. + + ```javascript + const credentialsFactory = new ConfigurationServiceClientCredentialFactory({ + MicrosoftAppId: config.botId, + CertificatePrivateKey: '{your private key}', + CertificateThumbprint: '{your cert thumbprint}', + MicrosoftAppType: "MultiTenant", + }); + + const botFrameworkAuthentication = new ConfigurationBotFrameworkAuthentication( + {}, + credentialsFactory + ); + + const adapter = new CloudAdapter(botFrameworkAuthentication); + ``` + + ```csharp + builder.Services.AddSingleton((e) => new CertificateServiceClientCredentialsFactory("{your certificate}", "{your entra id}")); + ``` + +1. Ensure you test your bot to confirm its operation aligns with the updated authentication. -#### For TypeScript/JavaScript Projects +1. Delete the secrets from Entra. -```javascript -const credentialsFactory = new ConfigurationServiceClientCredentialFactory({ - MicrosoftAppId: config.botId, - CertificatePrivateKey: '{your private key}', - CertificateThumbprint: '{your cert thumbprint}', - MicrosoftAppType: "MultiTenant", -}); + :::image type="content" source="../assets/images/teams-toolkit-v2/delete-client-secret-value.png" alt-text="Screenshot shows the delete client secret value."::: -const botFrameworkAuthentication = new ConfigurationBotFrameworkAuthentication( - {}, - credentialsFactory -); +## Update to MSI based Authentication -const adapter = new CloudAdapter(botFrameworkAuthentication); -``` +> [!NOTE] +> The **Azure Bot** service ID and type can't be modified after creation. -#### For C# Projects +To create a new **Azure Bot** service with MSI type, follow these steps: -```csharp -builder.Services.AddSingleton((e) => - new CertificateServiceClientCredentialsFactory("{your certificate}", "{your Entra ID}") -); -``` +1. Go to **Home**. +1. Select **+ Create a resource**. +1. In the search box, enter **Azure Bot**. +1. Select **Enter**. +1. Select **Azure Bot**. +1. Select **Create**. -### Step 3: Test Your Bot App + :::image type="content" source="../../assets/images/include-files/azure-bot.png" alt-text="Screenshot shows the creation of Azure bot."::: -Ensure your bot functions correctly with the updated authentication method. +1. Enter the bot name in **Bot handle**. +1. Select your **Subscription** from the dropdown list. +1. Select your **Resource group** from the dropdown list. -### Step 4: Clean Up Secrets + :::image type="content" source="../../assets/images/include-files/create-azure-bot.png" alt-text="Screenshot shows the option resource group and subscription in the Azure portal."::: -Once verified, delete the secrets in your Entra ID to maintain security compliance. + If you don't have an existing resource group, you can create a new resource group. To create a new resource group, follow these steps: -## Updating to MSI-Based Authentication + 1. Select **Create new**. + 1. Enter the resource name and select **OK**. + 1. Select a location from **New resource group location** dropdown list. -### Step 1: Create a New Azure Bot Service with MSI + :::image type="content" source="../../assets/images/include-files/new-resource-location.png" alt-text="Screenshot shows the new resource group option in Azure portal."::: -Since the Azure Bot Service’s ID and type cannot be modified after creation, follow these steps: +1. Under **Pricing**, select **Change plan**. -1. Create a new Azure Bot Service, selecting **User-Assigned Managed Identity** as the type and **Create new Microsoft App ID** as the creation type. This will automatically create the Azure Bot Service and the associated managed identity. + :::image type="content" source="../../assets/images/include-files/pricing-tier.png" alt-text="Screenshot shows the pricing option in Azure portal."::: - *Alternatively*: You can manually create a managed identity first, then create the Azure Bot Service using the "Use existing app registration" option. +1. Select **FO Free** > **Select**. -2. Update the new Azure Bot Service’s messaging endpoint and channels to match those of the old service. + :::image type="content" source="../../assets/images/include-files/pricing-free.png" alt-text="Screenshot shows the option to select free."::: -### Step 2: Assign the Managed Identity to Your Hosting Resource +1. Under **Microsoft App ID**, select **Type of App** as **User-Assigned Managed Identity**. -1. Navigate to your app’s hosting resource. -2. Select **Settings > Identity > User assigned**. -3. Add the managed identity created in the previous step. +1. In the **Creation type**, select **Create new Microsoft App ID**. -### Step 3: Update Your Code and Deploy + :::image type="content" source="../assets/images/teams-toolkit-v2/microsoft-app-id.png" alt-text="Screenshot shows the microsoft app id option."::: -#### For TypeScript/JavaScript Projects +OR -```javascript -const credentialsFactory = new ConfigurationServiceClientCredentialFactory({ - MicrosoftAppType: 'UserAssignedMsi', - MicrosoftAppId: '{your MSI’s client ID}', - MicrosoftAppTenantId: '{your MSI’s tenant ID}', -}); +1. You can manually create a managed identity first, then create the **Azure Bot** using the **Use existing app registration**. -const botFrameworkAuthentication = new ConfigurationBotFrameworkAuthentication( - {}, - credentialsFactory -); +1. Update the new **Azure Bot** messaging endpoint and channels to match those of the old service. -const adapter = new CloudAdapter(botFrameworkAuthentication); -``` +1. Go to your apps hosting resource. -#### For C# Projects +1. Select **Settings > Identity > User assigned**. -```csharp -builder.Configuration["MicrosoftAppType"] = "UserAssignedMsi"; -builder.Configuration["MicrosoftAppId"] = "{your MSI’s client ID}"; -builder.Configuration["MicrosoftAppPassword"] = "{your MSI’s tenant ID}"; -builder.Services.AddSingleton(); -``` +1. Add the managed identity that you've created. -### Step 4: Update the `BOT_ID` Value in the `.env` File +1. Update your code and deploy. -Update the `BOT_ID` value in your `.env` file to reflect your newly created managed identity’s client ID. + ```javascript + const credentialsFactory = new ConfigurationServiceClientCredentialFactory({ + MicrosoftAppType: 'UserAssignedMsi', + MicrosoftAppId: '{your MSI’s client ID}', + MicrosoftAppTenantId: '{your MSI’s tenant ID}', + }); + + const botFrameworkAuthentication = new ConfigurationBotFrameworkAuthentication( + {}, + credentialsFactory + ); + + const adapter = new CloudAdapter(botFrameworkAuthentication); + ``` -### Step 5: Test Your Bot App + ```csharp + builder.Configuration["MicrosoftAppType"] = "UserAssignedMsi"; + builder.Configuration["MicrosoftAppId"] = "{your MSI’s client ID}"; + builder.Configuration["MicrosoftAppPassword"] = "{your MSI’s tenant ID}"; + builder.Services.AddSingleton(); + ``` -Verify that your bot operates as expected with the updated authentication. +1. Update the `BOT_ID` in your `.env` file. -### Step 6: Clean Up Unneeded Resources +1. Ensure you test your bot to confirm its operation aligns with the updated authentication. -If everything is functioning correctly, you can delete the old Azure Bot Service and the old Entra ID to clean up unnecessary resources. +1. Delete the old Azure bot and the Entra ID. From edde96740b8fe1e7d86050dde1063319f2da717b Mon Sep 17 00:00:00 2001 From: v-bvishnu <129953098+v-bvishnu@users.noreply.github.com> Date: Fri, 13 Sep 2024 02:26:23 +0530 Subject: [PATCH 03/29] Update update-bot-me-project-to-use-certificate-or-msi-for-authentication.md --- ...-project-to-use-certificate-or-msi-for-authentication.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/msteams-platform/toolkit/update-bot-me-project-to-use-certificate-or-msi-for-authentication.md b/msteams-platform/toolkit/update-bot-me-project-to-use-certificate-or-msi-for-authentication.md index 2cef10acc2b..33634205861 100644 --- a/msteams-platform/toolkit/update-bot-me-project-to-use-certificate-or-msi-for-authentication.md +++ b/msteams-platform/toolkit/update-bot-me-project-to-use-certificate-or-msi-for-authentication.md @@ -1,13 +1,13 @@ --- -title: Update bot/ME project to use Certificate or MSI for Authentication +title: Update Bot or Message extension app to use Certificate or MSI for Authentication author: surbhigupta -description: Learn about Update bot/ME project to use Certificate or MSI for Authentication. +description: Learn about Update Bot or Message extension app to use Certificate or MSI for Authentication. ms.topic: conceptual ms.author: surbhigupta ms.localizationpriority: high --- -# Update bot/ME project to use Certificate or MSI for Authentication +# Update bot or Message extension app to use Certificate or MSI for Authentication Update your bot project to authenticate using a certificate or Managed Service Identity (MSI), rather than a bot ID and secret. This addresses compliance issues associated with the use of Entra ID and a secret. From 083d8d9df6d6fead92f007bcb81361d766cc3756 Mon Sep 17 00:00:00 2001 From: v-bvishnu <129953098+v-bvishnu@users.noreply.github.com> Date: Fri, 13 Sep 2024 02:28:05 +0530 Subject: [PATCH 04/29] Update TOC.yml --- msteams-platform/TOC.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/msteams-platform/TOC.yml b/msteams-platform/TOC.yml index 443f39465e1..38e4325bbea 100644 --- a/msteams-platform/TOC.yml +++ b/msteams-platform/TOC.yml @@ -176,8 +176,8 @@ href: toolkit/add-single-sign-on.md - name: Using existing Microsoft Entra app in TeamsFx project href: toolkit/use-existing-aad-app.md - - name: Update bot/ME project to use Certificate or MSI for Authentication - href: toolkit/use-existing-aad-app.md + - name: Update Bot or Message extension app to use Certificate or MSI for Authentication + href: toolkit/update-bot-me-app-to-use-certificate-or-msi-for-authentication.md - name: Customize Manifest items: - name: Customize Teams app Manifest From 144bb780fad9a7d7f8cdba280eebce8c99f8f9d5 Mon Sep 17 00:00:00 2001 From: v-bvishnu <129953098+v-bvishnu@users.noreply.github.com> Date: Fri, 13 Sep 2024 02:30:34 +0530 Subject: [PATCH 05/29] Images added. --- .../teams-toolkit-v2/certificates-secrets.png | Bin 0 -> 43653 bytes .../delete-client-secret-value.png | Bin 0 -> 45023 bytes .../teams-toolkit-v2/microsoft-app-id.png | Bin 0 -> 51466 bytes .../teams-toolkit-v2/upload-certificate.png | Bin 0 -> 18514 bytes 4 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 msteams-platform/assets/images/teams-toolkit-v2/certificates-secrets.png create mode 100644 msteams-platform/assets/images/teams-toolkit-v2/delete-client-secret-value.png create mode 100644 msteams-platform/assets/images/teams-toolkit-v2/microsoft-app-id.png create mode 100644 msteams-platform/assets/images/teams-toolkit-v2/upload-certificate.png diff --git a/msteams-platform/assets/images/teams-toolkit-v2/certificates-secrets.png b/msteams-platform/assets/images/teams-toolkit-v2/certificates-secrets.png new file mode 100644 index 0000000000000000000000000000000000000000..fc55c6323a51fb197f8f52cd7490ee3465307b90 GIT binary patch literal 43653 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 literal 0 HcmV?d00001 diff --git a/msteams-platform/assets/images/teams-toolkit-v2/delete-client-secret-value.png b/msteams-platform/assets/images/teams-toolkit-v2/delete-client-secret-value.png new file mode 100644 index 0000000000000000000000000000000000000000..81462d806a3d341272dad64c63a8be7237432e3c GIT binary patch literal 45023 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 literal 0 HcmV?d00001 diff --git a/msteams-platform/assets/images/teams-toolkit-v2/upload-certificate.png b/msteams-platform/assets/images/teams-toolkit-v2/upload-certificate.png new file mode 100644 index 0000000000000000000000000000000000000000..c2bd0a1d07d83cc20b56e03887c8941004310fd0 GIT binary patch literal 18514 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 Date: Fri, 13 Sep 2024 02:36:06 +0530 Subject: [PATCH 06/29] Updated. --- ...-to-use-certificate-or-msi-for-authentication.md} | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) rename msteams-platform/toolkit/{update-bot-me-project-to-use-certificate-or-msi-for-authentication.md => update-bot-me-app-to-use-certificate-or-msi-for-authentication.md} (84%) diff --git a/msteams-platform/toolkit/update-bot-me-project-to-use-certificate-or-msi-for-authentication.md b/msteams-platform/toolkit/update-bot-me-app-to-use-certificate-or-msi-for-authentication.md similarity index 84% rename from msteams-platform/toolkit/update-bot-me-project-to-use-certificate-or-msi-for-authentication.md rename to msteams-platform/toolkit/update-bot-me-app-to-use-certificate-or-msi-for-authentication.md index 33634205861..9ff57d81c53 100644 --- a/msteams-platform/toolkit/update-bot-me-project-to-use-certificate-or-msi-for-authentication.md +++ b/msteams-platform/toolkit/update-bot-me-app-to-use-certificate-or-msi-for-authentication.md @@ -27,7 +27,7 @@ Ensure that you have a Teams bot app deployed to Azure with the following resour 1. Select **App registrations**. - :::image type="content" source="../../assets/images/include-files/azure-app-registration.png" alt-text="Screenshot shows the Azure services to select App registrations."::: + :::image type="content" source="../assets/images/include-files/azure-app-registration.png" alt-text="Screenshot shows the Azure services to select App registrations."::: 1. Select your registered app. @@ -92,13 +92,13 @@ To create a new **Azure Bot** service with MSI type, follow these steps: 1. Select **Azure Bot**. 1. Select **Create**. - :::image type="content" source="../../assets/images/include-files/azure-bot.png" alt-text="Screenshot shows the creation of Azure bot."::: + :::image type="content" source="../assets/images/include-files/azure-bot.png" alt-text="Screenshot shows the creation of Azure bot."::: 1. Enter the bot name in **Bot handle**. 1. Select your **Subscription** from the dropdown list. 1. Select your **Resource group** from the dropdown list. - :::image type="content" source="../../assets/images/include-files/create-azure-bot.png" alt-text="Screenshot shows the option resource group and subscription in the Azure portal."::: + :::image type="content" source="../assets/images/include-files/create-azure-bot.png" alt-text="Screenshot shows the option resource group and subscription in the Azure portal."::: If you don't have an existing resource group, you can create a new resource group. To create a new resource group, follow these steps: @@ -106,15 +106,15 @@ To create a new **Azure Bot** service with MSI type, follow these steps: 1. Enter the resource name and select **OK**. 1. Select a location from **New resource group location** dropdown list. - :::image type="content" source="../../assets/images/include-files/new-resource-location.png" alt-text="Screenshot shows the new resource group option in Azure portal."::: + :::image type="content" source="../assets/images/include-files/new-resource-location.png" alt-text="Screenshot shows the new resource group option in Azure portal."::: 1. Under **Pricing**, select **Change plan**. - :::image type="content" source="../../assets/images/include-files/pricing-tier.png" alt-text="Screenshot shows the pricing option in Azure portal."::: + :::image type="content" source="../assets/images/include-files/pricing-tier.png" alt-text="Screenshot shows the pricing option in Azure portal."::: 1. Select **FO Free** > **Select**. - :::image type="content" source="../../assets/images/include-files/pricing-free.png" alt-text="Screenshot shows the option to select free."::: + :::image type="content" source="../assets/images/include-files/pricing-free.png" alt-text="Screenshot shows the option to select free."::: 1. Under **Microsoft App ID**, select **Type of App** as **User-Assigned Managed Identity**. From 1e5fc6d03ee827c7f17323a9f86240635589f235 Mon Sep 17 00:00:00 2001 From: v-bvishnu <129953098+v-bvishnu@users.noreply.github.com> Date: Fri, 13 Sep 2024 02:54:18 +0530 Subject: [PATCH 07/29] Update. --- .../teams-toolkit-v2/upload-certificate.png | Bin 18514 -> 14109 bytes ...e-certificate-or-msi-for-authentication.md | 14 +++----------- 2 files changed, 3 insertions(+), 11 deletions(-) diff --git a/msteams-platform/assets/images/teams-toolkit-v2/upload-certificate.png b/msteams-platform/assets/images/teams-toolkit-v2/upload-certificate.png index c2bd0a1d07d83cc20b56e03887c8941004310fd0..e4dd5d8d16f980cd1f2c75511ec9716295086586 100644 GIT binary patch literal 14109 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�`qqSEGxZ~3_N@-jx(ou@5up__Xwd&_wfR}g_FC` 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 W1eQHsC=eCi>4a{|y*#8Stv`R|= literal 18514 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 **Select**. - - :::image type="content" source="../assets/images/include-files/pricing-free.png" alt-text="Screenshot shows the option to select free."::: - 1. Under **Microsoft App ID**, select **Type of App** as **User-Assigned Managed Identity**. 1. In the **Creation type**, select **Create new Microsoft App ID**. :::image type="content" source="../assets/images/teams-toolkit-v2/microsoft-app-id.png" alt-text="Screenshot shows the microsoft app id option."::: -OR + OR -1. You can manually create a managed identity first, then create the **Azure Bot** using the **Use existing app registration**. + You can manually create a managed identity first, then create the **Azure Bot** using the **Use existing app registration**. 1. Update the new **Azure Bot** messaging endpoint and channels to match those of the old service. From 191fa952872ffc378cecf521232437d4e0a8df29 Mon Sep 17 00:00:00 2001 From: v-bvishnu <129953098+v-bvishnu@users.noreply.github.com> Date: Fri, 13 Sep 2024 03:08:44 +0530 Subject: [PATCH 08/29] Update update-bot-me-app-to-use-certificate-or-msi-for-authentication.md --- ...bot-me-app-to-use-certificate-or-msi-for-authentication.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/msteams-platform/toolkit/update-bot-me-app-to-use-certificate-or-msi-for-authentication.md b/msteams-platform/toolkit/update-bot-me-app-to-use-certificate-or-msi-for-authentication.md index 3a9e7eb6edd..5d8896382b0 100644 --- a/msteams-platform/toolkit/update-bot-me-app-to-use-certificate-or-msi-for-authentication.md +++ b/msteams-platform/toolkit/update-bot-me-app-to-use-certificate-or-msi-for-authentication.md @@ -9,11 +9,11 @@ ms.localizationpriority: high # Update Bot or Message extension app to use Certificate or MSI for Authentication -Update your bot project to authenticate using a certificate or Managed Service Identity (MSI), rather than a bot ID and secret. This addresses compliance issues associated with the use of Entra ID and a secret. +Update your bot or message extension app to authenticate using a certificate or Managed Service Identity (MSI), instead of a bot ID and secret. This action resolves compliance concerns related to the use of Entra ID and a secret. ## Prerequisites -Ensure that you have a Teams bot app deployed to Azure with the following resources: +Ensure that you've a Teams bot app deployed to Azure with the following resources: * An Azure bot. * An Entra ID with a secret used for bot authentication. From fd9542f476f7c68ca94a99cc83f4416ee4be28a2 Mon Sep 17 00:00:00 2001 From: v-bvishnu <129953098+v-bvishnu@users.noreply.github.com> Date: Fri, 13 Sep 2024 03:11:38 +0530 Subject: [PATCH 09/29] Update whats-new.md --- msteams-platform/whats-new.md | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/msteams-platform/whats-new.md b/msteams-platform/whats-new.md index cee1a0c535d..987f871c620 100644 --- a/msteams-platform/whats-new.md +++ b/msteams-platform/whats-new.md @@ -30,11 +30,9 @@ Discover Microsoft Teams platform features that are generally available (GA). Yo Teams platform features that are available to all app developers. -**2024 August** +**2024 September** -* ***August 26, 2024***: [Enhanced user experience for Teams app susbscriptions purchased from Teams Store.](concepts/deploy-and-publish/appsource/prepare/end-user-purchase-experience.md#subscription-purchase-experience) -* ***August 22, 2024***: [Dev Tools for Teams tabs are available in the new Microsoft Teams client.](tabs/how-to/developer-tools.md) -* ***August 21, 2024***: [Use sample prompts to guide the users for using various plugins within Copilot.](messaging-extensions/high-quality-message-extension.md#sample-prompts) +***September 17, 2024***: [Update Bot or Message extension app to use Certificate or MSI for Authentication.](toolkit/update-bot-me-app-to-use-certificate-or-msi-for-authentication.md) :::column-end::: :::row-end::: From 1c7b34af70e0c83a7546810d408ceb67f4a24151 Mon Sep 17 00:00:00 2001 From: v-bvishnu <129953098+v-bvishnu@users.noreply.github.com> Date: Fri, 13 Sep 2024 03:17:31 +0530 Subject: [PATCH 10/29] Update update-bot-me-app-to-use-certificate-or-msi-for-authentication.md --- ...me-app-to-use-certificate-or-msi-for-authentication.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/msteams-platform/toolkit/update-bot-me-app-to-use-certificate-or-msi-for-authentication.md b/msteams-platform/toolkit/update-bot-me-app-to-use-certificate-or-msi-for-authentication.md index 5d8896382b0..a1f884b9a37 100644 --- a/msteams-platform/toolkit/update-bot-me-app-to-use-certificate-or-msi-for-authentication.md +++ b/msteams-platform/toolkit/update-bot-me-app-to-use-certificate-or-msi-for-authentication.md @@ -9,7 +9,7 @@ ms.localizationpriority: high # Update Bot or Message extension app to use Certificate or MSI for Authentication -Update your bot or message extension app to authenticate using a certificate or Managed Service Identity (MSI), instead of a bot ID and secret. This action resolves compliance concerns related to the use of Entra ID and a secret. +Update your bot or message extension app to authenticate using a certificate or Managed Service Identity (MSI), instead of a bot ID and secret. This action resolves compliance concerns related to the use of Microsoft Entra ID and a secret. ## Prerequisites @@ -17,7 +17,7 @@ Ensure that you've a Teams bot app deployed to Azure with the following resource * An Azure bot. * An Entra ID with a secret used for bot authentication. -* A resource that hosts your bot app such as, Azure App Service, Azure Functions, and so on. +* A resource that hosts your bot app, such as Azure App Service, Azure Functions, and so on. ## Update to Certificate based Authentication @@ -37,7 +37,7 @@ Ensure that you've a Teams bot app deployed to Azure with the following resource :::image type="content" source="../assets/images/teams-toolkit-v2/certificates-secrets.png" alt-text="Screenshot shows the certificates and secrets option."::: - The **Upload a certiificate** window appears. + The **Upload a certificate** window appears. > [!NOTE] > Upload a certiificate (public key) with one of the following file types: .cer, .pem, .crt @@ -112,7 +112,7 @@ To create a new **Azure Bot** service with MSI type, follow these steps: 1. In the **Creation type**, select **Create new Microsoft App ID**. - :::image type="content" source="../assets/images/teams-toolkit-v2/microsoft-app-id.png" alt-text="Screenshot shows the microsoft app id option."::: + :::image type="content" source="../assets/images/teams-toolkit-v2/microsoft-app-id.png" alt-text="Screenshot shows the microsoft app ID option."::: OR From 4b7ef3c6649a0ff038de086a2d9d734003da928c Mon Sep 17 00:00:00 2001 From: v-preethah <117343020+v-preethah@users.noreply.github.com> Date: Sat, 14 Sep 2024 16:23:26 +0530 Subject: [PATCH 11/29] Update msteams-platform/toolkit/update-bot-me-app-to-use-certificate-or-msi-for-authentication.md Co-authored-by: yukun-dong --- ...e-bot-me-app-to-use-certificate-or-msi-for-authentication.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/msteams-platform/toolkit/update-bot-me-app-to-use-certificate-or-msi-for-authentication.md b/msteams-platform/toolkit/update-bot-me-app-to-use-certificate-or-msi-for-authentication.md index a1f884b9a37..f6240e30690 100644 --- a/msteams-platform/toolkit/update-bot-me-app-to-use-certificate-or-msi-for-authentication.md +++ b/msteams-platform/toolkit/update-bot-me-app-to-use-certificate-or-msi-for-authentication.md @@ -40,7 +40,7 @@ Ensure that you've a Teams bot app deployed to Azure with the following resource The **Upload a certificate** window appears. > [!NOTE] - > Upload a certiificate (public key) with one of the following file types: .cer, .pem, .crt + > Upload a certificate (public key) with one of the following file types: .cer, .pem, .crt 1. Upload a certificate. From 08ff12ea20dd83d6b38596da650fb442e76bc869 Mon Sep 17 00:00:00 2001 From: v-deabira Date: Sat, 14 Sep 2024 18:14:59 +0530 Subject: [PATCH 12/29] . --- ...se-certificate-or-msi-for-authentication.md | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/msteams-platform/toolkit/update-bot-me-app-to-use-certificate-or-msi-for-authentication.md b/msteams-platform/toolkit/update-bot-me-app-to-use-certificate-or-msi-for-authentication.md index a1f884b9a37..cd05edded1d 100644 --- a/msteams-platform/toolkit/update-bot-me-app-to-use-certificate-or-msi-for-authentication.md +++ b/msteams-platform/toolkit/update-bot-me-app-to-use-certificate-or-msi-for-authentication.md @@ -1,13 +1,13 @@ --- -title: Update Bot or Message extension app to use Certificate or MSI for Authentication +title: Update bot or message extension app to use certificate or MSI for authentication author: surbhigupta -description: Learn about Update Bot or Message extension app to use Certificate or MSI for Authentication. +description: Learn how to update bot or message extension app to use certificate or MSI for authentication. ms.topic: conceptual ms.author: surbhigupta ms.localizationpriority: high --- -# Update Bot or Message extension app to use Certificate or MSI for Authentication +# Update bot or message extension app to use certificate or MSI for authentication Update your bot or message extension app to authenticate using a certificate or Managed Service Identity (MSI), instead of a bot ID and secret. This action resolves compliance concerns related to the use of Microsoft Entra ID and a secret. @@ -17,9 +17,9 @@ Ensure that you've a Teams bot app deployed to Azure with the following resource * An Azure bot. * An Entra ID with a secret used for bot authentication. -* A resource that hosts your bot app, such as Azure App Service, Azure Functions, and so on. +* A resource that hosts your bot app, such as Azure App Service, Azure Functions. -## Update to Certificate based Authentication +## Update to certificate based Authentication 1. Obtain a certificate and private key. @@ -40,7 +40,7 @@ Ensure that you've a Teams bot app deployed to Azure with the following resource The **Upload a certificate** window appears. > [!NOTE] - > Upload a certiificate (public key) with one of the following file types: .cer, .pem, .crt + > Upload a certificate (public key) with one of the following file types: .cer, .pem, .crt. 1. Upload a certificate. @@ -72,13 +72,13 @@ Ensure that you've a Teams bot app deployed to Azure with the following resource builder.Services.AddSingleton((e) => new CertificateServiceClientCredentialsFactory("{your certificate}", "{your entra id}")); ``` -1. Ensure you test your bot to confirm its operation aligns with the updated authentication. +1. Ensure you test your bot to confirm the operation aligns with the updated authentication. 1. Delete the secrets from Entra. :::image type="content" source="../assets/images/teams-toolkit-v2/delete-client-secret-value.png" alt-text="Screenshot shows the delete client secret value."::: -## Update to MSI based Authentication +## Update to MSI based authentication > [!NOTE] > The **Azure Bot** service ID and type can't be modified after creation. @@ -155,3 +155,5 @@ To create a new **Azure Bot** service with MSI type, follow these steps: 1. Ensure you test your bot to confirm its operation aligns with the updated authentication. 1. Delete the old Azure bot and the Entra ID. + +## See Also From 4f07e6c2ce8adfeec29e5bceb3a7c1e40b4c8d5c Mon Sep 17 00:00:00 2001 From: v-shalinir Date: Mon, 16 Sep 2024 09:31:28 +0530 Subject: [PATCH 13/29] Update update-bot-me-app-to-use-certificate-or-msi-for-authentication.md --- ...e-certificate-or-msi-for-authentication.md | 47 +++++++++++++++++-- 1 file changed, 43 insertions(+), 4 deletions(-) diff --git a/msteams-platform/toolkit/update-bot-me-app-to-use-certificate-or-msi-for-authentication.md b/msteams-platform/toolkit/update-bot-me-app-to-use-certificate-or-msi-for-authentication.md index cd05edded1d..fc7e59fc23b 100644 --- a/msteams-platform/toolkit/update-bot-me-app-to-use-certificate-or-msi-for-authentication.md +++ b/msteams-platform/toolkit/update-bot-me-app-to-use-certificate-or-msi-for-authentication.md @@ -19,11 +19,19 @@ Ensure that you've a Teams bot app deployed to Azure with the following resource * An Entra ID with a secret used for bot authentication. * A resource that hosts your bot app, such as Azure App Service, Azure Functions. -## Update to certificate based Authentication +# [Update to certificate based Authentication](#tab/certificate) + +To update your bot app to use certificate based authentication: + +* [Create and upload certificate in Azure AD](#create-and-upload-certificate-in-azure-ad) +* [Update the bot app code](#update-the-bot-app-code) +* [Delete bot secret](#delete-bot-secret) + +## Create and upload certificate in Azure AD 1. Obtain a certificate and private key. -1. Go to [Azure portal.](https://ms.portal.azure.com) +1. Go to [Azure portal](https://ms.portal.azure.com). 1. Select **App registrations**. @@ -50,7 +58,12 @@ Ensure that you've a Teams bot app deployed to Azure with the following resource :::image type="content" source="../assets/images/teams-toolkit-v2/upload-certificate.png" alt-text="Screenshot shows the upload certificate option."::: -1. Update your code and deploy. +## Update the bot app code + +1. Open your bot app project in Visual Studio or Visual Studio Code. +1. Update your code. + +# [JavaScript](#tab/js1) ```javascript const credentialsFactory = new ConfigurationServiceClientCredentialFactory({ @@ -68,17 +81,33 @@ Ensure that you've a Teams bot app deployed to Azure with the following resource const adapter = new CloudAdapter(botFrameworkAuthentication); ``` +# [C#](#tab/cs1) + ```csharp builder.Services.AddSingleton((e) => new CertificateServiceClientCredentialsFactory("{your certificate}", "{your entra id}")); ``` + --- 1. Ensure you test your bot to confirm the operation aligns with the updated authentication. +## Delete bot secret + +1. Go to [Azure portal](https://ms.portal.azure.com), and open your bot service. 1. Delete the secrets from Entra. :::image type="content" source="../assets/images/teams-toolkit-v2/delete-client-secret-value.png" alt-text="Screenshot shows the delete client secret value."::: -## Update to MSI based authentication +Your bot app now uses the certificate for authentication. + +# [Update to MSI based authentication](#tab/msi) + +To update your bot app to use MSI based authentication: + +* [Create bot service with MSI type in Azure AD](#create-bot-service-with-msi-type-in-azure-ad) +* [Update your bot app code for MSI](#update-your-bot-app-code-for-msi) +* [Delete the previous bot details](#delete-the-previous-bot-details) + +## Create bot service with MSI type in Azure AD > [!NOTE] > The **Azure Bot** service ID and type can't be modified after creation. @@ -126,8 +155,12 @@ To create a new **Azure Bot** service with MSI type, follow these steps: 1. Add the managed identity that you've created. +## Update your bot app code for MSI + 1. Update your code and deploy. +[JavaScript](#tab/js2) + ```javascript const credentialsFactory = new ConfigurationServiceClientCredentialFactory({ MicrosoftAppType: 'UserAssignedMsi', @@ -143,17 +176,23 @@ To create a new **Azure Bot** service with MSI type, follow these steps: const adapter = new CloudAdapter(botFrameworkAuthentication); ``` +[C#](#tab/cs2) ```csharp builder.Configuration["MicrosoftAppType"] = "UserAssignedMsi"; builder.Configuration["MicrosoftAppId"] = "{your MSI’s client ID}"; builder.Configuration["MicrosoftAppPassword"] = "{your MSI’s tenant ID}"; builder.Services.AddSingleton(); ``` + --- 1. Update the `BOT_ID` in your `.env` file. 1. Ensure you test your bot to confirm its operation aligns with the updated authentication. +## Delete the previous bot details + 1. Delete the old Azure bot and the Entra ID. +Your bot app now uses MSI for authentication. + ## See Also From b4421b97df7ce1a35deb7f5e70b6208938921cf6 Mon Sep 17 00:00:00 2001 From: v-shalinir Date: Mon, 16 Sep 2024 09:35:40 +0530 Subject: [PATCH 14/29] Update update-bot-me-app-to-use-certificate-or-msi-for-authentication.md --- ...e-certificate-or-msi-for-authentication.md | 29 +++++++++++-------- 1 file changed, 17 insertions(+), 12 deletions(-) diff --git a/msteams-platform/toolkit/update-bot-me-app-to-use-certificate-or-msi-for-authentication.md b/msteams-platform/toolkit/update-bot-me-app-to-use-certificate-or-msi-for-authentication.md index fc7e59fc23b..2b63a1c341f 100644 --- a/msteams-platform/toolkit/update-bot-me-app-to-use-certificate-or-msi-for-authentication.md +++ b/msteams-platform/toolkit/update-bot-me-app-to-use-certificate-or-msi-for-authentication.md @@ -65,7 +65,7 @@ To update your bot app to use certificate based authentication: # [JavaScript](#tab/js1) - ```javascript +```javascript const credentialsFactory = new ConfigurationServiceClientCredentialFactory({ MicrosoftAppId: config.botId, CertificatePrivateKey: '{your private key}', @@ -79,14 +79,15 @@ To update your bot app to use certificate based authentication: ); const adapter = new CloudAdapter(botFrameworkAuthentication); - ``` +``` # [C#](#tab/cs1) - ```csharp +```csharp builder.Services.AddSingleton((e) => new CertificateServiceClientCredentialsFactory("{your certificate}", "{your entra id}")); - ``` - --- +``` + +--- 1. Ensure you test your bot to confirm the operation aligns with the updated authentication. @@ -159,9 +160,9 @@ To create a new **Azure Bot** service with MSI type, follow these steps: 1. Update your code and deploy. -[JavaScript](#tab/js2) +# [JavaScript](#tab/js2) - ```javascript +```javascript const credentialsFactory = new ConfigurationServiceClientCredentialFactory({ MicrosoftAppType: 'UserAssignedMsi', MicrosoftAppId: '{your MSI’s client ID}', @@ -174,16 +175,18 @@ To create a new **Azure Bot** service with MSI type, follow these steps: ); const adapter = new CloudAdapter(botFrameworkAuthentication); - ``` +``` -[C#](#tab/cs2) - ```csharp +# [C#](#tab/cs2) + +```csharp builder.Configuration["MicrosoftAppType"] = "UserAssignedMsi"; builder.Configuration["MicrosoftAppId"] = "{your MSI’s client ID}"; builder.Configuration["MicrosoftAppPassword"] = "{your MSI’s tenant ID}"; builder.Services.AddSingleton(); - ``` - --- +``` + +--- 1. Update the `BOT_ID` in your `.env` file. @@ -195,4 +198,6 @@ To create a new **Azure Bot** service with MSI type, follow these steps: Your bot app now uses MSI for authentication. +--- + ## See Also From f01c668301603cee7bf53f66c345bc666ca3b454 Mon Sep 17 00:00:00 2001 From: v-shalinir Date: Mon, 16 Sep 2024 09:39:23 +0530 Subject: [PATCH 15/29] Update update-bot-me-app-to-use-certificate-or-msi-for-authentication.md --- ...e-certificate-or-msi-for-authentication.md | 103 +++++++++--------- 1 file changed, 51 insertions(+), 52 deletions(-) diff --git a/msteams-platform/toolkit/update-bot-me-app-to-use-certificate-or-msi-for-authentication.md b/msteams-platform/toolkit/update-bot-me-app-to-use-certificate-or-msi-for-authentication.md index 2b63a1c341f..aa0bd2bcfbd 100644 --- a/msteams-platform/toolkit/update-bot-me-app-to-use-certificate-or-msi-for-authentication.md +++ b/msteams-platform/toolkit/update-bot-me-app-to-use-certificate-or-msi-for-authentication.md @@ -63,31 +63,30 @@ To update your bot app to use certificate based authentication: 1. Open your bot app project in Visual Studio or Visual Studio Code. 1. Update your code. -# [JavaScript](#tab/js1) - -```javascript - const credentialsFactory = new ConfigurationServiceClientCredentialFactory({ - MicrosoftAppId: config.botId, - CertificatePrivateKey: '{your private key}', - CertificateThumbprint: '{your cert thumbprint}', - MicrosoftAppType: "MultiTenant", - }); - - const botFrameworkAuthentication = new ConfigurationBotFrameworkAuthentication( - {}, - credentialsFactory - ); - - const adapter = new CloudAdapter(botFrameworkAuthentication); -``` - -# [C#](#tab/cs1) - -```csharp - builder.Services.AddSingleton((e) => new CertificateServiceClientCredentialsFactory("{your certificate}", "{your entra id}")); -``` - ---- + # [JavaScript](#tab/js1) + + ```javascript + const credentialsFactory = new ConfigurationServiceClientCredentialFactory({ + MicrosoftAppId: config.botId, + CertificatePrivateKey: '{your private key}', + CertificateThumbprint: '{your cert thumbprint}', + MicrosoftAppType: "MultiTenant", + }); + + const botFrameworkAuthentication = new ConfigurationBotFrameworkAuthentication( + {}, + credentialsFactory + ); + + const adapter = new CloudAdapter(botFrameworkAuthentication); + ``` + + # [C#](#tab/cs1) + + ```csharp + builder.Services.AddSingleton((e) => new CertificateServiceClientCredentialsFactory("{your certificate}", "{your entra id}")); + ``` + --- 1. Ensure you test your bot to confirm the operation aligns with the updated authentication. @@ -160,33 +159,33 @@ To create a new **Azure Bot** service with MSI type, follow these steps: 1. Update your code and deploy. -# [JavaScript](#tab/js2) - -```javascript - const credentialsFactory = new ConfigurationServiceClientCredentialFactory({ - MicrosoftAppType: 'UserAssignedMsi', - MicrosoftAppId: '{your MSI’s client ID}', - MicrosoftAppTenantId: '{your MSI’s tenant ID}', - }); - - const botFrameworkAuthentication = new ConfigurationBotFrameworkAuthentication( - {}, - credentialsFactory - ); - - const adapter = new CloudAdapter(botFrameworkAuthentication); -``` - -# [C#](#tab/cs2) - -```csharp - builder.Configuration["MicrosoftAppType"] = "UserAssignedMsi"; - builder.Configuration["MicrosoftAppId"] = "{your MSI’s client ID}"; - builder.Configuration["MicrosoftAppPassword"] = "{your MSI’s tenant ID}"; - builder.Services.AddSingleton(); -``` - ---- + # [JavaScript](#tab/js2) + + ```javascript + const credentialsFactory = new ConfigurationServiceClientCredentialFactory({ + MicrosoftAppType: 'UserAssignedMsi', + MicrosoftAppId: '{your MSI’s client ID}', + MicrosoftAppTenantId: '{your MSI’s tenant ID}', + }); + + const botFrameworkAuthentication = new ConfigurationBotFrameworkAuthentication( + {}, + credentialsFactory + ); + + const adapter = new CloudAdapter(botFrameworkAuthentication); + ``` + + # [C#](#tab/cs2) + + ```csharp + builder.Configuration["MicrosoftAppType"] = "UserAssignedMsi"; + builder.Configuration["MicrosoftAppId"] = "{your MSI’s client ID}"; + builder.Configuration["MicrosoftAppPassword"] = "{your MSI’s tenant ID}"; + builder.Services.AddSingleton(); + ``` + + --- 1. Update the `BOT_ID` in your `.env` file. From 0c7302a50b4d7ea3f6749800defbcf0740012ef8 Mon Sep 17 00:00:00 2001 From: v-shalinir Date: Mon, 16 Sep 2024 09:56:47 +0530 Subject: [PATCH 16/29] Update update-bot-me-app-to-use-certificate-or-msi-for-authentication.md --- ...e-certificate-or-msi-for-authentication.md | 47 +++++++++++++------ 1 file changed, 33 insertions(+), 14 deletions(-) diff --git a/msteams-platform/toolkit/update-bot-me-app-to-use-certificate-or-msi-for-authentication.md b/msteams-platform/toolkit/update-bot-me-app-to-use-certificate-or-msi-for-authentication.md index aa0bd2bcfbd..fe3b53a9fce 100644 --- a/msteams-platform/toolkit/update-bot-me-app-to-use-certificate-or-msi-for-authentication.md +++ b/msteams-platform/toolkit/update-bot-me-app-to-use-certificate-or-msi-for-authentication.md @@ -9,11 +9,11 @@ ms.localizationpriority: high # Update bot or message extension app to use certificate or MSI for authentication -Update your bot or message extension app to authenticate using a certificate or Managed Service Identity (MSI), instead of a bot ID and secret. This action resolves compliance concerns related to the use of Microsoft Entra ID and a secret. +You can use certificate- or MSI-based authentication to validate your bot app instead of bot ID and secret. This authentication resolves the compliance concerns related to the use of Microsoft Entra ID and bot secret. ## Prerequisites -Ensure that you've a Teams bot app deployed to Azure with the following resources: +Ensure that you have a Teams bot app deployed to Azure with the following resources: * An Azure bot. * An Entra ID with a secret used for bot authentication. @@ -23,13 +23,15 @@ Ensure that you've a Teams bot app deployed to Azure with the following resource To update your bot app to use certificate based authentication: -* [Create and upload certificate in Azure AD](#create-and-upload-certificate-in-azure-ad) -* [Update the bot app code](#update-the-bot-app-code) -* [Delete bot secret](#delete-bot-secret) +1. [Create and upload certificate in Azure AD](#create-and-upload-certificate-in-azure-ad) +1. [Update the bot app code](#update-the-bot-app-code) +1. [Delete bot secret](#delete-bot-secret) ## Create and upload certificate in Azure AD -1. Obtain a certificate and private key. +To use a certificate for bot authentication: + +1. Prepare a certificate and private key. 1. Go to [Azure portal](https://ms.portal.azure.com). @@ -50,7 +52,7 @@ To update your bot app to use certificate based authentication: > [!NOTE] > Upload a certificate (public key) with one of the following file types: .cer, .pem, .crt. -1. Upload a certificate. +1. Upload the certificate you prepared. 1. Enter **Description**. @@ -60,6 +62,8 @@ To update your bot app to use certificate based authentication: ## Update the bot app code +Follow the steps to update the bot app code: + 1. Open your bot app project in Visual Studio or Visual Studio Code. 1. Update your code. @@ -92,7 +96,18 @@ To update your bot app to use certificate based authentication: ## Delete bot secret -1. Go to [Azure portal](https://ms.portal.azure.com), and open your bot service. +Ensure that your bot app uses the certificate for authentication before you delete the bot secret. + +To delete the bot secret: + +1. Go to [Azure portal](https://ms.portal.azure.com). +1. Select **App registrations**. + + :::image type="content" source="../assets/images/include-files/azure-app-registration.png" alt-text="Screenshot shows the Azure services to select App registrations."::: + +1. Select your registered app. + +1. In the left pane, under **Manage**, select **Certificates & secrets**. 1. Delete the secrets from Entra. :::image type="content" source="../assets/images/teams-toolkit-v2/delete-client-secret-value.png" alt-text="Screenshot shows the delete client secret value."::: @@ -103,17 +118,18 @@ Your bot app now uses the certificate for authentication. To update your bot app to use MSI based authentication: -* [Create bot service with MSI type in Azure AD](#create-bot-service-with-msi-type-in-azure-ad) -* [Update your bot app code for MSI](#update-your-bot-app-code-for-msi) -* [Delete the previous bot details](#delete-the-previous-bot-details) - -## Create bot service with MSI type in Azure AD +1. [Create bot service with MSI type in Azure AD](#create-bot-service-with-msi-type-in-azure-ad) +1. [Update your bot app code for MSI](#update-your-bot-app-code-for-msi) +1. [Delete the previous bot details](#delete-the-previous-bot-details) > [!NOTE] > The **Azure Bot** service ID and type can't be modified after creation. +## Create bot service with MSI type in Azure AD + To create a new **Azure Bot** service with MSI type, follow these steps: +1. Go to [Azure portal](https://ms.portal.azure.com). 1. Go to **Home**. 1. Select **+ Create a resource**. 1. In the search box, enter **Azure Bot**. @@ -129,7 +145,7 @@ To create a new **Azure Bot** service with MSI type, follow these steps: :::image type="content" source="../assets/images/include-files/create-azure-bot.png" alt-text="Screenshot shows the option resource group and subscription in the Azure portal."::: - If you don't have an existing resource group, you can create a new resource group. To create a new resource group, follow these steps: + If you don't have an existing resource group, you can create a new resource group. To create a new Azure bot service and managed identity, follow these steps: 1. Select **Create new**. 1. Enter the resource name and select **OK**. @@ -157,6 +173,8 @@ To create a new **Azure Bot** service with MSI type, follow these steps: ## Update your bot app code for MSI +To update the bot app code for MSI, follow these steps: + 1. Update your code and deploy. # [JavaScript](#tab/js2) @@ -193,6 +211,7 @@ To create a new **Azure Bot** service with MSI type, follow these steps: ## Delete the previous bot details +1. Go to [Azure portal](https://ms.portal.azure.com). 1. Delete the old Azure bot and the Entra ID. Your bot app now uses MSI for authentication. From 5101d2f795ce263b557295437b9b95b048625d2b Mon Sep 17 00:00:00 2001 From: v-shalinir Date: Tue, 17 Sep 2024 18:13:12 +0530 Subject: [PATCH 17/29] Update update-bot-me-app-to-use-certificate-or-msi-for-authentication.md --- ...t-me-app-to-use-certificate-or-msi-for-authentication.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/msteams-platform/toolkit/update-bot-me-app-to-use-certificate-or-msi-for-authentication.md b/msteams-platform/toolkit/update-bot-me-app-to-use-certificate-or-msi-for-authentication.md index fe3b53a9fce..ad78c0d1b9f 100644 --- a/msteams-platform/toolkit/update-bot-me-app-to-use-certificate-or-msi-for-authentication.md +++ b/msteams-platform/toolkit/update-bot-me-app-to-use-certificate-or-msi-for-authentication.md @@ -62,7 +62,7 @@ To use a certificate for bot authentication: ## Update the bot app code -Follow the steps to update the bot app code: +Follow the steps to update the bot app code: 1. Open your bot app project in Visual Studio or Visual Studio Code. 1. Update your code. @@ -90,6 +90,7 @@ Follow the steps to update the bot app code: ```csharp builder.Services.AddSingleton((e) => new CertificateServiceClientCredentialsFactory("{your certificate}", "{your entra id}")); ``` + --- 1. Ensure you test your bot to confirm the operation aligns with the updated authentication. @@ -175,7 +176,8 @@ To create a new **Azure Bot** service with MSI type, follow these steps: To update the bot app code for MSI, follow these steps: -1. Update your code and deploy. +1. Open your bot app project in Visual Studio or Visual Studio Code. +1. Update your code. # [JavaScript](#tab/js2) From c43f3a511975115cd85d73d5ce989e84f59ed781 Mon Sep 17 00:00:00 2001 From: v-bvishnu <129953098+v-bvishnu@users.noreply.github.com> Date: Mon, 21 Oct 2024 14:34:04 +0530 Subject: [PATCH 18/29] Updated Whats new updated. --- msteams-platform/TOC.yml | 1 + msteams-platform/whats-new.md | 1 + 2 files changed, 2 insertions(+) diff --git a/msteams-platform/TOC.yml b/msteams-platform/TOC.yml index 24dc2776264..94deb2e3fc8 100644 --- a/msteams-platform/TOC.yml +++ b/msteams-platform/TOC.yml @@ -178,6 +178,7 @@ href: toolkit/use-existing-aad-app.md - name: Update Bot or Message extension app to use Certificate or MSI for Authentication href: toolkit/update-bot-me-app-to-use-certificate-or-msi-for-authentication.md + displayName: MSI, certificate, bot, message extension, authentication - name: Customize Manifest items: - name: Customize Teams app Manifest diff --git a/msteams-platform/whats-new.md b/msteams-platform/whats-new.md index 32f57f7ea8e..b1f7201cb61 100644 --- a/msteams-platform/whats-new.md +++ b/msteams-platform/whats-new.md @@ -32,6 +32,7 @@ Teams platform features that are available to all app developers. **2024 October** +* ***October 21, 2024***: [Update bot or message extension app to use certificate or MSI for authentication](toolkit/update-bot-me-app-to-use-certificate-or-msi-for-authentication.md). * ***October 17, 2024***: [Introducing app manifest v1.19](./resources/schema/manifest-schema.md) with copilotAgents, declarativeAgents, and defaultLanguageFile. * ***October 17, 2024***: [Localize your Copilot agents](/microsoft-365-copilot/extensibility/agents-are-apps#localizing-your-agent). * ***October 17, 2024***: [Build a personal tab with offline functionality](tabs/how-to/create-personal-tab.md#offline-tabs). From f47464ee18d8aa9d27163a574d9dedd72528943b Mon Sep 17 00:00:00 2001 From: v-bvishnu <129953098+v-bvishnu@users.noreply.github.com> Date: Tue, 22 Oct 2024 12:44:22 +0530 Subject: [PATCH 19/29] Update whats-new.md --- msteams-platform/whats-new.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/msteams-platform/whats-new.md b/msteams-platform/whats-new.md index b1f7201cb61..a196ab917af 100644 --- a/msteams-platform/whats-new.md +++ b/msteams-platform/whats-new.md @@ -32,7 +32,7 @@ Teams platform features that are available to all app developers. **2024 October** -* ***October 21, 2024***: [Update bot or message extension app to use certificate or MSI for authentication](toolkit/update-bot-me-app-to-use-certificate-or-msi-for-authentication.md). +* ***October 22, 2024***: [Update bot or message extension app to use certificate or MSI for authentication](toolkit/update-bot-me-app-to-use-certificate-or-msi-for-authentication.md). * ***October 17, 2024***: [Introducing app manifest v1.19](./resources/schema/manifest-schema.md) with copilotAgents, declarativeAgents, and defaultLanguageFile. * ***October 17, 2024***: [Localize your Copilot agents](/microsoft-365-copilot/extensibility/agents-are-apps#localizing-your-agent). * ***October 17, 2024***: [Build a personal tab with offline functionality](tabs/how-to/create-personal-tab.md#offline-tabs). From 017ab2b0c327d726a014ee226c5ac3f543231151 Mon Sep 17 00:00:00 2001 From: v-bvishnu <129953098+v-bvishnu@users.noreply.github.com> Date: Tue, 22 Oct 2024 13:01:56 +0530 Subject: [PATCH 20/29] Updated. --- msteams-platform/TOC.yml | 2 +- ...pp-to-use-certificate-or-msi-for-authentication.md | 11 ++++++++--- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/msteams-platform/TOC.yml b/msteams-platform/TOC.yml index 94deb2e3fc8..a8b2fa2848d 100644 --- a/msteams-platform/TOC.yml +++ b/msteams-platform/TOC.yml @@ -176,7 +176,7 @@ href: toolkit/add-single-sign-on.md - name: Using existing Microsoft Entra app in TeamsFx project href: toolkit/use-existing-aad-app.md - - name: Update Bot or Message extension app to use Certificate or MSI for Authentication + - name: Update bot or message extension app to use certificate or MSI for authentication href: toolkit/update-bot-me-app-to-use-certificate-or-msi-for-authentication.md displayName: MSI, certificate, bot, message extension, authentication - name: Customize Manifest diff --git a/msteams-platform/toolkit/update-bot-me-app-to-use-certificate-or-msi-for-authentication.md b/msteams-platform/toolkit/update-bot-me-app-to-use-certificate-or-msi-for-authentication.md index ad78c0d1b9f..9125f9429e2 100644 --- a/msteams-platform/toolkit/update-bot-me-app-to-use-certificate-or-msi-for-authentication.md +++ b/msteams-platform/toolkit/update-bot-me-app-to-use-certificate-or-msi-for-authentication.md @@ -1,15 +1,17 @@ --- -title: Update bot or message extension app to use certificate or MSI for authentication +title: Use Certificate or MSI for Authentication author: surbhigupta -description: Learn how to update bot or message extension app to use certificate or MSI for authentication. +description: Learn how to use certificate or MSI-based authentication for your bot app, which resolves compliance concerns with Microsoft Entra ID and bot secret. ms.topic: conceptual ms.author: surbhigupta ms.localizationpriority: high +ms.topic: overview +ms.date: 10/22/2024 --- # Update bot or message extension app to use certificate or MSI for authentication -You can use certificate- or MSI-based authentication to validate your bot app instead of bot ID and secret. This authentication resolves the compliance concerns related to the use of Microsoft Entra ID and bot secret. +You can use certificate or MSI-based authentication to validate your bot app instead of bot ID and secret. This authentication resolves the compliance concerns related to the use of Microsoft Entra ID and bot secret. ## Prerequisites @@ -221,3 +223,6 @@ Your bot app now uses MSI for authentication. --- ## See Also + +* [Build bots for Teams](../bots/what-are-bots.md) +* [Build message extensions](../messaging-extensions/what-are-messaging-extensions.md) From ca03a08944bae2f575e98d346420b44ac7e3082f Mon Sep 17 00:00:00 2001 From: v-bvishnu <129953098+v-bvishnu@users.noreply.github.com> Date: Tue, 22 Oct 2024 13:11:56 +0530 Subject: [PATCH 21/29] Updated. --- ...te-bot-me-app-to-use-certificate-or-msi-for-authentication.md | 1 - 1 file changed, 1 deletion(-) diff --git a/msteams-platform/toolkit/update-bot-me-app-to-use-certificate-or-msi-for-authentication.md b/msteams-platform/toolkit/update-bot-me-app-to-use-certificate-or-msi-for-authentication.md index 9125f9429e2..ab0b43fb72d 100644 --- a/msteams-platform/toolkit/update-bot-me-app-to-use-certificate-or-msi-for-authentication.md +++ b/msteams-platform/toolkit/update-bot-me-app-to-use-certificate-or-msi-for-authentication.md @@ -2,7 +2,6 @@ title: Use Certificate or MSI for Authentication author: surbhigupta description: Learn how to use certificate or MSI-based authentication for your bot app, which resolves compliance concerns with Microsoft Entra ID and bot secret. -ms.topic: conceptual ms.author: surbhigupta ms.localizationpriority: high ms.topic: overview From 9630e7bf7f9f5e2ffcbed197ebbad189325335e0 Mon Sep 17 00:00:00 2001 From: v-bvishnu <129953098+v-bvishnu@users.noreply.github.com> Date: Thu, 24 Oct 2024 13:22:25 +0530 Subject: [PATCH 22/29] Update certificates-secrets.png --- .../teams-toolkit-v2/certificates-secrets.png | Bin 43653 -> 47457 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/msteams-platform/assets/images/teams-toolkit-v2/certificates-secrets.png b/msteams-platform/assets/images/teams-toolkit-v2/certificates-secrets.png index fc55c6323a51fb197f8f52cd7490ee3465307b90..c929bce12a7dd3ce21e077cf17042f6c75904cbf 100644 GIT binary patch literal 47457 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 g994eilI#Z&G;D&)ibBERV@Ag4`S({@Bjb+ literal 43653 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 From 65b59f30fc71d10aeb12891433a0629626d94416 Mon Sep 17 00:00:00 2001 From: v-bvishnu <129953098+v-bvishnu@users.noreply.github.com> Date: Thu, 24 Oct 2024 13:32:50 +0530 Subject: [PATCH 23/29] Update upload-certificate.png --- .../teams-toolkit-v2/upload-certificate.png | Bin 14109 -> 14276 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/msteams-platform/assets/images/teams-toolkit-v2/upload-certificate.png b/msteams-platform/assets/images/teams-toolkit-v2/upload-certificate.png index e4dd5d8d16f980cd1f2c75511ec9716295086586..9b97cbd64edb130aea25b0b41c7cc6e0a33d7d0b 100644 GIT binary patch literal 14276 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�`qqSEGxZ~3_N@-jx(ou@5up__Xwd&_wfR}g_FC` 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 W1eQHsC=eCi>4a{|y*#8Stv`R|= From ebaf318400c6929388a716a0a90e544cecbfb061 Mon Sep 17 00:00:00 2001 From: v-bvishnu <129953098+v-bvishnu@users.noreply.github.com> Date: Fri, 25 Oct 2024 13:26:43 +0530 Subject: [PATCH 24/29] Updated. --- ...e-certificate-or-msi-for-authentication.md | 28 ++++++++++++++----- msteams-platform/whats-new.md | 2 +- 2 files changed, 22 insertions(+), 8 deletions(-) diff --git a/msteams-platform/toolkit/update-bot-me-app-to-use-certificate-or-msi-for-authentication.md b/msteams-platform/toolkit/update-bot-me-app-to-use-certificate-or-msi-for-authentication.md index ab0b43fb72d..dea7e0d8f65 100644 --- a/msteams-platform/toolkit/update-bot-me-app-to-use-certificate-or-msi-for-authentication.md +++ b/msteams-platform/toolkit/update-bot-me-app-to-use-certificate-or-msi-for-authentication.md @@ -10,7 +10,7 @@ ms.date: 10/22/2024 # Update bot or message extension app to use certificate or MSI for authentication -You can use certificate or MSI-based authentication to validate your bot app instead of bot ID and secret. This authentication resolves the compliance concerns related to the use of Microsoft Entra ID and bot secret. +You can use certificate- or MSI-based authentication to validate your bot app instead of bot ID and secret. This authentication resolves the compliance concerns related to the use of Microsoft Entra ID and bot secret. ## Prerequisites @@ -20,9 +20,9 @@ Ensure that you have a Teams bot app deployed to Azure with the following resour * An Entra ID with a secret used for bot authentication. * A resource that hosts your bot app, such as Azure App Service, Azure Functions. -# [Update to certificate based Authentication](#tab/certificate) +# [Update to certificate-based Authentication](#tab/certificate) -To update your bot app to use certificate based authentication: +To update your bot app to use certificate-based authentication: 1. [Create and upload certificate in Azure AD](#create-and-upload-certificate-in-azure-ad) 1. [Update the bot app code](#update-the-bot-app-code) @@ -116,9 +116,9 @@ To delete the bot secret: Your bot app now uses the certificate for authentication. -# [Update to MSI based authentication](#tab/msi) +# [Update to MSI-based authentication](#tab/msi) -To update your bot app to use MSI based authentication: +To update your bot app to use MSI-based authentication: 1. [Create bot service with MSI type in Azure AD](#create-bot-service-with-msi-type-in-azure-ad) 1. [Update your bot app code for MSI](#update-your-bot-app-code-for-msi) @@ -157,7 +157,7 @@ To create a new **Azure Bot** service with MSI type, follow these steps: 1. Under **Microsoft App ID**, select **Type of App** as **User-Assigned Managed Identity**. -1. In the **Creation type**, select **Create new Microsoft App ID**. +1. From the **Creation type**, select **Create new Microsoft App ID**. :::image type="content" source="../assets/images/teams-toolkit-v2/microsoft-app-id.png" alt-text="Screenshot shows the microsoft app ID option."::: @@ -214,8 +214,21 @@ To update the bot app code for MSI, follow these steps: ## Delete the previous bot details +Ensure that your bot app uses the certificate for authentication before you delete the bot secret. + +To delete the bot secret: + 1. Go to [Azure portal](https://ms.portal.azure.com). -1. Delete the old Azure bot and the Entra ID. +1. Select **App registrations**. + + :::image type="content" source="../assets/images/include-files/azure-app-registration.png" alt-text="Screenshot shows the Azure services to select App registrations."::: + +1. Select your registered app. + +1. In the left pane, under **Manage**, select **Certificates & secrets**. +1. Delete the secrets from Entra. + + :::image type="content" source="../assets/images/teams-toolkit-v2/delete-client-secret-value.png" alt-text="Screenshot shows the delete client secret value."::: Your bot app now uses MSI for authentication. @@ -225,3 +238,4 @@ Your bot app now uses MSI for authentication. * [Build bots for Teams](../bots/what-are-bots.md) * [Build message extensions](../messaging-extensions/what-are-messaging-extensions.md) +* [Authenticate users in Microsoft Teams](../concepts/authentication/authentication.md) \ No newline at end of file diff --git a/msteams-platform/whats-new.md b/msteams-platform/whats-new.md index 6e46260edec..4d14ce5034d 100644 --- a/msteams-platform/whats-new.md +++ b/msteams-platform/whats-new.md @@ -32,7 +32,7 @@ Teams platform features that are available to all app developers. **2024 October** -* ***October 25, 2024***: [Introduced prompt suggestions for bots to create an engaging and insightful bot experience.](bots/how-to/conversations/prompt-suggestions.md) +* ***October 28, 2024***: [Introduced prompt suggestions for bots to create an engaging and insightful bot experience.](bots/how-to/conversations/prompt-suggestions.md) * ***October 17, 2024***: [Introducing app manifest v1.19](./resources/schema/manifest-schema.md) with copilotAgents, declarativeAgents, and defaultLanguageFile. * ***October 17, 2024***: [Localize your Copilot agents](/microsoft-365-copilot/extensibility/agents-are-apps#localizing-your-agent). * ***October 17, 2024***: [Build a personal tab with offline functionality](tabs/how-to/create-personal-tab.md#offline-tabs). From ccda37e1d33b9bc038655ae3f4dc2bdaa2872426 Mon Sep 17 00:00:00 2001 From: v-bvishnu <129953098+v-bvishnu@users.noreply.github.com> Date: Fri, 25 Oct 2024 14:07:49 +0530 Subject: [PATCH 25/29] Update whats-new.md --- msteams-platform/whats-new.md | 1 + 1 file changed, 1 insertion(+) diff --git a/msteams-platform/whats-new.md b/msteams-platform/whats-new.md index 4d14ce5034d..0156a31a6eb 100644 --- a/msteams-platform/whats-new.md +++ b/msteams-platform/whats-new.md @@ -32,6 +32,7 @@ Teams platform features that are available to all app developers. **2024 October** +* ***October 28, 2024***: [Update bot or message extension app to use certificate or MSI for authentication.](toolkit/update-bot-me-app-to-use-certificate-or-msi-for-authentication.md) * ***October 28, 2024***: [Introduced prompt suggestions for bots to create an engaging and insightful bot experience.](bots/how-to/conversations/prompt-suggestions.md) * ***October 17, 2024***: [Introducing app manifest v1.19](./resources/schema/manifest-schema.md) with copilotAgents, declarativeAgents, and defaultLanguageFile. * ***October 17, 2024***: [Localize your Copilot agents](/microsoft-365-copilot/extensibility/agents-are-apps#localizing-your-agent). From 0bd8a5853c6419a976f5d7d9534ce95a2cc9d700 Mon Sep 17 00:00:00 2001 From: v-bvishnu <129953098+v-bvishnu@users.noreply.github.com> Date: Mon, 28 Oct 2024 00:04:56 +0530 Subject: [PATCH 26/29] Update update-bot-me-app-to-use-certificate-or-msi-for-authentication.md --- ...e-bot-me-app-to-use-certificate-or-msi-for-authentication.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/msteams-platform/toolkit/update-bot-me-app-to-use-certificate-or-msi-for-authentication.md b/msteams-platform/toolkit/update-bot-me-app-to-use-certificate-or-msi-for-authentication.md index dea7e0d8f65..c6282d7899c 100644 --- a/msteams-platform/toolkit/update-bot-me-app-to-use-certificate-or-msi-for-authentication.md +++ b/msteams-platform/toolkit/update-bot-me-app-to-use-certificate-or-msi-for-authentication.md @@ -135,7 +135,7 @@ To create a new **Azure Bot** service with MSI type, follow these steps: 1. Go to **Home**. 1. Select **+ Create a resource**. 1. In the search box, enter **Azure Bot**. -1. Select **Enter**. +1. Select the **Enter** key. 1. Select **Azure Bot**. 1. Select **Create**. From 9a0f48ae5cb5bd094d1c99f74724fe7ba2e65148 Mon Sep 17 00:00:00 2001 From: v-bvishnu <129953098+v-bvishnu@users.noreply.github.com> Date: Mon, 28 Oct 2024 00:26:05 +0530 Subject: [PATCH 27/29] Update update-bot-me-app-to-use-certificate-or-msi-for-authentication.md --- ...bot-me-app-to-use-certificate-or-msi-for-authentication.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/msteams-platform/toolkit/update-bot-me-app-to-use-certificate-or-msi-for-authentication.md b/msteams-platform/toolkit/update-bot-me-app-to-use-certificate-or-msi-for-authentication.md index c6282d7899c..4784a2bfda2 100644 --- a/msteams-platform/toolkit/update-bot-me-app-to-use-certificate-or-msi-for-authentication.md +++ b/msteams-platform/toolkit/update-bot-me-app-to-use-certificate-or-msi-for-authentication.md @@ -122,7 +122,7 @@ To update your bot app to use MSI-based authentication: 1. [Create bot service with MSI type in Azure AD](#create-bot-service-with-msi-type-in-azure-ad) 1. [Update your bot app code for MSI](#update-your-bot-app-code-for-msi) -1. [Delete the previous bot details](#delete-the-previous-bot-details) +1. [Delete bot secret](#delete-bot-secret) > [!NOTE] > The **Azure Bot** service ID and type can't be modified after creation. @@ -212,7 +212,7 @@ To update the bot app code for MSI, follow these steps: 1. Ensure you test your bot to confirm its operation aligns with the updated authentication. -## Delete the previous bot details +## Delete bot secret Ensure that your bot app uses the certificate for authentication before you delete the bot secret. From d0edb4d10c058c7c77be35ef7b69f388a64812f9 Mon Sep 17 00:00:00 2001 From: v-bvishnu <129953098+v-bvishnu@users.noreply.github.com> Date: Mon, 28 Oct 2024 00:31:33 +0530 Subject: [PATCH 28/29] Update update-bot-me-app-to-use-certificate-or-msi-for-authentication.md --- ...e-bot-me-app-to-use-certificate-or-msi-for-authentication.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/msteams-platform/toolkit/update-bot-me-app-to-use-certificate-or-msi-for-authentication.md b/msteams-platform/toolkit/update-bot-me-app-to-use-certificate-or-msi-for-authentication.md index 4784a2bfda2..07af2a8408d 100644 --- a/msteams-platform/toolkit/update-bot-me-app-to-use-certificate-or-msi-for-authentication.md +++ b/msteams-platform/toolkit/update-bot-me-app-to-use-certificate-or-msi-for-authentication.md @@ -122,7 +122,7 @@ To update your bot app to use MSI-based authentication: 1. [Create bot service with MSI type in Azure AD](#create-bot-service-with-msi-type-in-azure-ad) 1. [Update your bot app code for MSI](#update-your-bot-app-code-for-msi) -1. [Delete bot secret](#delete-bot-secret) +1. [Delete bot secret](#delete-bot-secret-1) > [!NOTE] > The **Azure Bot** service ID and type can't be modified after creation. From 729adbcabc9c32d8e440fc5924e3105bdb698352 Mon Sep 17 00:00:00 2001 From: v-bvishnu <129953098+v-bvishnu@users.noreply.github.com> Date: Mon, 28 Oct 2024 09:57:14 +0530 Subject: [PATCH 29/29] Updated. TOC updated. --- msteams-platform/TOC.yml | 2 +- ...bot-me-app-to-use-certificate-or-msi-for-authentication.md | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/msteams-platform/TOC.yml b/msteams-platform/TOC.yml index 267b7dd09f3..e3818866d84 100644 --- a/msteams-platform/TOC.yml +++ b/msteams-platform/TOC.yml @@ -176,7 +176,7 @@ href: toolkit/add-single-sign-on.md - name: Using existing Microsoft Entra app in TeamsFx project href: toolkit/use-existing-aad-app.md - - name: Update bot or message extension app to use certificate or MSI for authentication + - name: Use certificate or MSI for app authentication href: toolkit/update-bot-me-app-to-use-certificate-or-msi-for-authentication.md displayName: MSI, certificate, bot, message extension, authentication - name: Customize Manifest diff --git a/msteams-platform/toolkit/update-bot-me-app-to-use-certificate-or-msi-for-authentication.md b/msteams-platform/toolkit/update-bot-me-app-to-use-certificate-or-msi-for-authentication.md index 07af2a8408d..22545fd573f 100644 --- a/msteams-platform/toolkit/update-bot-me-app-to-use-certificate-or-msi-for-authentication.md +++ b/msteams-platform/toolkit/update-bot-me-app-to-use-certificate-or-msi-for-authentication.md @@ -1,5 +1,5 @@ --- -title: Use Certificate or MSI for Authentication +title: Use Certificate or MSI Authentication for Bots author: surbhigupta description: Learn how to use certificate or MSI-based authentication for your bot app, which resolves compliance concerns with Microsoft Entra ID and bot secret. ms.author: surbhigupta @@ -8,7 +8,7 @@ ms.topic: overview ms.date: 10/22/2024 --- -# Update bot or message extension app to use certificate or MSI for authentication +# Use certificate or MSI for app authentication You can use certificate- or MSI-based authentication to validate your bot app instead of bot ID and secret. This authentication resolves the compliance concerns related to the use of Microsoft Entra ID and bot secret.