خدمة إدارة Microsoft.Api

تعريف مورد Bicep

يمكن نشر نوع مورد الخدمة مع العمليات التي تستهدف:

  • مجموعات الموارد - راجع أوامر نشر مجموعة الموارد

للحصول على قائمة بالخصائص التي تم تغييرها في كل إصدار من إصدارات واجهة برمجة التطبيقات، راجع سجل التغيير .

تنسيق المورد

لإنشاء مورد Microsoft.ApiManagement/service، أضف Bicep التالي إلى القالب الخاص بك.

resource symbolicname 'Microsoft.ApiManagement/service@2023-09-01-preview' = {
  name: 'string'
  location: 'string'
  tags: {
    tagName1: 'tagValue1'
    tagName2: 'tagValue2'
  }
  sku: {
    capacity: int
    name: 'string'
  }
  identity: {
    type: 'string'
    userAssignedIdentities: {
      {customized property}: {
        clientId: 'string'
        principalId: 'string'
      }
    }
  }
  properties: {
    additionalLocations: [
      {
        disableGateway: bool
        location: 'string'
        natGatewayState: 'string'
        publicIpAddressId: 'string'
        sku: {
          capacity: int
          name: 'string'
        }
        virtualNetworkConfiguration: {
          subnetResourceId: 'string'
        }
        zones: [
          'string'
        ]
      }
    ]
    apiVersionConstraint: {
      minApiVersion: 'string'
    }
    certificates: [
      {
        certificate: {
          expiry: 'string'
          subject: 'string'
          thumbprint: 'string'
        }
        certificatePassword: 'string'
        encodedCertificate: 'string'
        storeName: 'string'
      }
    ]
    configurationApi: {
      legacyApi: 'string'
    }
    customProperties: {
      {customized property}: 'string'
    }
    developerPortalStatus: 'string'
    disableGateway: bool
    enableClientCertificate: bool
    hostnameConfigurations: [
      {
        certificate: {
          expiry: 'string'
          subject: 'string'
          thumbprint: 'string'
        }
        certificatePassword: 'string'
        certificateSource: 'string'
        certificateStatus: 'string'
        defaultSslBinding: bool
        encodedCertificate: 'string'
        hostName: 'string'
        identityClientId: 'string'
        keyVaultId: 'string'
        negotiateClientCertificate: bool
        type: 'string'
      }
    ]
    legacyPortalStatus: 'string'
    natGatewayState: 'string'
    notificationSenderEmail: 'string'
    privateEndpointConnections: [
      {
        id: 'string'
        name: 'string'
        properties: {
          privateEndpoint: {}
          privateLinkServiceConnectionState: {
            actionsRequired: 'string'
            description: 'string'
            status: 'string'
          }
        }
        type: 'string'
      }
    ]
    publicIpAddressId: 'string'
    publicNetworkAccess: 'string'
    publisherEmail: 'string'
    publisherName: 'string'
    restore: bool
    virtualNetworkConfiguration: {
      subnetResourceId: 'string'
    }
    virtualNetworkType: 'string'
  }
  zones: [
    'string'
  ]
}

قيم الخصائص

خدمة

اسم وصف قيمة
اسم اسم المورد سلسلة (مطلوب)

حد الحرف: 1-50

الأحرف الصالحة:
الأبجدية الرقمية والواصلات.

ابدأ بحرف وانتهي بالأبجدية الرقمية.

يجب أن يكون اسم المورد فريدا عبر Azure.
مكان موقع المورد. سلسلة (مطلوب)
العلامات علامات الموارد. قاموس أسماء العلامات والقيم. راجع العلامات في القوالب
سكو خصائص SKU لخدمة APIM. ApiManagementServiceSkuProperties (مطلوب)
الهوية هوية الخدمة المدارة لخدمة APIM. ApiManagementServiceIdentity
خصائص خصائص خدمة APIM. ApiManagementServiceProperties (مطلوب)
مناطق قائمة بمناطق التوفر التي تدل على المكان الذي يجب أن يأتي منه المورد. سلسلة[]

ApiManagementServiceIdentity

اسم وصف قيمة
نوع نوع الهوية المستخدمة للمورد. يتضمن النوع "SystemAssigned, UserAssigned" كلا من الهوية التي تم إنشاؤها ضمنيا ومجموعة من الهويات المعينة من قبل المستخدم. سيقوم النوع "بلا" بإزالة أي هويات من الخدمة. "بلا"
'SystemAssigned'
"SystemAssigned, UserAssigned"
"UserAssigned" (مطلوب)
معرفات تعيين المستخدم قائمة هويات المستخدم المقترنة بالمورد. هوية المستخدم
ستكون مراجع مفاتيح القاموس معرفات موارد ARM في النموذج:
'/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/
providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'.
ApiManagementServiceIdentityUserAssignedIdentities

ApiManagementServiceIdentityUserAssignedIdentities

اسم وصف قيمة
{خاصية مخصصة} UserIdentityProperties

خصائص معرف المستخدم

اسم وصف قيمة
معرف العميل معرف العميل للهوية المعينة من قبل المستخدم. خيط
معرف أساسي المعرف الأساسي للهوية المعينة من قبل المستخدم. خيط

ApiManagementServiceProperties

اسم وصف قيمة
مواقع إضافية مواقع مركز بيانات إضافية لخدمة APIM. AdditionalLocation[]
apiVersionConstraint قيد إصدار وحدة التحكم Apis لخدمة APIM. ApiVersionConstraint
الشهادات قائمة الشهادات التي تحتاج إلى تثبيت في خدمة APIM. الحد الأقصى للشهادات المدعومة التي يمكن تثبيتها هو 10. تكوين الشهادة []
configurationApi تكوين واجهة برمجة تطبيقات التكوين لخدمة APIM. ConfigurationApi
خصائص مخصصة خصائص مخصصة لخدمة APIM.
سيؤدي إعداد Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TripleDes168 إلى تعطيل TLS_RSA_WITH_3DES_EDE_CBC_SHA التشفير لكافة TLS(1.0 و1.1 و1.2).
يمكن استخدام إعداد Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11 لتعطيل TLS 1.1 فقط.
يمكن استخدام إعداد Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10 لتعطيل TLS 1.0 على خدمة APIM.
يمكن استخدام إعداد Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls11 لتعطيل TLS 1.1 فقط للاتصالات مع الخلفيات.
يمكن استخدام إعداد Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls10 لتعطيل TLS 1.0 للاتصالات مع الخلفيات.
يمكن استخدام إعداد Microsoft.WindowsAzure.ApiManagement.Gateway.Protocols.Server.Http2 لتمكين بروتوكول HTTP2 على خدمة APIM.
سيؤدي عدم تحديد أي من هذه الخصائص في عملية PATCH إلى إعادة تعيين قيم الخصائص المحذفة إلى الإعدادات الافتراضية الخاصة بها. بالنسبة لجميع الإعدادات باستثناء Http2، يتم True القيمة الافتراضية إذا تم إنشاء الخدمة في 1 أبريل 2018 أو قبل ذلك False خلاف ذلك. القيمة الافتراضية لإعداد Http2 هي False.

يمكنك تعطيل أي من الشفرات التالية باستخدام الإعدادات Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.[cipher_name]: TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA، TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA، TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA، TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA، TLS_RSA_WITH_AES_128_GCM_SHA256، TLS_RSA_WITH_AES_256_CBC_SHA256، TLS_RSA_WITH_AES_128_CBC_SHA256 TLS_RSA_WITH_AES_256_CBC_SHA TLS_RSA_WITH_AES_128_CBC_SHA على سبيل المثال، Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TLS_RSA_WITH_AES_128_CBC_SHA256:false. القيمة الافتراضية هي true لهم.
ملاحظة: لا يمكن تعطيل الشفرات التالية نظرا لأنها مطلوبة من قبل مكونات النظام الأساسي الداخلي: TLS_AES_256_GCM_SHA384،TLS_AES_128_GCM_SHA256،TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384،TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256،TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384،TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256، TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384، TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256، TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384، TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256
ApiManagementServiceBasePropertiesCustomProperties
developerPortalStatus حالة مدخل المطور في خدمة APIM هذه. "معطل"
"ممكن"
تعطيلGateway الخاصية صالحة فقط لخدمة APIM المنشورة في مواقع متعددة. يمكن استخدام هذا لتعطيل البوابة في المنطقة الرئيسية. قيمة منطقية
enableClientCertificate الخاصية المقصود بها فقط أن تستخدم لخدمة SKU الاستهلاك. يفرض هذا شهادة عميل ليتم تقديمها على كل طلب إلى البوابة. وهذا يتيح أيضا القدرة على مصادقة الشهادة في النهج على البوابة. قيمة منطقية
تكوينات اسم المضيف تكوين اسم المضيف المخصص لخدمة APIM. تكوين اسم المضيف[]
legacyPortalStatus حالة المدخل القديم في خدمة APIM. "معطل"
"ممكن"
natGatewayState يمكن استخدام الخاصية لتمكين بوابة NAT لخدمة APIM هذه. "معطل"
"ممكن"
notificationSenderEmail عنوان البريد الإلكتروني الذي سيتم إرسال الإعلام منه. خيط

