Skip to content

Commit b3e42cd

Browse files
Update email notification docs to include Microsoft OAuth (#2639)
* Update email notification docs to include Microsoft OAuth * Add octopus version callout * Update modified date --------- Co-authored-by: Steve Fenton <[email protected]>
1 parent 0b5168d commit b3e42cd

File tree

1 file changed

+32
-2
lines changed

1 file changed

+32
-2
lines changed

src/pages/docs/projects/built-in-step-templates/email-notifications.md

Lines changed: 32 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
---
22
layout: src/layouts/Default.astro
33
pubDate: 2023-01-01
4-
modDate: 2024-08-27
4+
modDate: 2025-03-10
55
title: Email notification step
66
icon: fa-solid fa-envelope
77
description: Email notification steps allow you to notify team members and stakeholders of deployment activities.
@@ -57,6 +57,36 @@ When setting up the Workload Identity Federation:
5757
- When granting access to the service account, the principal must have the subject attribute name set to `smtp`. Example: `https://iam.googleapis.com/projects/{project-id}/locations/global/workloadIdentityPools/{pool-id}/subject/smtp`.
5858
- The service account must have domain wide delegation with an OAuth scope of `https://mail.google.com/`, see [documentation](https://developers.google.com/identity/protocols/oauth2/service-account#delegatingauthority) on how to set this up.
5959

60+
### Microsoft OAuth 2.0 Credentials
61+
62+
:::div{.warning}
63+
Support for Microsoft OAuth 2.0 authentication requires Octopus Server version 2025.2
64+
:::
65+
66+
Optionally for Microsoft SMTP authentication, you can use Federated Credentials and OAuth 2.0. To do this, set the following values:
67+
68+
| Property | Description | Example |
69+
| ------------------ | ------------------------------------ | ----------- |
70+
| Audience | The audience set on the Federated Credential | Defaults to `api://AzureADTokenExchange` |
71+
| Client ID | The Azure Active Directory Application ID/Client ID | GUID in the format xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx |
72+
| Tenant ID | The Azure Active Directory Tenant ID | GUID in the format xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx |
73+
74+
For OAuth 2.0 you will need to:
75+
1. Set up a Microsoft Entra ID App Registration.
76+
- See [documentation on registering an application](https://learn.microsoft.com/en-us/entra/identity-platform/quickstart-register-app?tabs=federated-credential%2Cexpose-a-web-api#register-an-application).
77+
- Set the configuration properties `Client ID` and `Tenant ID` with the values from your registered application.
78+
2. Add a Federated Credential.
79+
- See [documentation on adding credentials](https://learn.microsoft.com/en-us/entra/identity-platform/quickstart-register-app?tabs=federated-credential%2Cexpose-a-web-api#add-credentials).
80+
- Set the Issuer value to a publicly accessible Octopus Server URI, this value must also not have a trailing slash (/).
81+
- Set the Subject Identifier value to `smtp`.
82+
- The Audience value can be left as the default, or set to a custom value if needed.
83+
- Set the `Audience` configuration property with the value from your federated credential.
84+
3. Configure Microsoft Exchange SMTP settings.
85+
- Add SMTP permissions for your Entra AD application, see [documentation](https://learn.microsoft.com/en-gb/exchange/client-developer/legacy-protocols/how-to-authenticate-an-imap-pop-smtp-application-by-using-oauth#add-the-pop-imap-or-smtp-permissions-to-your-entra-ad-application).
86+
- Register your application's service principal in Exchange, see [documentation](https://learn.microsoft.com/en-gb/exchange/client-developer/legacy-protocols/how-to-authenticate-an-imap-pop-smtp-application-by-using-oauth#register-service-principals-in-exchange).
87+
88+
89+
6090
## Add an email step
6191

6292
Email steps are added to deployment processes in the same way as other steps.
@@ -184,4 +214,4 @@ Using [custom scripts](/docs/deployments/custom-scripts) you can include additio
184214
#{/if}
185215
#{/each}
186216
#{/each}
187-
```
217+
```

0 commit comments

Comments
 (0)