Servicio de Azure que se usa para controlar y ayudar a proteger el correo electrónico, los documentos y los datos confidenciales que se comparten fuera de la empresa.
Hello Jut-2755!
Thanks for posting your question on Microsoft QnA!
Answering to your question: Yes, those requirements are generally valid if you're planning to send emails through Microsoft Graph API or Exchange Online, especially from a custom app like Azure Function.
But depending on how complex or scalable your email automation needs are, there may be simpler and more scalable ways using Azure-native tools like Logic Apps, Function Apps, or Power Automate.
Following are some simpler methods which you can use
Method 1: Azure Logic App (Most User-Friendly) Learn how: (https://learn.microsoft.com/en-us/azure/connectors/connectors-create-api-office365-outlook?tabs=consumption)
Best for non-developers or when you need easy integration.
Use the built-in Office 365 Outlook connector to send emails on a schedule.
Requirements:
- An Office 365 (Exchange Online) account.
- A licensed user in the same tenant (sender).
- The connection is usually authenticated via OAuth.
- You can connect to SharePoint, SQL, blob storage, or fetch dynamic content to include in your emails with no custom code required.
Method 2: Use of Power Automate flow: Lean how (https://learn.microsoft.com/en-us/power-automate/email-top-scenarios)
- Very similar to Logic Apps but mostly for business users.
- Uses the same Office 365 connectors.
- Easier to manage by end-users with low code skills.
Method 3: Using Microsoft Graph + Azure Automation (or Azure Function) - Little complex and need code
- Create and Configure the App Registration
- Go to: Azure Portal → Search App registrations in search bar → App Registrations → New Registration
- Name your AppRegistration in the textBox
- Choose Single Tenant
- Set Up Authentication
Generate a Client Secret (or upload a certificate) under Certificates & Secrets
Store this securely (see Step 5)
- Assign Microsoft Graph API Permissions
- Go to API Permissions → Add a permission → Microsoft Graph Choose:
- Mail.Send under Application permissions (for non-interactive scenarios) OR
Delegated permissionsif the app acts on behalf of a user - Click “Grant admin consent for [Tenant Name]”to finalize
- Prepare the Mailbox
- Must exist in the same Entra ID tenant and be Exchange Online licensed
- For shared mailboxes, assign the app appropriate Send As or Send on Behalf rights via Exchange Admin Center or PowerShell Learn How from the following reference: https://learn.microsoft.com/en-us/exchange/recipients-in-exchange-online/create-user-mailboxes https://learn.microsoft.com/en-us/powershell/module/exchangepowershell/enable-mailbox?view=exchange-ps
- Secure the App Credentials
- Store the client secret securely using Azure Key Vault or an Azure Automation credential asset
- Avoid hard-coding secrets in your script or code.
- Automate & Schedule the Email
Use Microsoft Graph API to send the email via script (PowerShell, Python, etc.)
- Schedule execution using Azure Automation, Azure Function, or an external scheduler
- Trigger it daily or based on business logic
Please "Accept as Answer" if the answer provided is useful, so that you can help others in the community looking for remediation for similar issues.
Thanks and Happy to Help!
Pratyush