القيود:
الحد الأقصى للطول = 100
اتصالات نقطة النهاية الخاصة قائمة اتصالات نقطة النهاية الخاصة لهذه الخدمة. RemotePrivateEndpointConnectionWrapper[]
publicIpAddressId عنوان IP المستند إلى SKU IP V4 القياسي العام ليتم إقرانه بخدمة الشبكة الظاهرية المنشورة في المنطقة. مدعوم فقط للمطور وPremium SKU الذي يتم نشره في الشبكة الظاهرية. خيط
publicNetworkAccess ما إذا كان يسمح بالوصول إلى نقطة النهاية العامة لخدمة APIM هذه أم لا. القيمة اختيارية ولكن إذا تم تمريرها، يجب أن تكون "ممكن" أو "معطل". إذا كانت "معطل"، فإن نقاط النهاية الخاصة هي أسلوب الوصول الحصري. القيمة الافتراضية هي "ممكن" "معطل"
"ممكن"
publisherEmail البريد الإلكتروني للناشر. سلسلة (مطلوب)

القيود:
الحد الأقصى للطول = 100
اسم الناشر اسم الناشر. سلسلة (مطلوب)

القيود:
الحد الأقصى للطول = 100
يستعيد إلغاء حذف خدمة إدارة واجهة برمجة التطبيقات إذا تم حذفها مبدئيا مسبقا. إذا تم تحديد هذه العلامة وتعيينها إلى True سيتم تجاهل كافة الخصائص الأخرى. قيمة منطقية
تكوين الشبكة الظاهرية تكوين الشبكة الظاهرية لخدمة APIM. تكوين الشبكة الظاهرية
نوع الشبكة الظاهرية نوع VPN الذي يجب تكوين خدمة APIM فيه. لا شيء (القيمة الافتراضية) يعني أن خدمة إدارة واجهة برمجة التطبيقات ليست جزءا من أي شبكة ظاهرية، ويعني خارجي أنه تم إعداد نشر إدارة واجهة برمجة التطبيقات داخل شبكة ظاهرية تحتوي على نقطة نهاية مواجهة للإنترنت، ويعني داخلي أنه يتم إعداد نشر إدارة واجهة برمجة التطبيقات داخل شبكة ظاهرية تحتوي على نقطة نهاية مواجهة إنترانت فقط. "خارجي"
"داخلي"
"بلا"

تخصيص إضافي

اسم وصف قيمة
تعطيلGateway الخاصية صالحة فقط لخدمة APIM المنشورة في مواقع متعددة. يمكن استخدام هذا لتعطيل البوابة في هذا الموقع الإضافي. قيمة منطقية
مكان اسم موقع المنطقة الإضافية بين مناطق مركز بيانات Azure. سلسلة (مطلوب)
natGatewayState يمكن استخدام الخاصية لتمكين بوابة NAT لخدمة APIM هذه. "معطل"
"ممكن"
publicIpAddressId عنوان IP المستند إلى SKU IP V4 القياسي العام ليتم إقرانه بخدمة الشبكة الظاهرية المنشورة في الموقع. مدعوم فقط ل Premium SKU الذي يتم نشره في الشبكة الظاهرية. خيط
سكو خصائص SKU لخدمة APIM. ApiManagementServiceSkuProperties (مطلوب)
تكوين الشبكة الظاهرية تكوين الشبكة الظاهرية للموقع. تكوين الشبكة الظاهرية
مناطق قائمة بمناطق التوفر التي تدل على المكان الذي يجب أن يأتي منه المورد. سلسلة[]

ApiManagementServiceSkuProperties

اسم وصف قيمة
سعة سعة SKU (عدد الوحدات المنشورة من SKU). بالنسبة إلى سعة وحدة SKU للاستهلاك يجب تحديدها ك 0. int (مطلوب)
اسم اسم Sku. "قياسي"
'WorkspaceGatewayPremium'
'WorkspaceGatewayStandard' (مطلوب)

تكوين الشبكة الظاهرية

اسم وصف قيمة
subnetResourceId معرف المورد الكامل لشبكة فرعية في شبكة ظاهرية لنشر خدمة APIM فيها. خيط

القيود:
النمط = ^/subscriptions/[^/]*/resourceGroups/[^/]*/providers/Microsoft.(ClassicNetwork|Network)/virtualNetworks/[^/]*/subnets/[^/]*$

ApiVersionConstraint

اسم وصف قيمة
minApiVersion تقييد استدعاءات واجهة برمجة التطبيقات لمستوى التحكم إلى خدمة APIM مع إصدار يساوي هذه القيمة أو أحدث منها. خيط

تكوين الشهادة

اسم وصف قيمة
شهادة معلومات الشهادة. معلومات الشهادة
certificatePassword كلمة مرور الشهادة. خيط
ترميزCertificate شهادة ترميز Base64. خيط
اسم المتجر موقع مخزن شهادات System.Security.Cryptography.x509certificates.StoreName. الجذر و CertificateAuthority هما فقط موقعان صالحان. "شهادة المصادقة"
"الجذر" (مطلوب)

معلومات الشهادة

اسم وصف قيمة
انتهاء تاريخ انتهاء صلاحية الشهادة. يتوافق التاريخ مع التنسيق التالي: yyyy-MM-ddTHH:mm:ssZ كما هو محدد بواسطة معيار ISO 8601. سلسلة (مطلوب)
موضوع موضوع الشهادة. سلسلة (مطلوب)
بصمه الابهام بصمة الإبهام للشهادة. سلسلة (مطلوب)

ConfigurationApi

اسم وصف قيمة
legacyApi الإشارة إلى ما إذا كان يجب عرض واجهة برمجة تطبيقات التكوين القديمة (v1) على خدمة APIM أم لا. القيمة اختيارية ولكن يجب أن تكون "ممكنة" أو "معطل". إذا "معطل"، فلن تتوفر واجهة برمجة تطبيقات التكوين القديمة (v1) للبوابات المستضافة ذاتيا. القيمة الافتراضية هي "ممكن" "معطل"
"ممكن"

ApiManagementServiceBasePropertiesCustomProperties

اسم وصف قيمة
{خاصية مخصصة} خيط

تكوين اسم المضيف

اسم وصف قيمة
شهادة معلومات الشهادة. معلومات الشهادة
certificatePassword كلمة مرور الشهادة. خيط
مصدر الشهادة مصدر الشهادة. 'BuiltIn'
"مخصص"
"KeyVault"
"مدار"
حالة الشهادات حالة الشهادة. "مكتمل"
"فشل"
"InProgress"
defaultSslBinding حدد true لإعداد الشهادة المقترنة باسم المضيف هذا كشهادة SSL الافتراضية. إذا لم يرسل العميل عنوان SNI، فستكون هذه الشهادة التي سيتم الطعن فيها. الخاصية مفيدة إذا تم تمكين اسم مضيف مخصص متعدد للخدمة وتحتاج إلى اتخاذ قرار بشأن شهادة ssl الافتراضية. يتم تطبيق الإعداد فقط على نوع اسم المضيف للبوابة. قيمة منطقية
ترميزCertificate شهادة ترميز Base64. خيط
اسم المضيف اسم المضيف للتكوين على خدمة APIM. سلسلة (مطلوب)
معرف الهوية معرف عميل الهوية المدارة المعين من قبل النظام أو المستخدم كما تم إنشاؤه بواسطة Azure AD، والذي لديه حق الوصول GET إلى keyVault الذي يحتوي على شهادة SSL. خيط
keyVaultId Url إلى KeyVault Secret الذي يحتوي على شهادة Ssl. إذا تم توفير Url مطلق يحتوي على إصدار، فلن يعمل التحديث التلقائي لشهادة ssl. يتطلب هذا تكوين خدمة APIM مع aka.ms/apimmsi. يجب أن يكون السر من النوع application/x-pkcs12 خيط
negotiateClientCertificate حدد true للتفاوض دائما على شهادة العميل على اسم المضيف. القيمة الافتراضية خطأ. قيمة منطقية
نوع نوع اسم المضيف. "ConfigurationApi"
"DeveloperPortal"
"الإدارة"
"المدخل"
"الوكيل"
'Scm' (مطلوب)

