البدء السريع: كيفية إضافة النطاقات المدارة في Azure إلى خدمة الاتصال عبر البريد الإلكتروني
في هذه البداية السريعة، ستتعلم كيفية توفير المجال المدار Azure إلى خدمة اتصالات البريد الإلكتروني في Azure Communication Services.
المتطلبات الأساسية
- حساب Azure مع اشتراك نشط. أنشئ حساباً مجاناً.
- تم إنشاء مورد بريد إلكتروني لخدمات اتصالات Azure وجاهز لإضافة المجالات. راجع بدء استخدام إنشاء مورد اتصال البريد الإلكتروني.
توفير نطاق Azure المدار
افتح صفحة نظرة عامة لمورد خدمة اتصالات البريد الإلكتروني الذي قمت بإنشائه في بدء استخدام إنشاء مورد اتصال البريد الإلكتروني.
إنشاء مجال مدار من Azure باستخدام أحد الخيارات التالية.
- (الخيار 1) انقر على زر 1إضافة بنقرة واحدة أسفل إضافة نطاق فرعي Azure مجاني . تابع إلى الخطوة 3.
- (الخيار 2) انقر فوق Provision Domains على لوحة التنقل اليسرى.
- انقر فوق إضافة مجال على شريط التنقل العلوي.
- حدد نطاق Azure من القائمة المنسدلة.
انتظر حتى يكتمل التوزيع.
بمجرد إنشاء المجال، سترى طريقة عرض قائمة بالمجال الجديد.
انقر فوق اسم المجال المتوفر لفتح صفحة النظرة العامة لنوع مورد المجال.
المتطلبات الأساسية
- حساب Azure مع اشتراك نشط. أنشئ حساباً مجاناً.
- تثبيت Azure CLI
- إنشاء خدمة اتصالات البريد الإلكتروني.
إنشاء مورد المجال
لإنشاء مورد مجال، سجل الدخول إلى Azure CLI. يمكنك تسجيل الدخول لتشغيل az login
الأمر من المحطة الطرفية وتوفير بيانات الاعتماد الخاصة بك. لإنشاء المورد، قم بتشغيل الأمر التالي:
az communication email domain create --domain-name AzureManagedDomain --email-service-name "<EmailServiceName>" --location "Global" --resource-group "<resourceGroup>" --domain-management AzureManaged
إذا كنت ترغب في تحديد اشتراك معين، يمكنك أيضا تحديد العلامة --subscription
وتوفير معرف الاشتراك.
az communication email domain create --domain-name AzureManagedDomain --email-service-name "<EmailServiceName>" --location "Global" --resource-group "<resourceGroup>" --domain-management AzureManaged --subscription "<subscriptionId>"
يمكنك تكوين مورد المجال الخاص بك بالخيارات التالية:
- مجموعة الموارد
- اسم مورد خدمات اتصالات البريد الإلكتروني
- الجغرافيا التي سيرتبط بها المورد
- اسم مورد المجال:
- بالنسبة لمجالات Azure، يجب أن يكون الاسم AzureManagedDomain.
- قيمة خاصية إدارة المجال.
- بالنسبة لمجالات Azure، يجب أن تكون القيمة AzureManaged.
في الخطوة التالية، يمكنك تعيين علامات إلى مورد المجال. يمكن استخدام العلامات لتنظيم موارد المجال. لمزيد من المعلومات حول العلامات، راجع وثائق وضع علامات على الموارد.
إدارة مورد المجال
لإضافة علامات إلى مورد المجال، قم بتشغيل الأوامر التالية. يمكنك استهداف اشتراك معين أيضًا.
az communication email domain update --domain-name AzureManagedDomain --email-service-name "<EmailServiceName>" --resource-group "<resourceGroup>" --tags newTag="newVal1"
az communication email domain update --domain-name AzureManagedDomain --email-service-name "<EmailServiceName>" --resource-group "<resourceGroup>" --tags newTag="newVal1" --subscription "<subscriptionId>"
لسرد كافة موارد المجال في خدمة اتصال بريد إلكتروني معينة، استخدم الأمر التالي:
az communication email domain list --email-service-name "<EmailServiceName>" --resource-group "<resourceGroup>"
لإظهار كافة المعلومات حول مورد مجال معين، استخدم الأمر التالي:
az communication email domain show --domain-name AzureManagedDomain --email-service-name "<EmailServiceName>" --resource-group "<resourceGroup>"
تنظيف مورد المجال
إذا كنت تريد تنظيف مورد مجال وإزالته، يمكنك الحذف عن طريق تشغيل الأمر التالي.
az communication email domain delete --domain-name AzureManagedDomain --email-service-name "<EmailServiceName>" --resource-group "<resourceGroup>"
إشعار
حذف المورد دائم ولا يمكن استرداد أي بيانات، بما في ذلك عوامل تصفية شبكة الأحداث أو أرقام الهواتف أو البيانات الأخرى المرتبطة بموردك، إذا قمت بحذف المورد.
للحصول على معلومات حول الأوامر الأخرى، راجع Domain CLI.
المتطلبات الأساسية
- حساب Azure مع اشتراك نشط. أنشئ حساباً مجاناً.
- أحدث إصدار .NET Core SDK لنظام التشغيل.
- الحصول على أحدث إصدار من .NET Identity SDK.
- الحصول على أحدث إصدار من .NET Identity SDK.
تثبيت SDK
أولا، تضمين Communication Services Management SDK في مشروع #C الخاص بك:
using Azure.ResourceManager.Communication;
مُعرّف الاشتراك
تحتاج إلى معرفة معرف اشتراك Azure الخاص بك. يمكن معرفته من المدخل:
- سجل الدخول إلى حساب Azure الخاص بك
- حدد "Subscriptions" في القائمة اليسرى.
- حدد أي اشتراك مطلوب
- انقر على "Overview"
- حدد معرف الاشتراك
في هذه البداية السريعة، سنفترض أنك خزنت معرف الاشتراك في متغير بيئة يسمى AZURE_SUBSCRIPTION_ID
.
المصادقة
للاتصال بمورد المجال، يجب عليك أولا مصادقة نفسك إلى Azure.
مصادقة العميل
الخيار الافتراضي لإنشاء عميل مصادق عليه هو استخدام DefaultAzureCredential. نظرا لأن جميع واجهات برمجة التطبيقات للإدارة تمر عبر نفس نقطة النهاية، من أجل التفاعل مع الموارد، يجب إنشاء ArmClient واحد فقط من المستوى الأعلى.
للمصادقة على Azure وإنشاء ArmClient، قم بالتعليمات البرمجية التالية:
using System;
using System.Threading.Tasks;
using Azure;
using Azure.Core;
using Azure.Identity;
using Azure.ResourceManager;
using Azure.ResourceManager.Communication;
using Azure.ResourceManager.Resources;
...
// get your azure access token, for more details of how Azure SDK get your access token, please refer to https://learn.microsoft.com/dotnet/azure/sdk/authentication?tabs=command-line
TokenCredential cred = new DefaultAzureCredential();
// authenticate your client
ArmClient client = new ArmClient(cred);
التفاعل مع موارد Azure
الآن بعد أن تمت مصادقتك.
لكل من الأمثلة التالية، سنقوم بتعيين موارد المجال الخاصة بنا إلى خدمة اتصال بريد إلكتروني موجودة.
إذا كنت بحاجة إلى إنشاء خدمة اتصالات البريد الإلكتروني، يمكنك القيام بذلك باستخدام مدخل Microsoft Azure.
إنشاء مورد مجال
عند إنشاء مورد مجال، يجب عليك تحديد اسم مجموعة الموارد واسم خدمة اتصال البريد الإلكتروني واسم المورد وإدارة المجال.
إشعار
الخاصية Location
هي دائما global
.
// this example assumes you already have this EmailServiceResource created on azure
// for more information of creating EmailServiceResource, please refer to the document of EmailServiceResource
string subscriptionId = "11112222-3333-4444-5555-666677778888";
string resourceGroupName = "MyResourceGroup";
string emailServiceName = "MyEmailServiceResource";
ResourceIdentifier emailServiceResourceId = EmailServiceResource.CreateResourceIdentifier(subscriptionId, resourceGroupName, emailServiceName);
EmailServiceResource emailServiceResource = client.GetEmailServiceResource(emailServiceResourceId);
// get the collection of this CommunicationDomainResource
CommunicationDomainResourceCollection collection = emailServiceResource.GetCommunicationDomainResources();
// invoke the operation
string domainName = "AzureManagedDomain";
CommunicationDomainResourceData data = new CommunicationDomainResourceData(new AzureLocation("Global"))
{
DomainManagement = DomainManagement.AzureManaged,
};
ArmOperation<CommunicationDomainResource> lro = await collection.CreateOrUpdateAsync(WaitUntil.Completed, domainName, data);
CommunicationDomainResource result = lro.Value;
// the variable result is a resource, you could call other operations on this instance as well
// but just for demo, we get its data from this resource instance
CommunicationDomainResourceData resourceData = result.Data;
// for demo we just print out the id
Console.WriteLine($"Succeeded on id: {resourceData.Id}");
إدارة موارد المجال
تحديث مورد مجال
...
// this example assumes you already have this CommunicationDomainResource created on azure
// for more information of creating CommunicationDomainResource, please refer to the document of CommunicationDomainResource
string subscriptionId = "11112222-3333-4444-5555-666677778888";
string resourceGroupName = "MyResourceGroup";
string emailServiceName = "MyEmailServiceResource";
string domainName = "AzureManagedDomain";
ResourceIdentifier communicationDomainResourceId = CommunicationDomainResource.CreateResourceIdentifier(subscriptionId, resourceGroupName, emailServiceName, domainName);
CommunicationDomainResource communicationDomainResource = client.GetCommunicationDomainResource(communicationDomainResourceId);
// invoke the operation
CommunicationDomainResourcePatch patch = new CommunicationDomainResourcePatch()
{
Tags =
{
["newTag"] = "newVal",
},
};
ArmOperation<CommunicationDomainResource> lro = await communicationDomainResource.UpdateAsync(WaitUntil.Completed, patch);
CommunicationDomainResource result = lro.Value;
// the variable result is a resource, you could call other operations on this instance as well
// but just for demo, we get its data from this resource instance
CommunicationDomainResourceData resourceData = result.Data;
// for demo we just print out the id
Console.WriteLine($"Succeeded on id: {resourceData.Id}");
قائمة حسب خدمة البريد الإلكتروني
// this example assumes you already have this EmailServiceResource created on azure
// for more information of creating EmailServiceResource, please refer to the document of EmailServiceResource
string subscriptionId = "11112222-3333-4444-5555-666677778888";
string resourceGroupName = "MyResourceGroup";
string emailServiceName = "MyEmailServiceResource";
ResourceIdentifier emailServiceResourceId = EmailServiceResource.CreateResourceIdentifier(subscriptionId, resourceGroupName, emailServiceName);
EmailServiceResource emailServiceResource = client.GetEmailServiceResource(emailServiceResourceId);
// get the collection of this CommunicationDomainResource
CommunicationDomainResourceCollection collection = emailServiceResource.GetCommunicationDomainResources();
// invoke the operation and iterate over the result
await foreach (CommunicationDomainResource item in collection.GetAllAsync())
{
// the variable item is a resource, you could call other operations on this instance as well
// but just for demo, we get its data from this resource instance
CommunicationDomainResourceData resourceData = item.Data;
// for demo we just print out the id
Console.WriteLine($"Succeeded on id: {resourceData.Id}");
}
Console.WriteLine($"Succeeded");
الحصول على مورد المجال
// this example assumes you already have this EmailServiceResource created on azure
// for more information of creating EmailServiceResource, please refer to the document of EmailServiceResource
string subscriptionId = "11112222-3333-4444-5555-666677778888";
string resourceGroupName = "MyResourceGroup";
string emailServiceName = "MyEmailServiceResource";
ResourceIdentifier emailServiceResourceId = EmailServiceResource.CreateResourceIdentifier(subscriptionId, resourceGroupName, emailServiceName);
EmailServiceResource emailServiceResource = client.GetEmailServiceResource(emailServiceResourceId);
// get the collection of this CommunicationDomainResource
CommunicationDomainResourceCollection collection = emailServiceResource.GetCommunicationDomainResources();
// invoke the operation
string domainName = "AzureManagedDomain";
bool result = await collection.ExistsAsync(domainName);
Console.WriteLine($"Succeeded: {result}");
تنظيف مورد مجال
// this example assumes you already have this CommunicationDomainResource created on azure
// for more information of creating CommunicationDomainResource, please refer to the document of CommunicationDomainResource
string subscriptionId = "11112222-3333-4444-5555-666677778888";
string resourceGroupName = "MyResourceGroup";
string emailServiceName = "MyEmailServiceResource";
string domainName = "AzureManagedDomain";
ResourceIdentifier communicationDomainResourceId = CommunicationDomainResource.CreateResourceIdentifier(subscriptionId, resourceGroupName, emailServiceName, domainName);
CommunicationDomainResource communicationDomainResource = client.GetCommunicationDomainResource(communicationDomainResourceId);
// invoke the operation
await communicationDomainResource.DeleteAsync(WaitUntil.Completed);
Console.WriteLine($"Succeeded");
إشعار
حذف المورد دائم ولا يمكن استرداد أي بيانات، بما في ذلك عوامل تصفية شبكة الأحداث أو أرقام الهواتف أو البيانات الأخرى المرتبطة بموردك، إذا قمت بحذف المورد.
المتطلبات الأساسية
- حساب Azure مع اشتراك نشط. أنشئ حساباً مجاناً.
- تثبيت وحدة Azure Az PowerShell النمطية
- إنشاء خدمة اتصالات البريد الإلكتروني.
إنشاء مورد مجال
لإنشاء مورد مجال، قم بتسجيل الدخول إلى حساب Azure الخاص بك باستخدام Connect-AzAccount
الأمر التالي وتوفير بيانات الاعتماد الخاصة بك.
PS C:\> Connect-AzAccount
أولا، تأكد من تثبيت الوحدة النمطية Az.Communication
Azure Communication Services باستخدام الأمر التالي.
PS C:\> Install-Module Az.Communication
قم بتشغيل الأمر التالي لإنشاء مورد المجال المدار من Azure:
PS C:\> New-AzEmailServiceDomain -ResourceGroupName ContosoResourceProvider1 -EmailServiceName ContosoEmailServiceResource1 -Name AzureManagedDomain -DomainManagement AzureManaged
يمكنك تكوين مورد المجال الخاص بك بالخيارات التالية:
- مجموعة الموارد
- اسم مورد خدمات اتصالات البريد الإلكتروني.
- اسم مورد المجال:
- بالنسبة لمجالات Azure، يجب أن يكون الاسم - AzureManagedDomain.
- قيمة خاصية إدارة المجال.
- بالنسبة لمجالات Azure، يجب أن تكون القيمة AzureManaged.
في الخطوة التالية، يمكنك تعيين علامات إلى مورد المجال. يمكن استخدام العلامات لتنظيم موارد المجال. لمزيد من المعلومات حول العلامات، راجع وثائق وضع علامات على الموارد.
إدارة مورد المجال
لإضافة علامات إلى مورد المجال، قم بتشغيل الأوامر التالية. يمكنك استهداف اشتراك معين أيضًا.
PS C:\> Update-AzEmailServiceDomain -Name AzureManagedDomain -EmailServiceName ContosoEmailServiceResource1 -ResourceGroupName ContosoResourceProvider1 -Tag @{ExampleKey1="ExampleValue1"}
PS C:\> Update-AzEmailServiceDomain -Name AzureManagedDomain -EmailServiceName ContosoEmailServiceResource1 -ResourceGroupName ContosoResourceProvider1 -Tag @{ExampleKey1="ExampleValue1"} -SubscriptionId SubscriptionID
لسرد كافة موارد المجال في خدمة اتصال بريد إلكتروني معينة، استخدم الأمر التالي:
PS C:\> Get-AzEmailServiceDomain -EmailServiceName ContosoEmailServiceResource1 -ResourceGroupName ContosoResourceProvider1
لسرد كافة المعلومات على مورد مجال معين، استخدم الأمر التالي:
PS C:\> Get-AzEmailServiceDomain -Name AzureManagedDomain -EmailServiceName ContosoEmailServiceResource1 -ResourceGroupName ContosoResourceProvider1
تنظيف مورد مجال
إذا كنت تريد تنظيف مورد مجال وإزالته، يمكنك حذف مورد المجال الخاص بك عن طريق تشغيل الأمر التالي:
PS C:\> Remove-AzEmailServiceDomain -Name AzureManagedDomain -EmailServiceName ContosoEmailServiceResource1 -ResourceGroupName ContosoResourceProvider1
إشعار
حذف المورد دائم ولا يمكن استرداد أي بيانات، بما في ذلك عوامل تصفية شبكة الأحداث أو أرقام الهواتف أو البيانات الأخرى المرتبطة بموردك، إذا قمت بحذف المورد.
المجالات المدارة من Azure مقارنة بالمجالات المخصصة
قبل توفير مجال مدار من Azure، راجع الجدول التالي لتحديد نوع المجال الذي يلبي احتياجاتك على أفضل نحو.
المجالات المدارة من Azure | المجالات المخصصة | |
---|---|---|
الايجابيات: | - الإعداد سريع وسهل - لا يلزم التحقق من المجال |
- يتم إرسال رسائل البريد الإلكتروني من مجالك الخاص |
سلبيات: | - مجال المرسل غير مخصص ولا يمكن تغييره - لا يمكن تخصيص أسماء المستخدمين المرسلين - حجم إرسال محدود جدا - لا يمكن تمكين "تعقب تفاعل المستخدم" |
- يتطلب التحقق من سجلات المجال - إعداد أطول للتحقق |
مصادقة المرسل للنطاق المدار Azure
تقوم Azure Communication Services تلقائيا بتكوين بروتوكولات مصادقة البريد الإلكتروني المطلوبة للبريد الإلكتروني كما هو موضح في أفضل ممارسات مصادقة البريد الإلكتروني.
مجال بريدك الإلكتروني جاهز الآن لإرسال رسائل البريد الإلكتروني.
الخطوات التالية
التشغيل السريع: كيفية توصيل مجال بريد إلكتروني تم التحقق منه
كيفية إرسال بريد إلكتروني باستخدام Azure Communication Service
المقالات ذات الصلة
- التعرف على مكتبة عميل البريد الإلكتروني
- تعرف على كيفية إرسال رسائل البريد الإلكتروني باستخدام المجالات المخصصة التي تم التحقق منها في التشغيل السريع: كيفية إضافة مجالات بريد إلكتروني مخصصة تم التحقق منها