- A familiarity and understanding of the concepts covered in [custom authentication extensions](/entra/identity-platform/custom-extension-overview).
- An Azure subscription. If you don't have an existing Azure account, sign up for a [free trial](https://azure.microsoft.com/free/dotnet/) or use your [Visual Studio Subscription](https://visualstudio.microsoft.com/subscriptions/) benefits when you [create an account](https://account.windowsazure.com/Home/Index).
- A Microsoft Entra ID [external tenant](../external-id/customers/quickstart-tenant-setup.md).
- A mail relay service providers:
### [Azure Communication Services](#tab/azure-communication-services)
### 1.1 Create an HTTP trigger function
After the Azure Function app is created, create an HTTP trigger function. The HTTP trigger lets you invoke a function with an HTTP request. This HTTP trigger is referenced by your Microsoft Entra custom authentication extension.
1. Within your **Function App**, from the menu select **Functions**.
1. Select **Create function**.
## Step 2: Add connection strings to the Azure Function
Connection strings enable the Communication Services SDKs to connect and authenticate to Azure. For both Azure Communication Services and SendGrid You'll then need to add these connection strings to your Azure Function app as environment variables.
### [Azure Communication Services](#tab/azure-communication-services)
- A familiarity and understanding of the concepts covered in [custom authentication extensions](/entra/identity-platform/custom-extension-overview).
- An Azure subscription. If you don't have an existing Azure account, sign up for a [free trial](https://azure.microsoft.com/free/dotnet/) or use your [Visual Studio Subscription](https://visualstudio.microsoft.com/subscriptions/) benefits when you [create an account](https://account.windowsazure.com/Home/Index).
- A Microsoft Entra ID [external tenant](../external-id/customers/quickstart-tenant-setup.md).
- A mail relay service provider:
### [Azure Communication Services](#tab/azure-communication-services)
### 1.1 Create an HTTP trigger function
After the Azure Function app is created, create an HTTP trigger function. The HTTP trigger lets you invoke a function with an HTTP request. Your Microsoft Entra custom authentication extension links to this HTTP trigger function.
1. Within your **Function App**, from the menu select **Functions**.
1. Select **Create function**.
## Step 2: Add connection strings to the Azure Function
Connection strings enable your function app to connect and authenticate to the mail relay service. For both Azure Communication Services and SendGrid, add these connection strings to your Azure Function app as environment variables.
### [Azure Communication Services](#tab/azure-communication-services)