RemotePrivateEndpointConnectionWrapper

اسم وصف قيمة
معرف معرف مورد اتصال نقطة النهاية الخاصة خيط
اسم اسم اتصال نقطة النهاية الخاصة خيط
خصائص خصائص المورد. PrivateEndpointConnectionWrapperProperties
نوع نوع مورد اتصال نقطة النهاية الخاصة خيط

PrivateEndpointConnectionWrapperProperties

اسم وصف قيمة
نقطة نهاية خاصة مورد نقطة النهاية الخاصة. ArmIdWrapper
privateLinkServiceConnectionState مجموعة من المعلومات حول حالة الاتصال بين مستهلك الخدمة والموفر. PrivateLinkServiceConnectionState (مطلوب)

ArmIdWrapper

لا يحتوي هذا الكائن على أي خصائص لتعيينها أثناء النشر. جميع الخصائص هي ReadOnly.

PrivateLinkServiceConnectionState

اسم وصف قيمة
الإجراءات المطلوبة رسالة تشير إلى ما إذا كانت التغييرات على موفر الخدمة تتطلب أي تحديثات على المستهلك. خيط
وصف سبب الموافقة على الاتصال أو رفضه. خيط
حالة يشير إلى ما إذا كان الاتصال قد تمت الموافقة عليه/رفضه/إزالته من قبل مالك الخدمة. "تمت الموافقة"
"معلق"
"مرفوض"

قوالب التشغيل السريع

تنشر قوالب التشغيل السريع التالية نوع المورد هذا.

قالب وصف
إنشاء مثيل APIM وجميع الموارد الفرعية باستخدام القالب

Deploy to Azure
يوضح هذا القالب كيفية إنشاء خدمة APIM وتكوين الكيانات الفرعية
نشر إدارة واجهة برمجة التطبيقات باستخدام Azure Cache خارجي ل Redis

Deploy to Azure
يوضح هذا القالب كيفية إنشاء مثيل Azure API Management في طبقة الاستهلاك باستخدام Azure Cache خارجي لمثيل Redis كذاكرة تخزين مؤقت خارجية لإدارة واجهة برمجة التطبيقات.
نشر إدارة واجهة برمجة التطبيقات في VNet الخارجية باستخدام IP العام

Deploy to Azure
يوضح هذا القالب كيفية إنشاء مثيل Azure API Management في المستوى Premium داخل الشبكة الفرعية للشبكة الظاهرية في الوضع الخارجي وتكوين قواعد NSG الموصى بها على الشبكة الفرعية. يتم نشر المثيل في منطقتين للتوفر. يقوم القالب أيضا بتكوين عنوان IP عام من اشتراكك.
إنشاء مثيل APIM مع أسماء مضيفين مخصصة

Deploy to Azure
يوضح هذا القالب كيفية إنشاء مثيل Azure API Management مع اسم مضيف مخصص للمدخل وأسماء مضيف مخصصة متعددة للوكيل
إنشاء إدارة واجهة برمجة التطبيقات في VNet الداخلية باستخدام بوابة التطبيق

Deploy to Azure
يوضح هذا القالب كيفية إنشاء مثيل Azure API Management على شبكة خاصة محمية بواسطة بوابة تطبيق Azure.
نشر إدارة واجهة برمجة التطبيقات في VNet الداخلية باستخدام IP العام

Deploy to Azure
يوضح هذا القالب كيفية إنشاء مثيل Azure API Management في المستوى Premium داخل الشبكة الفرعية للشبكة الظاهرية في الوضع الداخلي وتكوين قواعد NSG الموصى بها على الشبكة الفرعية. يتم نشر المثيل في منطقتين للتوفر. يقوم القالب أيضا بتكوين عنوان IP عام من اشتراكك.
إنشاء مثيل APIM يحتوي على هوية MSI

Deploy to Azure
ينشئ هذا القالب مثيل مطور لإدارة واجهة برمجة تطبيقات Azure التي لها هوية MSI
إنشاء مثيل إدارة واجهة برمجة تطبيقات متعددة المستويات المتميزة

Deploy to Azure
يوضح هذا القالب كيفية إنشاء مثيل APIM مع مواقع إضافية. الموقع الأساسي هو نفس موقع مجموعة الموارد. للحصول على مواقع إضافية، يعرض القالب NorthCentralUs وشرق US2. يجب أن يكون الموقع الأساسي مختلفا عن المواقع الإضافية.
إنشاء إدارة واجهة برمجة التطبيقات باستخدام ssl للوكيل المخصص باستخدام KeyVault

Deploy to Azure
يوضح هذا القالب كيفية إنشاء مثيل Azure API Management وتكوين اسم مضيف مخصص للوكيل مع شهادة ssl من keyvault.
إنشاء خدمة APIM باستخدام SSL من KeyVault

Deploy to Azure
ينشر هذا القالب خدمة إدارة واجهة برمجة التطبيقات التي تم تكوينها باستخدام الهوية المعينة من قبل المستخدم. يستخدم هذه الهوية لإحضار شهادة SSL من KeyVault ويحافظ على تحديثها عن طريق التحقق كل 4 ساعات.
إنشاء مثيل APIM ومراقبته

Deploy to Azure
ينشئ هذا القالب مثيلا لخدمة Azure API Management ومساحة عمل Log Analytics وإعداد المراقبة لخدمة APIM باستخدام Log Analytics
إنشاء خدمة APIM بنقطة نهاية خاصة

Deploy to Azure
سيقوم هذا القالب بإنشاء خدمة APIM وشبكة ظاهرية ونقطة نهاية خاصة تعرض خدمة APIM للشبكة الظاهرية.
نشر إدارة واجهة برمجة التطبيقات في مناطق التوفر

Deploy to Azure
ينشئ هذا القالب مثيلا متميزا من Azure API Management وينشر في منطقة توفر
إنشاء مثيل APIM باستخدام قالب

Deploy to Azure
ينشئ هذا القالب مثيل مطور من Azure API Management
Front Door Standard/Premium مع أصل APIM

Deploy to Azure
ينشئ هذا القالب Front Door Premium ومثيل APIM، ويستخدم NSG ونهج إدارة واجهة برمجة التطبيقات العمومية للتحقق من أن نسبة استخدام الشبكة قد جاءت من خلال أصل Front Door.
إنشاء Azure Front Door أمام azure API Management

Deploy to Azure
يوضح هذا النموذج كيفية استخدام Azure Front Door كموازن تحميل عمومي أمام Azure API Management.
Application Gateway مع إدارة واجهة برمجة التطبيقات الداخلية وتطبيق الويب

Deploy to Azure
توجيه حركة مرور الإنترنت لبوابة التطبيق إلى مثيل APIM للشبكة الظاهرية (الوضع الداخلي) الذي يقوم بخدمات واجهة برمجة تطبيقات الويب المستضافة في Azure Web App.

تعريف مورد قالب ARM

يمكن نشر نوع مورد الخدمة مع العمليات التي تستهدف:

  • مجموعات الموارد - راجع أوامر نشر مجموعة الموارد

للحصول على قائمة بالخصائص التي تم تغييرها في كل إصدار من إصدارات واجهة برمجة التطبيقات، راجع سجل التغيير .

تنسيق المورد

لإنشاء مورد Microsoft.ApiManagement/service، أضف JSON التالي إلى القالب الخاص بك.

