docs(workflow-integrations): microsoft teams

This commit is contained in:
Daniel Hougaard
2025-04-28 04:07:01 +04:00
parent bef55043f7
commit fe9ec6b030
39 changed files with 345 additions and 4 deletions

View File

@@ -0,0 +1,240 @@
---
title: "Microsoft Teams Integration"
description: "Learn how to setup the Microsoft Teams integration"
---
import MicrosoftTeamsWorkflowIntegration from '/snippets/documentation/platform/workflow-integrations/microsoft-teams-integration.mdx';
This guide will provide step by step instructions on how to configure Microsoft Teams integration for your Infisical projects.
## Setting up Microsoft Teams integration in your projects
<Tabs>
<Tab title="Infisical Cloud">
<MicrosoftTeamsWorkflowIntegration />
</Tab>
<Tab title="Self-hosted setup">
### Configure Azure Resources
To create a Microsoft Teams bot, you must first create an Azure Bot from the Azure Marketplace, an app registration, and a Microsoft Teams app. The steps below document in detail how to create and configure these resources.
<Steps>
<Step title="Create Azure Bot resource">
When creating the Azure Bot resource, it's important that you set the `Type of App` to `Multi Tenant`. Additionally, you must set the `Creation Type` to `Create new Microsoft App ID`.
![azure-bot-marketplace](/images/platform/workflow-integrations/microsoft-teams-integration/azure-bot-marketplace.png)
![azure-bot-create](/images/platform/workflow-integrations/microsoft-teams-integration/azure-bot-create.png)
Click the "Review + create" button and complete the creation process.
Once this is completed, an Azure Bot **and** an app registration will be created. We will need to configure both to work with Microsoft Teams.
</Step>
<Step title="Configure Azure Bot resource">
After creating the Azure Bot resource, you will be redirected to the Azure Bot resource overview page. Here we can configure the bot's settings.
**Enable Microsoft Teams Channel**
This will allow the bot to be used in Microsoft Teams.
![azure-bot-teams-channel](/images/platform/workflow-integrations/microsoft-teams-integration/microsoft-teams-channel.png)
![azure-bot-teams-channel-enable](/images/platform/workflow-integrations/microsoft-teams-integration/microsoft-teams-channel-configuration.png)
Press the "Apply" button to enable the Microsoft Teams channel.
**Configure Messaging Endpoint**
You must configure the messaging endpoint for the Azure Bot resource. This allows events to be handled by the Infisical Microsoft Teams integration.
The endpoint must be reachable from the internet, or Infisical won't be notified of events.
Configure the endpoint to be:<br/>
**`https://<your-infisical-instance-url>/api/v1/workflow-integrations/microsoft-teams/message-endpoint`**.<br/>Replace `<your-infisical-instance-url>` with the URL of your Infisical instance.
Once completed, press the "Apply" button to save your changes.
![azure-bot-messaging-endpoint](/images/platform/workflow-integrations/microsoft-teams-integration/azure-bot-messaging-endpoint.png)
</Step>
<Step title="Configure Azure App Registration">
When you created the Azure Bot resource, an app registration associated with the bot was also created. We need to configure the app registration to integrate with Microsoft Teams.
You can find the app registration in the Azure Portal by navigating to the "App registrations" section, and selecting the app registration with the same name as the Azure Bot resource.
![app-registration-search](/images/platform/workflow-integrations/microsoft-teams-integration/azure-app-registration-search.png)
![app-registration-overview](/images/platform/workflow-integrations/microsoft-teams-integration/azure-app-registration.png)
**Configure Redirect URIs**
Configure a redirect URI to be:<br/>
`https://<your-infisical-instance-url>/organization/settings/oauth/callback`. Replace `<your-infisical-instance-url>` with the URL of your Infisical instance.
![app-registration-redirect-uri-step-1](/images/platform/workflow-integrations/microsoft-teams-integration/azure-app-registration-redirect-uri-step-1.png)
![app-registration-redirect-uri-step-2](/images/platform/workflow-integrations/microsoft-teams-integration/azure-app-registration-redirect-uri-step-2.png)
![app-registration-redirect-uri-step-3](/images/platform/workflow-integrations/microsoft-teams-integration/azure-app-registration-redirect-uri-step-3.png)
**Configure API Permissions**
Next, configure the API permissions for the app registration.
Add the following permissions:
- `AppCatalog.Read.All`
- `ChannelSettings.Read.All`
- `MultiTenantOrganization.Read.All`
- `Organization.Read.All`
- `Team.ReadBasic.All`
- `TeamsAppInstallation.Read.All`
<Note>
Please keep in mind that these permissions have to be configured as **Application** permissions, not delegated permissions.
</Note>
Once you've added the permissions, press the **Grant admin consent for [your-organization]** button to grant the permissions.
![api-permissions-overview](/images/platform/workflow-integrations/microsoft-teams-integration/azure-api-permissions-overview.png)
![api-permissions-configure](/images/platform/workflow-integrations/microsoft-teams-integration/azure-api-permissions-configure.png)
</Step>
<Step title="Get App Registration Client ID and Client Secret">
Next we need to get the application client ID and create a new client secret. **Save these values for later, as they're required to configure the Microsoft Teams integration in Infisical.**
Copy the application client ID from the overview page.
![copy-client-id](/images/platform/workflow-integrations/microsoft-teams-integration/azure-copy-client-id.png)
Create a new client secret, and save the value. Keep the expiry time in mind when you're creating the secret.
![create-client-secret](/images/platform/workflow-integrations/microsoft-teams-integration/azure-create-client-secret.png)
</Step>
<Step title="Create Microsoft Teams Bot">
Finally we're ready to create the Microsoft Teams bot itself. This step takes place on the [Microsoft Teams Developer Portal](https://dev.teams.microsoft.com/).
- Navigate to the [Microsoft Teams Developer Portal](https://dev.teams.microsoft.com/).
- Make sure you're logged in with the same Microsoft account as you used to create the Azure Bot resource.
![microsoft-dev-portal](/images/platform/workflow-integrations/microsoft-teams-integration/microsoft-dev-portal.png)
Once you're on the Microsoft Teams Developer Portal, press the "Create a new app" button on the overview page. Give the bot a name and press the "Add" button.
**Update Manifest File**
The only change you need to make to the Microsoft Teams app you've just created, is to update the `manifest.json` file to match what's expected by Infisical.
Go to the App Package Editor page, and press the `manifest.json` file to open the file editor.
![update-manifest](/images/platform/workflow-integrations/microsoft-teams-integration/microsoft-teams-dev-update-manifest.png)
Copy the following JSON into the `manifest.json` file:
```json manifest.json
{
"$schema": "https://developer.microsoft.com/en-us/json-schemas/teams/v1.11/MicrosoftTeams.schema.json",
"version": "3.0.0",
"manifestVersion": "1.11",
"id": "f86bbe9c-b853-4f96-8512-7ceba7d2a620", // Keep your existing ID here, this field cannot be changed.
"name": {
"short": "Infisical",
"full": "Infisical Bot"
},
"developer": {
"name": "Infisical",
"websiteUrl": "https://www.infisical.com",
"privacyUrl": "https://www.infisical.com/privacy",
"termsOfUseUrl": "https://www.infisical.com/terms"
},
"description": {
"short": "Microsoft Teams bot for Infisical",
"full": "Microsoft Teams bot for Infisical. This bot will send notifications as configured in Infisical to your Microsoft Teams channels."
},
"icons": {
"outline": "outline.png",
"color": "color.png"
},
"accentColor": "#FFFFFF",
"bots": [
{
"botId": "01bad7fb-227b-4ac3-b5f3-41e8cdaf65d7", // Replace the botId with the Client ID of the App Registration from the previous step.
"scopes": [
"team",
"personal",
"groupchat"
],
"isNotificationOnly": true,
"supportsCalling": false,
"supportsVideo": false,
"supportsFiles": false
}
],
"validDomains": []
}
```
<Note>
Please note that it's very important that the `bots[].botId` field matches the Client ID of the App Registration from the previous step.
</Note>
After making the changes to the manifest file, press the "Save" button to save the changes, and confirm the changes by then pressing the "Update" button.
![save-manifest](/images/platform/workflow-integrations/microsoft-teams-integration/microsoft-teams-dev-save-manifest.png)
![save-manifest-confirm](/images/platform/workflow-integrations/microsoft-teams-integration/microsoft-teams-dev-save-manifest-confirm.png)
</Step>
<Step title="Copy the Bot ID">
Once the manifest file is updated, you can copy the Bot ID from the overview page. Save the Bot ID for later, as it's required to configure the Microsoft Teams integration in Infisical, alongside the App Registration Client ID and Client Secret that you saved earlier.
![copy-bot-id](/images/platform/workflow-integrations/microsoft-teams-integration/microsoft-teams-dev-copy-bot-id.png)
</Step>
<Step title="Download the App Package">
Once the manifest file is updated, you can download the app package by navigating to the "Publish to Store" page, and pressing the "Download app package" button.
You will need to install the app package into your desired Microsoft Teams tenant(s).
![download-package](/images/platform/workflow-integrations/microsoft-teams-integration/microsoft-teams-dev-download-package.png)
</Step>
</Steps>
### Configure Microsoft Teams Bot in Infisical
After creating the Microsoft Teams bot and its corresponding Azure resources, you are ready to configure the Microsoft Teams integration in Infisical.
Please note that you must be an instance admin in order to configure the Microsoft Teams instance-wide settings.
<Steps>
<Step title="Navigate to the Integrations tab in your Server Admin Console settings">
![server-admin-console-tab](/images/platform/workflow-integrations/microsoft-teams-integration/infisical-server-admin-console-tab.png)
![infisical-instance-configure-microsoft-teams](/images/platform/workflow-integrations/microsoft-teams-integration/infisical-instance-configure-microsoft-teams.png)
Enter the values you saved from the earlier steps into the respective fields.
- **Application (Client) ID**: The Client ID of the App Registration from the previous steps.
- **Client Secret**: The Client Secret of the App Registration from the previous steps.
- **Bot ID**: The App ID of the Microsoft Teams App from the previous steps.
Once completed, press the "Save" button to save your changes.
</Step>
</Steps>
<MicrosoftTeamsWorkflowIntegration />
</Tab>
</Tabs>
## Troubleshooting
<Accordion title="Notifications are not being sent to Microsoft Teams even though the integration is configured">
If you recently added the Microsoft Teams app to your tenant, **it may take up to 24 hours for Microsoft Teams to propagate the changes.**
A common indication of propagation issues is that the workflow integration is shown as "Installed", and you're able to view the teams and channels when configuring the workflow integration on your project, but no notification is being sent.
</Accordion>
<Accordion title="Workflow Integration is stuck on 'Pending' status">
The workflow integration can get stuck on Pending if you created the workflow integration before the Infisical Microsoft Teams bot was installed in the tenant.
To resolve this, make sure you have installed the Infisical Microsoft Teams app in your tenant.
You can manually recheck the installation status by pressing the "Check Installation Status" button in the workflow organization settings.
![microsoft-teams-check-installation-status](/images/platform/workflow-integrations/microsoft-teams-integration/microsoft-teams-check-installation-status.png)
</Accordion>

View File

@@ -1,6 +1,6 @@
---
title: "Slack integration"
description: "Learn how to setup Slack integration"
title: "Slack Integration"
description: "Learn how to setup the Slack integration"
---
This guide will provide step by step instructions on how to configure Slack integration for your Infisical projects.

Binary file not shown.

After

Width:  |  Height:  |  Size: 268 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 211 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 203 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 110 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 167 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 232 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 150 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 241 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 172 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 299 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 292 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 156 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 787 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 421 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 139 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 131 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 175 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 204 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 212 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 214 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 122 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 194 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 206 KiB

View File

@@ -218,7 +218,8 @@
{
"group": "Workflow Integrations",
"pages": [
"documentation/platform/workflow-integrations/slack-integration"
"documentation/platform/workflow-integrations/slack-integration",
"documentation/platform/workflow-integrations/microsoft-teams-integration"
]
},
{

View File

@@ -0,0 +1,100 @@
### Create Microsoft Teams workflow integration
<Steps>
<Step title="Install the Infisical Microsoft Teams App in Microsoft Teams tenant">
Currently, Infisical requires you to install a custom Microsoft Teams app into your Microsoft Teams tenant.
You can download the Infisical Microsoft Teams app package here:
- [Infisical Microsoft Teams app package](https://infisical-microsoft-teams-app.s3.us-east-1.amazonaws.com/Infisical.zip)
<Note>
**Important for self-hosted users:**
If you're self-hosting Infisical, you can skip the download step. Instead you should use the app package file you downloaded from the Microsoft Teams Developer Portal when you followed the Self-hosted guide.
</Note>
Once you've downloaded the app package, you can install the app in your Microsoft Teams tenant by navigating to the **Apps** > **Upload a custom app** page, and selecting the "Upload an app" button.
![microsoft-teams-install-app](/images/platform/workflow-integrations/microsoft-teams-integration/microsoft-teams-install-app.png)
![microsoft-teams-submit-app](/images/platform/workflow-integrations/microsoft-teams-integration/microsoft-teams-submit-app.png)
Once the app has been submitted, your Microsoft Teams tenant admin will need to approve the app in the [Microsoft Teams Admin Center](https://admin.teams.microsoft.com/policies/manage-apps).
<Warning>
After the app has been approved, it can take a few hours _(up to 24 hours in some cases)_ for Microsoft Teams to reflect the new app. During this period, the Infisical app will not be visible in Microsoft Teams, and won't be usable.
</Warning>
Once the app has been approved, you will be able to use the Infisical Microsoft Teams integration in your projects.
</Step>
<Step title="Add the Infisical Microsoft Teams app to your Microsoft Teams teams">
Once the app has been approved and installed in your Microsoft Teams tenant, you can add the app to your Microsoft Teams teams.
![microsoft-teams-add-app](/images/platform/workflow-integrations/microsoft-teams-integration/microsoft-teams-add-app.png)
Navigate to **Apps** > **Built for your org**, select the "Infisical" app, and press the "Add" button to select the teams and channels you wish to add the app to.
<Info>
This can also be done later through the [Microsoft Teams Admin Center](https://admin.teams.microsoft.com/policies/manage-apps), or through the Microsoft Teams client itself by navigating to the individual team's app settings.
</Info>
Once the app has been added to the team, you will be able to use the Infisical Microsoft Teams integration in the team.
</Step>
<Step title="Navigate to the Workflow Integrations tab in your organization settings">
After installing the Microsoft Teams app, you are now ready to configure the Microsoft Teams integration within Infisical.
Navigate to the **Workflow Integrations** tab in your organization settings, and press the "Add" button.
![org-integrations-overview](/images/platform/workflow-integrations/microsoft-teams-integration/infisical-org-overview.png)
</Step>
<Step title="Create a Microsoft Teams workflow integration">
In order to use the Infisical Microsoft Teams integration, you will need to grant admin consent to the app. Once the consent is granted, the Microsoft Teams workflow integration will be created in your Infisical organization.
Press the "Add" button and select the "Microsoft Teams" platform option.
![add-microsoft-teams-integration](/images/platform/workflow-integrations/microsoft-teams-integration/infisical-org-add-microsoft-teams-integration.png)
Select the Microsoft Teams integration you wish to configure, and press the "Configure" button.
Here you will be prompted to enter an alias, tenant ID, and an optional description for your workflow integration.
The tenant ID is the ID of the Microsoft 365 / Azure AD tenant that you installed the Infisical Microsoft Teams app in, in the previous steps.
![configure-microsoft-teams-integration](/images/platform/workflow-integrations/microsoft-teams-integration/infisical-org-microsoft-teams-integration-modal.png)
Press the "Create Microsoft Teams Integration" button, and you'll be navigated to the Azure AD consent page.
![microsoft-consent-page](/images/platform/workflow-integrations/microsoft-teams-integration/microsoft-consent-page.png)
<Note>
Please note that you must be a privileged administrator user of your Microsoft 365 / Azure AD tenant in order to grant admin consent to the app.
</Note>
Once you've granted admin consent, you'll be navigated back to the Infisical organization settings, where you can now select the Microsoft Teams integration you just created.
![microsoft-teams-workflow-integration-created](/images/platform/workflow-integrations/microsoft-teams-integration/microsoft-teams-workflow-integration-created.png)
</Step>
</Steps>
### Configure project to use Microsoft Teams workflow integration
<Steps>
<Step title="Navigate to the Workflow Integrations tab in the project settings">
To add a new Microsoft Teams workflow integration, navigate to **Project Settings** > **Workflow Integrations** and press the "Add".
![project-settings-workflow-integrations](/images/platform/workflow-integrations/microsoft-teams-integration/infisical-project-settings.png)
Select the "Microsoft Teams" option from the list of available workflow integrations.
</Step>
<Step title="Configure the Microsoft Teams workflow integration">
Your project will send notifications to the connected Microsoft Teams team of the
selected Microsoft Teams integration when the configured events are triggered.
Press the "Save" button to save your Microsoft Teams workflow integration.
![infisical-project-microsoft-teams-integration-save](/images/platform/workflow-integrations/microsoft-teams-integration/infisical-project-microsoft-teams-integration-save.png)
</Step>
</Steps>
Once you've created the project Microsoft Teams workflow integration, you will now receive Access Requests and Secret Approval Requests notifications in Microsoft Teams according to your configuration.

View File

@@ -97,7 +97,7 @@ export const WorkflowIntegrationTab = () => {
<Td>Secret Request Notifications</Td>
<Td>Access Request Notifications Destination</Td>
<Td>Secret Request Notifications Destination</Td>
<Td>Actions</Td>
<Td />
</Tr>
</THead>
<TBody>