{
  "type": "Microsoft.ApiManagement/service",
  "apiVersion": "2023-09-01-preview",
  "name": "string",
  "location": "string",
  "tags": {
    "tagName1": "tagValue1",
    "tagName2": "tagValue2"
  },
  "sku": {
    "capacity": "int",
    "name": "string"
  },
  "identity": {
    "type": "string",
    "userAssignedIdentities": {
      "{customized property}": {
        "clientId": "string",
        "principalId": "string"
      }
    }
  },
  "properties": {
    "additionalLocations": [
      {
        "disableGateway": "bool",
        "location": "string",
        "natGatewayState": "string",
        "publicIpAddressId": "string",
        "sku": {
          "capacity": "int",
          "name": "string"
        },
        "virtualNetworkConfiguration": {
          "subnetResourceId": "string"
        },
        "zones": [ "string" ]
      }
    ],
    "apiVersionConstraint": {
      "minApiVersion": "string"
    },
    "certificates": [
      {
        "certificate": {
          "expiry": "string",
          "subject": "string",
          "thumbprint": "string"
        },
        "certificatePassword": "string",
        "encodedCertificate": "string",
        "storeName": "string"
      }
    ],
    "configurationApi": {
      "legacyApi": "string"
    },
    "customProperties": {
      "{customized property}": "string"
    },
    "developerPortalStatus": "string",
    "disableGateway": "bool",
    "enableClientCertificate": "bool",
    "hostnameConfigurations": [
      {
        "certificate": {
          "expiry": "string",
          "subject": "string",
          "thumbprint": "string"
        },
        "certificatePassword": "string",
        "certificateSource": "string",
        "certificateStatus": "string",
        "defaultSslBinding": "bool",
        "encodedCertificate": "string",
        "hostName": "string",
        "identityClientId": "string",
        "keyVaultId": "string",
        "negotiateClientCertificate": "bool",
        "type": "string"
      }
    ],
    "legacyPortalStatus": "string",
    "natGatewayState": "string",
    "notificationSenderEmail": "string",
    "privateEndpointConnections": [
      {
        "id": "string",
        "name": "string",
        "properties": {
          "privateEndpoint": {},
          "privateLinkServiceConnectionState": {
            "actionsRequired": "string",
            "description": "string",
            "status": "string"
          }
        },
        "type": "string"
      }
    ],
    "publicIpAddressId": "string",
    "publicNetworkAccess": "string",
    "publisherEmail": "string",
    "publisherName": "string",
    "restore": "bool",
    "virtualNetworkConfiguration": {
      "subnetResourceId": "string"
    },
    "virtualNetworkType": "string"
  },
  "zones": [ "string" ]
}

قيم الخصائص

خدمة

اسم وصف قيمة
نوع نوع المورد 'Microsoft.ApiManagement/service'
apiVersion إصدار واجهة برمجة تطبيقات المورد '2023-09-01-preview'
اسم اسم المورد سلسلة (مطلوب)

حد الحرف: 1-50

الأحرف الصالحة:
الأبجدية الرقمية والواصلات.

ابدأ بحرف وانتهي بالأبجدية الرقمية.

يجب أن يكون اسم المورد فريدا عبر Azure.
مكان موقع المورد. سلسلة (مطلوب)
العلامات علامات الموارد. قاموس أسماء العلامات والقيم. راجع العلامات في القوالب
سكو خصائص SKU لخدمة APIM. ApiManagementServiceSkuProperties (مطلوب)
الهوية هوية الخدمة المدارة لخدمة APIM. ApiManagementServiceIdentity
خصائص خصائص خدمة APIM. ApiManagementServiceProperties (مطلوب)
مناطق قائمة بمناطق التوفر التي تدل على المكان الذي يجب أن يأتي منه المورد. سلسلة[]

ApiManagementServiceIdentity

اسم وصف قيمة
نوع نوع الهوية المستخدمة للمورد. يتضمن النوع "SystemAssigned, UserAssigned" كلا من الهوية التي تم إنشاؤها ضمنيا ومجموعة من الهويات المعينة من قبل المستخدم. سيقوم النوع "بلا" بإزالة أي هويات من الخدمة. "بلا"
'SystemAssigned'
"SystemAssigned, UserAssigned"
"UserAssigned" (مطلوب)
معرفات تعيين المستخدم قائمة هويات المستخدم المقترنة بالمورد. هوية المستخدم
ستكون مراجع مفاتيح القاموس معرفات موارد ARM في النموذج:
'/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/
providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'.
ApiManagementServiceIdentityUserAssignedIdentities

ApiManagementServiceIdentityUserAssignedIdentities

اسم وصف قيمة
{خاصية مخصصة} UserIdentityProperties

خصائص معرف المستخدم

اسم وصف قيمة
معرف العميل معرف العميل للهوية المعينة من قبل المستخدم. خيط
معرف أساسي المعرف الأساسي للهوية المعينة من قبل المستخدم. خيط

ApiManagementServiceProperties

اسم وصف قيمة
مواقع إضافية مواقع مركز بيانات إضافية لخدمة APIM. AdditionalLocation[]
apiVersionConstraint قيد إصدار وحدة التحكم Apis لخدمة APIM. ApiVersionConstraint
الشهادات قائمة الشهادات التي تحتاج إلى تثبيت في خدمة APIM. الحد الأقصى للشهادات المدعومة التي يمكن تثبيتها هو 10. تكوين الشهادة []
configurationApi تكوين واجهة برمجة تطبيقات التكوين لخدمة APIM. ConfigurationApi
خصائص مخصصة خصائص مخصصة لخدمة APIM.
سيؤدي إعداد Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TripleDes168 إلى تعطيل TLS_RSA_WITH_3DES_EDE_CBC_SHA التشفير لكافة TLS(1.0 و1.1 و1.2).
يمكن استخدام إعداد Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11 لتعطيل TLS 1.1 فقط.
يمكن استخدام إعداد Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10 لتعطيل TLS 1.0 على خدمة APIM.
يمكن استخدام إعداد Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls11 لتعطيل TLS 1.1 فقط للاتصالات مع الخلفيات.
يمكن استخدام إعداد Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls10 لتعطيل TLS 1.0 للاتصالات مع الخلفيات.
يمكن استخدام إعداد Microsoft.WindowsAzure.ApiManagement.Gateway.Protocols.Server.Http2 لتمكين بروتوكول HTTP2 على خدمة APIM.
سيؤدي عدم تحديد أي من هذه الخصائص في عملية PATCH إلى إعادة تعيين قيم الخصائص المحذفة إلى الإعدادات الافتراضية الخاصة بها. بالنسبة لجميع الإعدادات باستثناء Http2، يتم True القيمة الافتراضية إذا تم إنشاء الخدمة في 1 أبريل 2018 أو قبل ذلك False خلاف ذلك. القيمة الافتراضية لإعداد Http2 هي False.

يمكنك تعطيل أي من الشفرات التالية باستخدام الإعدادات Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.[cipher_name]: TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA، TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA، TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA، TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA، TLS_RSA_WITH_AES_128_GCM_SHA256، TLS_RSA_WITH_AES_256_CBC_SHA256، TLS_RSA_WITH_AES_128_CBC_SHA256 TLS_RSA_WITH_AES_256_CBC_SHA TLS_RSA_WITH_AES_128_CBC_SHA على سبيل المثال، Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TLS_RSA_WITH_AES_128_CBC_SHA256:false. القيمة الافتراضية هي true لهم.
ملاحظة: لا يمكن تعطيل الشفرات التالية نظرا لأنها مطلوبة من قبل مكونات النظام الأساسي الداخلي: TLS_AES_256_GCM_SHA384،TLS_AES_128_GCM_SHA256،TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384،TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256،TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384،TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256، TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384، TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256، TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384، TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256
ApiManagementServiceBasePropertiesCustomProperties
developerPortalStatus حالة مدخل المطور في خدمة APIM هذه. "معطل"
"ممكن"
تعطيلGateway الخاصية صالحة فقط لخدمة APIM المنشورة في مواقع متعددة. يمكن استخدام هذا لتعطيل البوابة في المنطقة الرئيسية. قيمة منطقية
enableClientCertificate الخاصية المقصود بها فقط أن تستخدم لخدمة SKU الاستهلاك. يفرض هذا شهادة عميل ليتم تقديمها على كل طلب إلى البوابة. وهذا يتيح أيضا القدرة على مصادقة الشهادة في النهج على البوابة. قيمة منطقية
تكوينات اسم المضيف تكوين اسم المضيف المخصص لخدمة APIM. تكوين اسم المضيف[]
legacyPortalStatus حالة المدخل القديم في خدمة APIM. "معطل"
"ممكن"
natGatewayState يمكن استخدام الخاصية لتمكين بوابة NAT لخدمة APIM هذه. "معطل"
"ممكن"
notificationSenderEmail عنوان البريد الإلكتروني الذي سيتم إرسال الإعلام منه. خيط

القيود:
الحد الأقصى للطول = 100
اتصالات نقطة النهاية الخاصة قائمة اتصالات نقطة النهاية الخاصة لهذه الخدمة. RemotePrivateEndpointConnectionWrapper[]
publicIpAddressId عنوان IP المستند إلى SKU IP V4 القياسي العام ليتم إقرانه بخدمة الشبكة الظاهرية المنشورة في المنطقة. مدعوم فقط للمطور وPremium SKU الذي يتم نشره في الشبكة الظاهرية. خيط
publicNetworkAccess ما إذا كان يسمح بالوصول إلى نقطة النهاية العامة لخدمة APIM هذه أم لا. القيمة اختيارية ولكن إذا تم تمريرها، يجب أن تكون "ممكن" أو "معطل". إذا كانت "معطل"، فإن نقاط النهاية الخاصة هي أسلوب الوصول الحصري. القيمة الافتراضية هي "ممكن" "معطل"
"ممكن"
publisherEmail البريد الإلكتروني للناشر. سلسلة (مطلوب)

القيود:
الحد الأقصى للطول = 100
اسم الناشر اسم الناشر. سلسلة (مطلوب)

القيود:
الحد الأقصى للطول = 100
يستعيد إلغاء حذف خدمة إدارة واجهة برمجة التطبيقات إذا تم حذفها مبدئيا مسبقا. إذا تم تحديد هذه العلامة وتعيينها إلى True سيتم تجاهل كافة الخصائص الأخرى. قيمة منطقية
تكوين الشبكة الظاهرية تكوين الشبكة الظاهرية لخدمة APIM. تكوين الشبكة الظاهرية
نوع الشبكة الظاهرية نوع VPN الذي يجب تكوين خدمة APIM فيه. لا شيء (القيمة الافتراضية) يعني أن خدمة إدارة واجهة برمجة التطبيقات ليست جزءا من أي شبكة ظاهرية، ويعني خارجي أنه تم إعداد نشر إدارة واجهة برمجة التطبيقات داخل شبكة ظاهرية تحتوي على نقطة نهاية مواجهة للإنترنت، ويعني داخلي أنه يتم إعداد نشر إدارة واجهة برمجة التطبيقات داخل شبكة ظاهرية تحتوي على نقطة نهاية مواجهة إنترانت فقط. "خارجي"
"داخلي"
"بلا"

تخصيص إضافي

اسم وصف قيمة
تعطيلGateway الخاصية صالحة فقط لخدمة APIM المنشورة في مواقع متعددة. يمكن استخدام هذا لتعطيل البوابة في هذا الموقع الإضافي. قيمة منطقية
مكان اسم موقع المنطقة الإضافية بين مناطق مركز بيانات Azure. سلسلة (مطلوب)
natGatewayState يمكن استخدام الخاصية لتمكين بوابة NAT لخدمة APIM هذه. "معطل"
"ممكن"
publicIpAddressId عنوان IP المستند إلى SKU IP V4 القياسي العام ليتم إقرانه بخدمة الشبكة الظاهرية المنشورة في الموقع. مدعوم فقط ل Premium SKU الذي يتم نشره في الشبكة الظاهرية. خيط
سكو خصائص SKU لخدمة APIM. ApiManagementServiceSkuProperties (مطلوب)
تكوين الشبكة الظاهرية تكوين الشبكة الظاهرية للموقع. تكوين الشبكة الظاهرية
مناطق قائمة بمناطق التوفر التي تدل على المكان الذي يجب أن يأتي منه المورد. سلسلة[]

ApiManagementServiceSkuProperties

اسم وصف قيمة
سعة سعة SKU (عدد الوحدات المنشورة من SKU). بالنسبة إلى سعة وحدة SKU للاستهلاك يجب تحديدها ك 0. int (مطلوب)
اسم اسم Sku. "قياسي"
'WorkspaceGatewayPremium'
'WorkspaceGatewayStandard' (مطلوب)

تكوين الشبكة الظاهرية

اسم وصف قيمة
subnetResourceId معرف المورد الكامل لشبكة فرعية في شبكة ظاهرية لنشر خدمة APIM فيها. خيط

القيود:
النمط = ^/subscriptions/[^/]*/resourceGroups/[^/]*/providers/Microsoft.(ClassicNetwork|Network)/virtualNetworks/[^/]*/subnets/[^/]*$

ApiVersionConstraint

اسم وصف قيمة
minApiVersion تقييد استدعاءات واجهة برمجة التطبيقات لمستوى التحكم إلى خدمة APIM مع إصدار يساوي هذه القيمة أو أحدث منها. خيط

تكوين الشهادة

اسم وصف قيمة
شهادة معلومات الشهادة. معلومات الشهادة
certificatePassword كلمة مرور الشهادة. خيط
ترميزCertificate شهادة ترميز Base64. خيط
اسم المتجر موقع مخزن شهادات System.Security.Cryptography.x509certificates.StoreName. الجذر و CertificateAuthority هما فقط موقعان صالحان. "شهادة المصادقة"
"الجذر" (مطلوب)

معلومات الشهادة

اسم وصف قيمة
انتهاء تاريخ انتهاء صلاحية الشهادة. يتوافق التاريخ مع التنسيق التالي: yyyy-MM-ddTHH:mm:ssZ كما هو محدد بواسطة معيار ISO 8601. سلسلة (مطلوب)
موضوع موضوع الشهادة. سلسلة (مطلوب)
بصمه الابهام بصمة الإبهام للشهادة. سلسلة (مطلوب)

ConfigurationApi

اسم وصف قيمة
legacyApi الإشارة إلى ما إذا كان يجب عرض واجهة برمجة تطبيقات التكوين القديمة (v1) على خدمة APIM أم لا. القيمة اختيارية ولكن يجب أن تكون "ممكنة" أو "معطل". إذا "معطل"، فلن تتوفر واجهة برمجة تطبيقات التكوين القديمة (v1) للبوابات المستضافة ذاتيا. القيمة الافتراضية هي "ممكن" "معطل"
"ممكن"

ApiManagementServiceBasePropertiesCustomProperties

اسم وصف قيمة
{خاصية مخصصة} خيط

تكوين اسم المضيف

اسم وصف قيمة
شهادة معلومات الشهادة. معلومات الشهادة
certificatePassword كلمة مرور الشهادة. خيط
مصدر الشهادة مصدر الشهادة. 'BuiltIn'
"مخصص"
"KeyVault"
"مدار"
حالة الشهادات حالة الشهادة. "مكتمل"
"فشل"
"InProgress"
defaultSslBinding حدد true لإعداد الشهادة المقترنة باسم المضيف هذا كشهادة SSL الافتراضية. إذا لم يرسل العميل عنوان SNI، فستكون هذه الشهادة التي سيتم الطعن فيها. الخاصية مفيدة إذا تم تمكين اسم مضيف مخصص متعدد للخدمة وتحتاج إلى اتخاذ قرار بشأن شهادة ssl الافتراضية. يتم تطبيق الإعداد فقط على نوع اسم المضيف للبوابة. قيمة منطقية
ترميزCertificate شهادة ترميز Base64. خيط
اسم المضيف اسم المضيف للتكوين على خدمة APIM. سلسلة (مطلوب)
معرف الهوية معرف عميل الهوية المدارة المعين من قبل النظام أو المستخدم كما تم إنشاؤه بواسطة Azure AD، والذي لديه حق الوصول GET إلى keyVault الذي يحتوي على شهادة SSL. خيط
keyVaultId Url إلى KeyVault Secret الذي يحتوي على شهادة Ssl. إذا تم توفير Url مطلق يحتوي على إصدار، فلن يعمل التحديث التلقائي لشهادة ssl. يتطلب هذا تكوين خدمة APIM مع aka.ms/apimmsi. يجب أن يكون السر من النوع application/x-pkcs12 خيط
negotiateClientCertificate حدد true للتفاوض دائما على شهادة العميل على اسم المضيف. القيمة الافتراضية خطأ. قيمة منطقية
نوع نوع اسم المضيف. "ConfigurationApi"
"DeveloperPortal"
"الإدارة"
"المدخل"
"الوكيل"
'Scm' (مطلوب)

RemotePrivateEndpointConnectionWrapper

اسم وصف قيمة
معرف معرف مورد اتصال نقطة النهاية الخاصة خيط
اسم اسم اتصال نقطة النهاية الخاصة خيط
خصائص خصائص المورد. PrivateEndpointConnectionWrapperProperties
نوع نوع مورد اتصال نقطة النهاية الخاصة خيط

PrivateEndpointConnectionWrapperProperties

اسم وصف قيمة
نقطة نهاية خاصة مورد نقطة النهاية الخاصة. ArmIdWrapper
privateLinkServiceConnectionState مجموعة من المعلومات حول حالة الاتصال بين مستهلك الخدمة والموفر. PrivateLinkServiceConnectionState (مطلوب)

ArmIdWrapper

لا يحتوي هذا الكائن على أي خصائص لتعيينها أثناء النشر. جميع الخصائص هي ReadOnly.

PrivateLinkServiceConnectionState

اسم وصف قيمة
الإجراءات المطلوبة رسالة تشير إلى ما إذا كانت التغييرات على موفر الخدمة تتطلب أي تحديثات على المستهلك. خيط
وصف سبب الموافقة على الاتصال أو رفضه. خيط
حالة يشير إلى ما إذا كان الاتصال قد تمت الموافقة عليه/رفضه/إزالته من قبل مالك الخدمة. "تمت الموافقة"
"معلق"
"مرفوض"

قوالب التشغيل السريع

تنشر قوالب التشغيل السريع التالية نوع المورد هذا.

قالب وصف
إنشاء مثيل APIM وجميع الموارد الفرعية باستخدام القالب

Deploy to Azure
يوضح هذا القالب كيفية إنشاء خدمة APIM وتكوين الكيانات الفرعية
نشر إدارة واجهة برمجة التطبيقات باستخدام Azure Cache خارجي ل Redis

Deploy to Azure
يوضح هذا القالب كيفية إنشاء مثيل Azure API Management في طبقة الاستهلاك باستخدام Azure Cache خارجي لمثيل Redis كذاكرة تخزين مؤقت خارجية لإدارة واجهة برمجة التطبيقات.
نشر إدارة واجهة برمجة التطبيقات في VNet الخارجية باستخدام IP العام

Deploy to Azure
يوضح هذا القالب كيفية إنشاء مثيل Azure API Management في المستوى Premium داخل الشبكة الفرعية للشبكة الظاهرية في الوضع الخارجي وتكوين قواعد NSG الموصى بها على الشبكة الفرعية. يتم نشر المثيل في منطقتين للتوفر. يقوم القالب أيضا بتكوين عنوان IP عام من اشتراكك.
إنشاء مثيل APIM مع أسماء مضيفين مخصصة

Deploy to Azure
يوضح هذا القالب كيفية إنشاء مثيل Azure API Management مع اسم مضيف مخصص للمدخل وأسماء مضيف مخصصة متعددة للوكيل
إنشاء إدارة واجهة برمجة التطبيقات في VNet الداخلية باستخدام بوابة التطبيق

Deploy to Azure
يوضح هذا القالب كيفية إنشاء مثيل Azure API Management على شبكة خاصة محمية بواسطة بوابة تطبيق Azure.
نشر إدارة واجهة برمجة التطبيقات في VNet الداخلية باستخدام IP العام

Deploy to Azure
يوضح هذا القالب كيفية إنشاء مثيل Azure API Management في المستوى Premium داخل الشبكة الفرعية للشبكة الظاهرية في الوضع الداخلي وتكوين قواعد NSG الموصى بها على الشبكة الفرعية. يتم نشر المثيل في منطقتين للتوفر. يقوم القالب أيضا بتكوين عنوان IP عام من اشتراكك.
إنشاء مثيل APIM يحتوي على هوية MSI

Deploy to Azure
ينشئ هذا القالب مثيل مطور لإدارة واجهة برمجة تطبيقات Azure التي لها هوية MSI
إنشاء مثيل إدارة واجهة برمجة تطبيقات متعددة المستويات المتميزة

Deploy to Azure
يوضح هذا القالب كيفية إنشاء مثيل APIM مع مواقع إضافية. الموقع الأساسي هو نفس موقع مجموعة الموارد. للحصول على مواقع إضافية، يعرض القالب NorthCentralUs وشرق US2. يجب أن يكون الموقع الأساسي مختلفا عن المواقع الإضافية.
إنشاء إدارة واجهة برمجة التطبيقات باستخدام ssl للوكيل المخصص باستخدام KeyVault

Deploy to Azure
يوضح هذا القالب كيفية إنشاء مثيل Azure API Management وتكوين اسم مضيف مخصص للوكيل مع شهادة ssl من keyvault.
إنشاء خدمة APIM باستخدام SSL من KeyVault

Deploy to Azure
ينشر هذا القالب خدمة إدارة واجهة برمجة التطبيقات التي تم تكوينها باستخدام الهوية المعينة من قبل المستخدم. يستخدم هذه الهوية لإحضار شهادة SSL من KeyVault ويحافظ على تحديثها عن طريق التحقق كل 4 ساعات.
إنشاء مثيل APIM ومراقبته

Deploy to Azure
ينشئ هذا القالب مثيلا لخدمة Azure API Management ومساحة عمل Log Analytics وإعداد المراقبة لخدمة APIM باستخدام Log Analytics
إنشاء خدمة APIM بنقطة نهاية خاصة

Deploy to Azure
سيقوم هذا القالب بإنشاء خدمة APIM وشبكة ظاهرية ونقطة نهاية خاصة تعرض خدمة APIM للشبكة الظاهرية.
نشر إدارة واجهة برمجة التطبيقات في مناطق التوفر

Deploy to Azure
ينشئ هذا القالب مثيلا متميزا من Azure API Management وينشر في منطقة توفر
إنشاء مثيل APIM باستخدام قالب

Deploy to Azure
ينشئ هذا القالب مثيل مطور من Azure API Management
Front Door Standard/Premium مع أصل APIM

Deploy to Azure
ينشئ هذا القالب Front Door Premium ومثيل APIM، ويستخدم NSG ونهج إدارة واجهة برمجة التطبيقات العمومية للتحقق من أن نسبة استخدام الشبكة قد جاءت من خلال أصل Front Door.
إنشاء Azure Front Door أمام azure API Management

Deploy to Azure
يوضح هذا النموذج كيفية استخدام Azure Front Door كموازن تحميل عمومي أمام Azure API Management.
Application Gateway مع إدارة واجهة برمجة التطبيقات الداخلية وتطبيق الويب

Deploy to Azure
توجيه حركة مرور الإنترنت لبوابة التطبيق إلى مثيل APIM للشبكة الظاهرية (الوضع الداخلي) الذي يقوم بخدمات واجهة برمجة تطبيقات الويب المستضافة في Azure Web App.

تعريف مورد Terraform (موفر AzAPI)

يمكن نشر نوع مورد الخدمة مع العمليات التي تستهدف:

  • مجموعات الموارد

للحصول على قائمة بالخصائص التي تم تغييرها في كل إصدار من إصدارات واجهة برمجة التطبيقات، راجع سجل التغيير .

تنسيق المورد

لإنشاء مورد Microsoft.ApiManagement/service، أضف Terraform التالي إلى القالب الخاص بك.

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.ApiManagement/service@2023-09-01-preview"
  name = "string"
  location = "string"
  parent_id = "string"
  tags = {
    tagName1 = "tagValue1"
    tagName2 = "tagValue2"
  }
  identity {
    type = "string"
    identity_ids = []
  }
  body = jsonencode({
    properties = {
      additionalLocations = [
        {
          disableGateway = bool
          location = "string"
          natGatewayState = "string"
          publicIpAddressId = "string"
          sku = {
            capacity = int
            name = "string"
          }
          virtualNetworkConfiguration = {
            subnetResourceId = "string"
          }
          zones = [
            "string"
          ]
        }
      ]
      apiVersionConstraint = {
        minApiVersion = "string"
      }
      certificates = [
        {
          certificate = {
            expiry = "string"
            subject = "string"
            thumbprint = "string"
          }
          certificatePassword = "string"
          encodedCertificate = "string"
          storeName = "string"
        }
      ]
      configurationApi = {
        legacyApi = "string"
      }
      customProperties = {
        {customized property} = "string"
      }
      developerPortalStatus = "string"
      disableGateway = bool
      enableClientCertificate = bool
      hostnameConfigurations = [
        {
          certificate = {
            expiry = "string"
            subject = "string"
            thumbprint = "string"
          }
          certificatePassword = "string"
          certificateSource = "string"
          certificateStatus = "string"
          defaultSslBinding = bool
          encodedCertificate = "string"
          hostName = "string"
          identityClientId = "string"
          keyVaultId = "string"
          negotiateClientCertificate = bool
          type = "string"
        }
      ]
      legacyPortalStatus = "string"
      natGatewayState = "string"
      notificationSenderEmail = "string"
      privateEndpointConnections = [
        {
          id = "string"
          name = "string"
          properties = {
            privateEndpoint = {}
            privateLinkServiceConnectionState = {
              actionsRequired = "string"
              description = "string"
              status = "string"
            }
          }
          type = "string"
        }
      ]
      publicIpAddressId = "string"
      publicNetworkAccess = "string"
      publisherEmail = "string"
      publisherName = "string"
      restore = bool
      virtualNetworkConfiguration = {
        subnetResourceId = "string"
      }
      virtualNetworkType = "string"
    }
    zones = [
      "string"
    ]
    sku = {
      capacity = int
      name = "string"
    }
  })
}

قيم الخصائص

خدمة

اسم وصف قيمة
نوع نوع المورد "Microsoft.ApiManagement/service@2023-09-01-preview"
اسم اسم المورد سلسلة (مطلوب)

حد الحرف: 1-50

الأحرف الصالحة:
الأبجدية الرقمية والواصلات.

ابدأ بحرف وانتهي بالأبجدية الرقمية.

يجب أن يكون اسم المورد فريدا عبر Azure.
مكان موقع المورد. سلسلة (مطلوب)
parent_id للنشر إلى مجموعة موارد، استخدم معرف مجموعة الموارد هذه. سلسلة (مطلوب)
العلامات علامات الموارد. قاموس أسماء العلامات والقيم.
سكو خصائص SKU لخدمة APIM. ApiManagementServiceSkuProperties (مطلوب)
الهوية هوية الخدمة المدارة لخدمة APIM. ApiManagementServiceIdentity
خصائص خصائص خدمة APIM. ApiManagementServiceProperties (مطلوب)
مناطق قائمة بمناطق التوفر التي تدل على المكان الذي يجب أن يأتي منه المورد. سلسلة[]

ApiManagementServiceIdentity

اسم وصف قيمة
نوع نوع الهوية المستخدمة للمورد. يتضمن النوع "SystemAssigned, UserAssigned" كلا من الهوية التي تم إنشاؤها ضمنيا ومجموعة من الهويات المعينة من قبل المستخدم. سيقوم النوع "بلا" بإزالة أي هويات من الخدمة. "SystemAssigned"
"SystemAssigned, UserAssigned"
"UserAssigned" (مطلوب)
identity_ids قائمة هويات المستخدم المقترنة بالمورد. هوية المستخدم
ستكون مراجع مفاتيح القاموس معرفات موارد ARM في النموذج:
'/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/
providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'.
صفيف معرفات هوية المستخدم.

ApiManagementServiceIdentityUserAssignedIdentities

اسم وصف قيمة
{خاصية مخصصة} UserIdentityProperties

خصائص معرف المستخدم

اسم وصف قيمة
معرف العميل معرف العميل للهوية المعينة من قبل المستخدم. خيط
معرف أساسي المعرف الأساسي للهوية المعينة من قبل المستخدم. خيط

ApiManagementServiceProperties

اسم وصف قيمة
مواقع إضافية مواقع مركز بيانات إضافية لخدمة APIM. AdditionalLocation[]
apiVersionConstraint قيد إصدار وحدة التحكم Apis لخدمة APIM. ApiVersionConstraint
الشهادات قائمة الشهادات التي تحتاج إلى تثبيت في خدمة APIM. الحد الأقصى للشهادات المدعومة التي يمكن تثبيتها هو 10. تكوين الشهادة []
configurationApi تكوين واجهة برمجة تطبيقات التكوين لخدمة APIM. ConfigurationApi
خصائص مخصصة خصائص مخصصة لخدمة APIM.
سيؤدي إعداد Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TripleDes168 إلى تعطيل TLS_RSA_WITH_3DES_EDE_CBC_SHA التشفير لكافة TLS(1.0 و1.1 و1.2).
يمكن استخدام إعداد Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11 لتعطيل TLS 1.1 فقط.
يمكن استخدام إعداد Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10 لتعطيل TLS 1.0 على خدمة APIM.
يمكن استخدام إعداد Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls11 لتعطيل TLS 1.1 فقط للاتصالات مع الخلفيات.
يمكن استخدام إعداد Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls10 لتعطيل TLS 1.0 للاتصالات مع الخلفيات.
يمكن استخدام إعداد Microsoft.WindowsAzure.ApiManagement.Gateway.Protocols.Server.Http2 لتمكين بروتوكول HTTP2 على خدمة APIM.
سيؤدي عدم تحديد أي من هذه الخصائص في عملية PATCH إلى إعادة تعيين قيم الخصائص المحذفة إلى الإعدادات الافتراضية الخاصة بها. بالنسبة لجميع الإعدادات باستثناء Http2، يتم True القيمة الافتراضية إذا تم إنشاء الخدمة في 1 أبريل 2018 أو قبل ذلك False خلاف ذلك. القيمة الافتراضية لإعداد Http2 هي False.

يمكنك تعطيل أي من الشفرات التالية باستخدام الإعدادات Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.[cipher_name]: TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA، TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA، TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA، TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA، TLS_RSA_WITH_AES_128_GCM_SHA256، TLS_RSA_WITH_AES_256_CBC_SHA256، TLS_RSA_WITH_AES_128_CBC_SHA256 TLS_RSA_WITH_AES_256_CBC_SHA TLS_RSA_WITH_AES_128_CBC_SHA على سبيل المثال، Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TLS_RSA_WITH_AES_128_CBC_SHA256:false. القيمة الافتراضية هي true لهم.
ملاحظة: لا يمكن تعطيل الشفرات التالية نظرا لأنها مطلوبة من قبل مكونات النظام الأساسي الداخلي: TLS_AES_256_GCM_SHA384،TLS_AES_128_GCM_SHA256،TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384،TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256،TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384،TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256، TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384، TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256، TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384، TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256
ApiManagementServiceBasePropertiesCustomProperties
developerPortalStatus حالة مدخل المطور في خدمة APIM هذه. "معطل"
"ممكن"
تعطيلGateway الخاصية صالحة فقط لخدمة APIM المنشورة في مواقع متعددة. يمكن استخدام هذا لتعطيل البوابة في المنطقة الرئيسية. قيمة منطقية
enableClientCertificate الخاصية المقصود بها فقط أن تستخدم لخدمة SKU الاستهلاك. يفرض هذا شهادة عميل ليتم تقديمها على كل طلب إلى البوابة. وهذا يتيح أيضا القدرة على مصادقة الشهادة في النهج على البوابة. قيمة منطقية
تكوينات اسم المضيف تكوين اسم المضيف المخصص لخدمة APIM. تكوين اسم المضيف[]
legacyPortalStatus حالة المدخل القديم في خدمة APIM. "معطل"
"ممكن"
natGatewayState يمكن استخدام الخاصية لتمكين بوابة NAT لخدمة APIM هذه. "معطل"
"ممكن"
notificationSenderEmail عنوان البريد الإلكتروني الذي سيتم إرسال الإعلام منه. خيط

القيود:
الحد الأقصى للطول = 100
اتصالات نقطة النهاية الخاصة قائمة اتصالات نقطة النهاية الخاصة لهذه الخدمة. RemotePrivateEndpointConnectionWrapper[]
publicIpAddressId عنوان IP المستند إلى SKU IP V4 القياسي العام ليتم إقرانه بخدمة الشبكة الظاهرية المنشورة في المنطقة. مدعوم فقط للمطور وPremium SKU الذي يتم نشره في الشبكة الظاهرية. خيط
publicNetworkAccess ما إذا كان يسمح بالوصول إلى نقطة النهاية العامة لخدمة APIM هذه أم لا. القيمة اختيارية ولكن إذا تم تمريرها، يجب أن تكون "ممكن" أو "معطل". إذا كانت "معطل"، فإن نقاط النهاية الخاصة هي أسلوب الوصول الحصري. القيمة الافتراضية هي "ممكن" "معطل"
"ممكن"
publisherEmail البريد الإلكتروني للناشر. سلسلة (مطلوب)

القيود:
الحد الأقصى للطول = 100
اسم الناشر اسم الناشر. سلسلة (مطلوب)

القيود:
الحد الأقصى للطول = 100
يستعيد إلغاء حذف خدمة إدارة واجهة برمجة التطبيقات إذا تم حذفها مبدئيا مسبقا. إذا تم تحديد هذه العلامة وتعيينها إلى True سيتم تجاهل كافة الخصائص الأخرى. قيمة منطقية
تكوين الشبكة الظاهرية تكوين الشبكة الظاهرية لخدمة APIM. تكوين الشبكة الظاهرية
نوع الشبكة الظاهرية نوع VPN الذي يجب تكوين خدمة APIM فيه. لا شيء (القيمة الافتراضية) يعني أن خدمة إدارة واجهة برمجة التطبيقات ليست جزءا من أي شبكة ظاهرية، ويعني خارجي أنه تم إعداد نشر إدارة واجهة برمجة التطبيقات داخل شبكة ظاهرية تحتوي على نقطة نهاية مواجهة للإنترنت، ويعني داخلي أنه يتم إعداد نشر إدارة واجهة برمجة التطبيقات داخل شبكة ظاهرية تحتوي على نقطة نهاية مواجهة إنترانت فقط. "خارجي"
"داخلي"
"بلا"

تخصيص إضافي

اسم وصف قيمة
تعطيلGateway الخاصية صالحة فقط لخدمة APIM المنشورة في مواقع متعددة. يمكن استخدام هذا لتعطيل البوابة في هذا الموقع الإضافي. قيمة منطقية
مكان اسم موقع المنطقة الإضافية بين مناطق مركز بيانات Azure. سلسلة (مطلوب)
natGatewayState يمكن استخدام الخاصية لتمكين بوابة NAT لخدمة APIM هذه. "معطل"
"ممكن"
publicIpAddressId عنوان IP المستند إلى SKU IP V4 القياسي العام ليتم إقرانه بخدمة الشبكة الظاهرية المنشورة في الموقع. مدعوم فقط ل Premium SKU الذي يتم نشره في الشبكة الظاهرية. خيط
سكو خصائص SKU لخدمة APIM. ApiManagementServiceSkuProperties (مطلوب)
تكوين الشبكة الظاهرية تكوين الشبكة الظاهرية للموقع. تكوين الشبكة الظاهرية
مناطق قائمة بمناطق التوفر التي تدل على المكان الذي يجب أن يأتي منه المورد. سلسلة[]

ApiManagementServiceSkuProperties

اسم وصف قيمة
سعة سعة SKU (عدد الوحدات المنشورة من SKU). بالنسبة إلى سعة وحدة SKU للاستهلاك يجب تحديدها ك 0. int (مطلوب)
اسم اسم Sku. "قياسي"
"WorkspaceGatewayPremium"
"WorkspaceGatewayStandard" (مطلوب)

تكوين الشبكة الظاهرية

اسم وصف قيمة
subnetResourceId معرف المورد الكامل لشبكة فرعية في شبكة ظاهرية لنشر خدمة APIM فيها. خيط

القيود:
النمط = ^/subscriptions/[^/]*/resourceGroups/[^/]*/providers/Microsoft.(ClassicNetwork|Network)/virtualNetworks/[^/]*/subnets/[^/]*$

ApiVersionConstraint

اسم وصف قيمة
minApiVersion تقييد استدعاءات واجهة برمجة التطبيقات لمستوى التحكم إلى خدمة APIM مع إصدار يساوي هذه القيمة أو أحدث منها. خيط

تكوين الشهادة

اسم وصف قيمة
شهادة معلومات الشهادة. معلومات الشهادة
certificatePassword كلمة مرور الشهادة. خيط
ترميزCertificate شهادة ترميز Base64. خيط
اسم المتجر موقع مخزن شهادات System.Security.Cryptography.x509certificates.StoreName. الجذر و CertificateAuthority هما فقط موقعان صالحان. "شهادة المصادقة"
"الجذر" (مطلوب)

معلومات الشهادة

اسم وصف قيمة
انتهاء تاريخ انتهاء صلاحية الشهادة. يتوافق التاريخ مع التنسيق التالي: yyyy-MM-ddTHH:mm:ssZ كما هو محدد بواسطة معيار ISO 8601. سلسلة (مطلوب)
موضوع موضوع الشهادة. سلسلة (مطلوب)
بصمه الابهام بصمة الإبهام للشهادة. سلسلة (مطلوب)

ConfigurationApi

اسم وصف قيمة
legacyApi الإشارة إلى ما إذا كان يجب عرض واجهة برمجة تطبيقات التكوين القديمة (v1) على خدمة APIM أم لا. القيمة اختيارية ولكن يجب أن تكون "ممكنة" أو "معطل". إذا "معطل"، فلن تتوفر واجهة برمجة تطبيقات التكوين القديمة (v1) للبوابات المستضافة ذاتيا. القيمة الافتراضية هي "ممكن" "معطل"
"ممكن"

ApiManagementServiceBasePropertiesCustomProperties

اسم وصف قيمة
{خاصية مخصصة} خيط

تكوين اسم المضيف

اسم وصف قيمة
شهادة معلومات الشهادة. معلومات الشهادة
certificatePassword كلمة مرور الشهادة. خيط
مصدر الشهادة مصدر الشهادة. "BuiltIn"
"مخصص"
"KeyVault"
"مدار"
حالة الشهادات حالة الشهادة. "مكتمل"
"فشل"
"InProgress"
defaultSslBinding حدد true لإعداد الشهادة المقترنة باسم المضيف هذا كشهادة SSL الافتراضية. إذا لم يرسل العميل عنوان SNI، فستكون هذه الشهادة التي سيتم الطعن فيها. الخاصية مفيدة إذا تم تمكين اسم مضيف مخصص متعدد للخدمة وتحتاج إلى اتخاذ قرار بشأن شهادة ssl الافتراضية. يتم تطبيق الإعداد فقط على نوع اسم المضيف للبوابة. قيمة منطقية
ترميزCertificate شهادة ترميز Base64. خيط
اسم المضيف اسم المضيف للتكوين على خدمة APIM. سلسلة (مطلوب)
معرف الهوية معرف عميل الهوية المدارة المعين من قبل النظام أو المستخدم كما تم إنشاؤه بواسطة Azure AD، والذي لديه حق الوصول GET إلى keyVault الذي يحتوي على شهادة SSL. خيط
keyVaultId Url إلى KeyVault Secret الذي يحتوي على شهادة Ssl. إذا تم توفير Url مطلق يحتوي على إصدار، فلن يعمل التحديث التلقائي لشهادة ssl. يتطلب هذا تكوين خدمة APIM مع aka.ms/apimmsi. يجب أن يكون السر من النوع application/x-pkcs12 خيط
negotiateClientCertificate حدد true للتفاوض دائما على شهادة العميل على اسم المضيف. القيمة الافتراضية خطأ. قيمة منطقية
نوع نوع اسم المضيف. "ConfigurationApi"
"DeveloperPortal"
"الإدارة"
"المدخل"
"الوكيل"
"Scm" (مطلوب)

RemotePrivateEndpointConnectionWrapper

اسم وصف قيمة
معرف معرف مورد اتصال نقطة النهاية الخاصة خيط
اسم اسم اتصال نقطة النهاية الخاصة خيط
خصائص خصائص المورد. PrivateEndpointConnectionWrapperProperties
نوع نوع مورد اتصال نقطة النهاية الخاصة خيط

PrivateEndpointConnectionWrapperProperties

اسم وصف قيمة
نقطة نهاية خاصة مورد نقطة النهاية الخاصة. ArmIdWrapper
privateLinkServiceConnectionState مجموعة من المعلومات حول حالة الاتصال بين مستهلك الخدمة والموفر. PrivateLinkServiceConnectionState (مطلوب)

ArmIdWrapper

لا يحتوي هذا الكائن على أي خصائص لتعيينها أثناء النشر. جميع الخصائص هي ReadOnly.

PrivateLinkServiceConnectionState

اسم وصف قيمة
الإجراءات المطلوبة رسالة تشير إلى ما إذا كانت التغييرات على موفر الخدمة تتطلب أي تحديثات على المستهلك. خيط
وصف سبب الموافقة على الاتصال أو رفضه. خيط
حالة يشير إلى ما إذا كان الاتصال قد تمت الموافقة عليه/رفضه/إزالته من قبل مالك الخدمة. "تمت الموافقة"
"معلق"
"مرفوض"