次の方法で共有


Microsoft.ApiManagement サービス 2021-01-01-preview

Bicep リソース定義

サービス リソースの種類は、次を対象とする操作でデプロイできます。

  • リソース グループの - リソース グループのデプロイ コマンド 参照

各 API バージョンで変更されたプロパティの一覧については、変更ログの参照してください。

リソースの形式

Microsoft.ApiManagement/service リソースを作成するには、次の Bicep をテンプレートに追加します。

resource symbolicname 'Microsoft.ApiManagement/service@2021-01-01-preview' = {
  identity: {
    type: 'string'
    userAssignedIdentities: {
      {customized property}: {
        clientId: 'string'
        principalId: 'string'
      }
    }
  }
  location: 'string'
  name: 'string'
  properties: {
    additionalLocations: [
      {
        disableGateway: bool
        location: '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'
      }
    ]
    customProperties: {
      {customized property}: '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'
      }
    ]
    notificationSenderEmail: 'string'
    publicIpAddressId: 'string'
    publisherEmail: 'string'
    publisherName: 'string'
    restore: bool
    virtualNetworkConfiguration: {
      subnetResourceId: 'string'
    }
    virtualNetworkType: 'string'
  }
  sku: {
    capacity: int
    name: 'string'
  }
  tags: {
    {customized property}: 'string'
  }
  zones: [
    'string'
  ]
}

プロパティ値

AdditionalLocation

名前 形容 価値
disableGateway プロパティは、複数の場所にデプロイされた Api Management サービスに対してのみ有効です。 これを使用して、この追加の場所でゲートウェイを無効にすることができます。 bool
場所 Azure データ センター リージョン間の追加リージョンの場所名。 string (必須)
publicIpAddressId 場所にデプロイされた Virtual Network サービスに関連付けられるパブリック Standard SKU IP V4 ベースの IP アドレス。 Virtual Network にデプロイされている Premium SKU でのみサポートされます。
sku API Management サービスの SKU プロパティ。 ApiManagementServiceSkuProperties (必須)
virtualNetworkConfiguration 場所の仮想ネットワーク構成。 VirtualNetworkConfiguration
ゾーン リソースの取得場所を表す可用性ゾーンの一覧。 string[]

ApiManagementServiceBasePropertiesCustomProperties

名前 形容 価値

ApiManagementServiceIdentity

名前 形容 価値
種類 リソースに使用される ID の種類。 型 'SystemAssigned, UserAssigned' には、暗黙的に作成された ID とユーザー割り当て ID のセットの両方が含まれます。 型 'None' は、サービスからすべての ID を削除します。 'None'
'SystemAssigned'
'SystemAssigned,UserAssigned'
'UserAssigned' (必須)
userAssignedIdentities リソースに関連付けられているユーザー ID の一覧。 ユーザー ID
ディクショナリ キー参照は、次の形式の ARM リソース ID になります。
'/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/
providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'。
ApiManagementServiceIdentityUserAssignedIdentities

ApiManagementServiceIdentityUserAssignedIdentities

名前 形容 価値

ApiManagementServiceProperties

名前 形容 価値
additionalLocations API Management サービスの追加のデータセンターの場所。 AdditionalLocationの []
apiVersionConstraint API Management サービスのコントロール プレーン API のバージョン制約。 ApiVersionConstraint
証明 書 API Management サービスにインストールする必要がある証明書の一覧。 インストールできるサポートされる証明書の最大数は 10 です。 CertificateConfiguration[]
customProperties API Management サービスのカスタム プロパティ。
Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TripleDes168 設定すると、すべての TLS(1.0、1.1、1.2) の暗号TLS_RSA_WITH_3DES_EDE_CBC_SHAが無効になります。
Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11 設定を使用して、TLS 1.1 のみを無効にすることができます。
Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10 設定を使用して、API Management サービスで TLS 1.0 を無効にすることができます。
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 設定を使用して、API Management サービスで HTTP2 プロトコルを有効にすることができます。
PATCH 操作でこれらのプロパティを指定しないと、省略されたプロパティの値が既定値にリセットされます。 Http2 を除くすべての設定で、サービスが 2018 年 4 月 1 日以前に作成された場合は既定値が True され、それ以外の場合 False。 Http2 設定の既定値は Falseです。

TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA、TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA、Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.[cipher_name]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 されます。 注: 次の暗号は、Azure CloudService 内部コンポーネント (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,TLS_RSA_WITH_AES_256_GCM_SHA384
ApiManagementServiceBasePropertiesCustomProperties
disableGateway プロパティは、複数の場所にデプロイされた Api Management サービスに対してのみ有効です。 これを使用して、マスター リージョンのゲートウェイを無効にすることができます。 bool
enableClientCertificate プロパティは、従量課金 SKU サービスにのみ使用されます。 これにより、ゲートウェイへの各要求にクライアント証明書が提示されます。 これにより、ゲートウェイのポリシーで証明書を認証することもできます。 bool
hostnameConfigurations API Management サービスのカスタム ホスト名構成。 HostnameConfiguration[]
notificationSenderEmail 通知の送信先となる電子メール アドレス。

制約:
最大長 =
publicIpAddressId リージョンにデプロイされた Virtual Network サービスに関連付けられるパブリック Standard SKU IP V4 ベースの IP アドレス。 Virtual Network にデプロイされている Developer SKU と Premium SKU でのみサポートされます。
publisherEmail 発行元の電子メール。

制約:
最大長 = (必須)
publisherName 発行元名。

制約:
最大長 = (必須)
戻す 以前に論理的に削除された場合は、Api Management サービスの削除を取り消します。 このフラグを指定し、True に設定すると、他のすべてのプロパティは無視されます。 bool
virtualNetworkConfiguration API Management サービスの仮想ネットワーク構成。 VirtualNetworkConfiguration
virtualNetworkType API Management サービスを構成する必要がある VPN の種類。 None (既定値) は、API Management サービスが仮想ネットワークに含まれていないことを意味し、外部は、インターネットに接続するエンドポイントを持つ仮想ネットワーク内に API Management デプロイが設定されていることを意味し、内部はイントラネットに接続するエンドポイントのみを持つ仮想ネットワーク内で API Management のデプロイが設定されることを意味します。 'External'
'Internal'
'None'

ApiManagementServiceSkuProperties

名前 形容 価値
能力 SKU の容量 (SKU のデプロイされたユニットの数)。 従量課金 SKU の容量は 0 として指定する必要があります。 int (必須)
名前 SKU の名前。 'Basic'
'Consumption'
'Developer'
'Isolated'
'Premium'
'Standard' (必須)

ApimResourceTags

名前 形容 価値

ApiVersionConstraint

名前 形容 価値
minApiVersion この値以上のバージョンを使用して、API Management サービスへのコントロール プレーン API 呼び出しを制限します。

CertificateConfiguration

名前 形容 価値
証書 証明書情報。 CertificateInformation の
certificatePassword 証明書パスワード。
encodedCertificate Base64 でエンコードされた証明書。
storeName System.Security.Cryptography.x509certificates.StoreName 証明書ストアの場所。 有効な場所は Root と CertificateAuthority だけです。 'CertificateAuthority'
'Root' (必須)

CertificateInformation

名前 形容 価値
有効 期限 証明書の有効期限。 日付は、ISO 8601 標準で指定された yyyy-MM-ddTHH:mm:ssZ 形式に準拠しています。 string (必須)
件名 証明書のサブジェクト。 string (必須)
拇印 証明書の拇印。 string (必須)

HostnameConfiguration

名前 形容 価値
証書 証明書情報。 CertificateInformation の
certificatePassword 証明書パスワード。
certificateSource 証明書ソース。 'BuiltIn'
'Custom'
'KeyVault'
'Managed'
certificateStatus 証明書の状態。 'Completed'
'Failed'
'InProgress'
defaultSslBinding このホスト名に関連付けられている証明書を既定の SSL 証明書として設定するには、true を指定します。 クライアントが SNI ヘッダーを送信しない場合、これはチャレンジされる証明書になります。 このプロパティは、サービスで複数のカスタム ホスト名が有効になっていて、既定の ssl 証明書を決定する必要がある場合に便利です。 この設定は、プロキシ ホスト名の種類にのみ適用されます。 bool
encodedCertificate Base64 でエンコードされた証明書。
hostName Api Management サービスで構成するホスト名。 string (必須)
identityClientId Azure AD によって生成されたシステムまたはユーザー割り当てマネージド ID clientId。SSL 証明書を含む keyVault への GET アクセス権を持ちます。
keyVaultId Ssl 証明書を含む KeyVault シークレットの URL。 バージョンを含む絶対 URL が指定されている場合、ssl 証明書の自動更新は機能しません。 そのためには、api Management サービスを aka.ms/apimmsi で構成する必要があります。 シークレットの種類は application/x-pkcs12 する必要があります
negotiateClientCertificate ホスト名のクライアント証明書を常にネゴシエートするには、true を指定します。 既定値は false です。 bool
種類 ホスト名の種類。 'DeveloperPortal'
'Management'
'Portal'
'Proxy'
'Scm' (必須)

Microsoft.ApiManagement/service

名前 形容 価値
同一性 Api Management サービスのマネージド サービス ID。 ApiManagementServiceIdentity
場所 リソースの場所。 string (必須)
名前 リソース名

制約:
最小長 = 1
最大長 = 1
パターン = ^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$ (必須)
プロパティ API Management サービスのプロパティ。 ApiManagementServiceProperties (必須)
sku API Management サービスの SKU プロパティ。 ApiManagementServiceSkuProperties (必須)
タグ リソース タグ タグ名と値のディクショナリ。 テンプレート の タグを参照してください
ゾーン リソースの取得場所を表す可用性ゾーンの一覧。 string[]

UserIdentityProperties

名前 形容 価値
clientId ユーザー割り当て ID のクライアント ID。
principalId ユーザー割り当て ID のプリンシパル ID。

VirtualNetworkConfiguration

名前 形容 価値
subnetResourceId API Management サービスをデプロイする仮想ネットワーク内のサブネットの完全なリソース ID。

制約:
パターン = ^/subscriptions/[^/]*/resourceGroups/[^/]*/providers/Microsoft.(ClassicNetwork|Network)/virtualNetworks/[^/]*/subnets/[^/]*$

クイック スタートのサンプル

次のクイック スタート サンプルでは、このリソースの種類をデプロイします。

Bicep ファイル 形容
内部 API Management と Web App を使用した Application Gateway の Azure Web アプリでホストされている Web API にサービスを提供する仮想ネットワーク (内部モード) API Management インスタンスにインターネット トラフィックをルーティングする Application Gateway。
マルチリージョン Premium レベルの API Management インスタンス を作成する このテンプレートでは、追加の場所を使用して API Management インスタンスを作成する方法を示します。 プライマリの場所は、リソース グループの場所と同じです。 その他の場所については、テンプレートに NorthCentralUs と米国東部 2 が表示されます。 プライマリの場所は、追加の場所とは異なる必要があります。
MSI ID を持つ API Management インスタンスを作成する このテンプレートは、MSI ID を持つ Azure API Management の開発者インスタンスを作成します
テンプレート を使用して API Management インスタンスを作成する このテンプレートは、Azure API Management の開発者インスタンスを作成します
プライベート エンドポイントを使用して API Management サービスを作成 このテンプレートは、API Management サービス、仮想ネットワーク、および API Management サービスを仮想ネットワークに公開するプライベート エンドポイントを作成します。
KeyVault から SSL を使用して API Management サービスを作成する このテンプレートは、ユーザー割り当て ID で構成された API Management サービスをデプロイします。 この ID を使用して KeyVault から SSL 証明書をフェッチし、4 時間ごとにチェックすることで更新を維持します。
App Gateway を使用して内部 VNet に API Management を作成する このテンプレートでは、Azure Application Gateway によって保護されたプライベート ネットワーク上に Azure API Management のインスタンスを作成する方法を示します。
パブリック IP を使用して外部 VNet に API Management をデプロイする このテンプレートでは、外部モードで仮想ネットワークのサブネット内の Premium レベルで Azure API Management のインスタンスを作成し、そのサブネットで推奨される NSG 規則を構成する方法を示します。 インスタンスは 2 つの可用性ゾーンにデプロイされます。 このテンプレートでは、サブスクリプションのパブリック IP アドレスも構成されます。
パブリック IP を使用して内部 VNet に API Management をデプロイする このテンプレートでは、内部モードで仮想ネットワークのサブネット内の Premium レベルで Azure API Management のインスタンスを作成し、そのサブネットで推奨される NSG 規則を構成する方法を示します。 インスタンスは 2 つの可用性ゾーンにデプロイされます。 このテンプレートでは、サブスクリプションのパブリック IP アドレスも構成されます。
Api Management を Availability Zones にデプロイする このテンプレートは、Azure API Management の Premium インスタンスを作成し、可用性ゾーンにデプロイします
外部の Azure Cache for Redis を使用して API Management をデプロイする このテンプレートでは、外部 Azure Cache for Redis インスタンスを API Management 外部キャッシュとして使用層に Azure API Management のインスタンスを作成する方法を示します。
API Management の配信元 を使用した Front Door Standard/Premium の このテンプレートは、Front Door Premium と API Management インスタンスを作成し、NSG とグローバル API Management ポリシーを使用して、トラフィックが Front Door の配信元を通過したことを検証します。

ARM テンプレート リソース定義

サービス リソースの種類は、次を対象とする操作でデプロイできます。

  • リソース グループの - リソース グループのデプロイ コマンド 参照

各 API バージョンで変更されたプロパティの一覧については、変更ログの参照してください。

リソースの形式

Microsoft.ApiManagement/service リソースを作成するには、次の JSON をテンプレートに追加します。

{
  "type": "Microsoft.ApiManagement/service",
  "apiVersion": "2021-01-01-preview",
  "name": "string",
  "identity": {
    "type": "string",
    "userAssignedIdentities": {
      "{customized property}": {
        "clientId": "string",
        "principalId": "string"
      }
    }
  },
  "location": "string",
  "properties": {
    "additionalLocations": [
      {
        "disableGateway": "bool",
        "location": "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"
      }
    ],
    "customProperties": {
      "{customized property}": "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"
      }
    ],
    "notificationSenderEmail": "string",
    "publicIpAddressId": "string",
    "publisherEmail": "string",
    "publisherName": "string",
    "restore": "bool",
    "virtualNetworkConfiguration": {
      "subnetResourceId": "string"
    },
    "virtualNetworkType": "string"
  },
  "sku": {
    "capacity": "int",
    "name": "string"
  },
  "tags": {
    "{customized property}": "string"
  },
  "zones": [ "string" ]
}

プロパティ値

AdditionalLocation

名前 形容 価値
disableGateway プロパティは、複数の場所にデプロイされた Api Management サービスに対してのみ有効です。 これを使用して、この追加の場所でゲートウェイを無効にすることができます。 bool
場所 Azure データ センター リージョン間の追加リージョンの場所名。 string (必須)
publicIpAddressId 場所にデプロイされた Virtual Network サービスに関連付けられるパブリック Standard SKU IP V4 ベースの IP アドレス。 Virtual Network にデプロイされている Premium SKU でのみサポートされます。
sku API Management サービスの SKU プロパティ。 ApiManagementServiceSkuProperties (必須)
virtualNetworkConfiguration 場所の仮想ネットワーク構成。 VirtualNetworkConfiguration
ゾーン リソースの取得場所を表す可用性ゾーンの一覧。 string[]

ApiManagementServiceBasePropertiesCustomProperties

名前 形容 価値

ApiManagementServiceIdentity

名前 形容 価値
種類 リソースに使用される ID の種類。 型 'SystemAssigned, UserAssigned' には、暗黙的に作成された ID とユーザー割り当て ID のセットの両方が含まれます。 型 'None' は、サービスからすべての ID を削除します。 'None'
'SystemAssigned'
'SystemAssigned,UserAssigned'
'UserAssigned' (必須)
userAssignedIdentities リソースに関連付けられているユーザー ID の一覧。 ユーザー ID
ディクショナリ キー参照は、次の形式の ARM リソース ID になります。
'/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/
providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'。
ApiManagementServiceIdentityUserAssignedIdentities

ApiManagementServiceIdentityUserAssignedIdentities

名前 形容 価値

ApiManagementServiceProperties

名前 形容 価値
additionalLocations API Management サービスの追加のデータセンターの場所。 AdditionalLocationの []
apiVersionConstraint API Management サービスのコントロール プレーン API のバージョン制約。 ApiVersionConstraint
証明 書 API Management サービスにインストールする必要がある証明書の一覧。 インストールできるサポートされる証明書の最大数は 10 です。 CertificateConfiguration[]
customProperties API Management サービスのカスタム プロパティ。
Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TripleDes168 設定すると、すべての TLS(1.0、1.1、1.2) の暗号TLS_RSA_WITH_3DES_EDE_CBC_SHAが無効になります。
Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11 設定を使用して、TLS 1.1 のみを無効にすることができます。
Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10 設定を使用して、API Management サービスで TLS 1.0 を無効にすることができます。
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 設定を使用して、API Management サービスで HTTP2 プロトコルを有効にすることができます。
PATCH 操作でこれらのプロパティを指定しないと、省略されたプロパティの値が既定値にリセットされます。 Http2 を除くすべての設定で、サービスが 2018 年 4 月 1 日以前に作成された場合は既定値が True され、それ以外の場合 False。 Http2 設定の既定値は Falseです。

TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA、TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA、Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.[cipher_name]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 されます。 注: 次の暗号は、Azure CloudService 内部コンポーネント (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,TLS_RSA_WITH_AES_256_GCM_SHA384
ApiManagementServiceBasePropertiesCustomProperties
disableGateway プロパティは、複数の場所にデプロイされた Api Management サービスに対してのみ有効です。 これを使用して、マスター リージョンのゲートウェイを無効にすることができます。 bool
enableClientCertificate プロパティは、従量課金 SKU サービスにのみ使用されます。 これにより、ゲートウェイへの各要求にクライアント証明書が提示されます。 これにより、ゲートウェイのポリシーで証明書を認証することもできます。 bool
hostnameConfigurations API Management サービスのカスタム ホスト名構成。 HostnameConfiguration[]
notificationSenderEmail 通知の送信先となる電子メール アドレス。

制約:
最大長 =
publicIpAddressId リージョンにデプロイされた Virtual Network サービスに関連付けられるパブリック Standard SKU IP V4 ベースの IP アドレス。 Virtual Network にデプロイされている Developer SKU と Premium SKU でのみサポートされます。
publisherEmail 発行元の電子メール。

制約:
最大長 = (必須)
publisherName 発行元名。

制約:
最大長 = (必須)
戻す 以前に論理的に削除された場合は、Api Management サービスの削除を取り消します。 このフラグを指定し、True に設定すると、他のすべてのプロパティは無視されます。 bool
virtualNetworkConfiguration API Management サービスの仮想ネットワーク構成。 VirtualNetworkConfiguration
virtualNetworkType API Management サービスを構成する必要がある VPN の種類。 None (既定値) は、API Management サービスが仮想ネットワークに含まれていないことを意味し、外部は、インターネットに接続するエンドポイントを持つ仮想ネットワーク内に API Management デプロイが設定されていることを意味し、内部はイントラネットに接続するエンドポイントのみを持つ仮想ネットワーク内で API Management のデプロイが設定されることを意味します。 'External'
'Internal'
'None'

ApiManagementServiceSkuProperties

名前 形容 価値
能力 SKU の容量 (SKU のデプロイされたユニットの数)。 従量課金 SKU の容量は 0 として指定する必要があります。 int (必須)
名前 SKU の名前。 'Basic'
'Consumption'
'Developer'
'Isolated'
'Premium'
'Standard' (必須)

ApimResourceTags

名前 形容 価値

ApiVersionConstraint

名前 形容 価値
minApiVersion この値以上のバージョンを使用して、API Management サービスへのコントロール プレーン API 呼び出しを制限します。

CertificateConfiguration

名前 形容 価値
証書 証明書情報。 CertificateInformation の
certificatePassword 証明書パスワード。
encodedCertificate Base64 でエンコードされた証明書。
storeName System.Security.Cryptography.x509certificates.StoreName 証明書ストアの場所。 有効な場所は Root と CertificateAuthority だけです。 'CertificateAuthority'
'Root' (必須)

CertificateInformation

名前 形容 価値
有効 期限 証明書の有効期限。 日付は、ISO 8601 標準で指定された yyyy-MM-ddTHH:mm:ssZ 形式に準拠しています。 string (必須)
件名 証明書のサブジェクト。 string (必須)
拇印 証明書の拇印。 string (必須)

HostnameConfiguration

名前 形容 価値
証書 証明書情報。 CertificateInformation の
certificatePassword 証明書パスワード。
certificateSource 証明書ソース。 'BuiltIn'
'Custom'
'KeyVault'
'Managed'
certificateStatus 証明書の状態。 'Completed'
'Failed'
'InProgress'
defaultSslBinding このホスト名に関連付けられている証明書を既定の SSL 証明書として設定するには、true を指定します。 クライアントが SNI ヘッダーを送信しない場合、これはチャレンジされる証明書になります。 このプロパティは、サービスで複数のカスタム ホスト名が有効になっていて、既定の ssl 証明書を決定する必要がある場合に便利です。 この設定は、プロキシ ホスト名の種類にのみ適用されます。 bool
encodedCertificate Base64 でエンコードされた証明書。
hostName Api Management サービスで構成するホスト名。 string (必須)
identityClientId Azure AD によって生成されたシステムまたはユーザー割り当てマネージド ID clientId。SSL 証明書を含む keyVault への GET アクセス権を持ちます。
keyVaultId Ssl 証明書を含む KeyVault シークレットの URL。 バージョンを含む絶対 URL が指定されている場合、ssl 証明書の自動更新は機能しません。 そのためには、api Management サービスを aka.ms/apimmsi で構成する必要があります。 シークレットの種類は application/x-pkcs12 する必要があります
negotiateClientCertificate ホスト名のクライアント証明書を常にネゴシエートするには、true を指定します。 既定値は false です。 bool
種類 ホスト名の種類。 'DeveloperPortal'
'Management'
'Portal'
'Proxy'
'Scm' (必須)

Microsoft.ApiManagement/service

名前 形容 価値
apiVersion API のバージョン '2021-01-01-preview'
同一性 Api Management サービスのマネージド サービス ID。 ApiManagementServiceIdentity
場所 リソースの場所。 string (必須)
名前 リソース名

制約:
最小長 = 1
最大長 = 1
パターン = ^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$ (必須)
プロパティ API Management サービスのプロパティ。 ApiManagementServiceProperties (必須)
sku API Management サービスの SKU プロパティ。 ApiManagementServiceSkuProperties (必須)
タグ リソース タグ タグ名と値のディクショナリ。 テンプレート の タグを参照してください
種類 リソースの種類 'Microsoft.ApiManagement/service'
ゾーン リソースの取得場所を表す可用性ゾーンの一覧。 string[]

UserIdentityProperties

名前 形容 価値
clientId ユーザー割り当て ID のクライアント ID。
principalId ユーザー割り当て ID のプリンシパル ID。

VirtualNetworkConfiguration

名前 形容 価値
subnetResourceId API Management サービスをデプロイする仮想ネットワーク内のサブネットの完全なリソース ID。

制約:
パターン = ^/subscriptions/[^/]*/resourceGroups/[^/]*/providers/Microsoft.(ClassicNetwork|Network)/virtualNetworks/[^/]*/subnets/[^/]*$

クイック スタート テンプレート

次のクイック スタート テンプレートでは、このリソースの種類をデプロイします。

テンプレート 形容
内部 API Management と Web App を使用した Application Gateway の

Azure
にデプロイする
Azure Web アプリでホストされている Web API にサービスを提供する仮想ネットワーク (内部モード) API Management インスタンスにインターネット トラフィックをルーティングする Application Gateway。
マルチリージョン Premium レベルの API Management インスタンス を作成する

Azure にデプロイする
このテンプレートでは、追加の場所を使用して API Management インスタンスを作成する方法を示します。 プライマリの場所は、リソース グループの場所と同じです。 その他の場所については、テンプレートに NorthCentralUs と米国東部 2 が表示されます。 プライマリの場所は、追加の場所とは異なる必要があります。
テンプレート を使用して API Management インスタンスとすべてのサブリソースを作成する

Azure にデプロイする
このテンプレートでは、API Management サービスを作成し、サブエンティティを構成する方法を示します
MSI ID を持つ API Management インスタンスを作成する

Azure にデプロイする
このテンプレートは、MSI ID を持つ Azure API Management の開発者インスタンスを作成します
テンプレート を使用して API Management インスタンスを作成する

Azure にデプロイする
このテンプレートは、Azure API Management の開発者インスタンスを作成します
カスタム ホスト名を使用して API Management インスタンスを作成

Azure にデプロイする
このテンプレートでは、ポータル用のカスタム ホスト名とプロキシ用の複数のカスタム ホスト名を使用して Azure API Management のインスタンスを作成する方法を示します
プライベート エンドポイントを使用して API Management サービスを作成

Azure にデプロイする
このテンプレートは、API Management サービス、仮想ネットワーク、および API Management サービスを仮想ネットワークに公開するプライベート エンドポイントを作成します。
KeyVault から SSL を使用して API Management サービスを作成する

Azure にデプロイする
このテンプレートは、ユーザー割り当て ID で構成された API Management サービスをデプロイします。 この ID を使用して KeyVault から SSL 証明書をフェッチし、4 時間ごとにチェックすることで更新を維持します。
API Management インスタンス の作成と監視

Azure にデプロイする
このテンプレートは、Azure API Management サービスと Log Analytics ワークスペースのインスタンスを作成し、Log Analytics を使用して API Management サービスの監視を設定します
App Gateway を使用して内部 VNet に API Management を作成する

Azure にデプロイする
このテンプレートでは、Azure Application Gateway によって保護されたプライベート ネットワーク上に Azure API Management のインスタンスを作成する方法を示します。
KeyVault を使用してカスタム プロキシ ssl を使用して API Management を作成する

Azure にデプロイする
このテンプレートでは、Azure API Management のインスタンスを作成し、keyvault の ssl 証明書を使用してプロキシのカスタム ホスト名を構成する方法を示します。
Azure API Management の前に Azure Front Door を作成する

Azure
にデプロイする
このサンプルでは、Azure API Management の前でグローバル ロード バランサーとして Azure Front Door を使用する方法を示します。
パブリック IP を使用して外部 VNet に API Management をデプロイする

Azure にデプロイする
このテンプレートでは、外部モードで仮想ネットワークのサブネット内の Premium レベルで Azure API Management のインスタンスを作成し、そのサブネットで推奨される NSG 規則を構成する方法を示します。 インスタンスは 2 つの可用性ゾーンにデプロイされます。 このテンプレートでは、サブスクリプションのパブリック IP アドレスも構成されます。
パブリック IP を使用して内部 VNet に API Management をデプロイする

Azure にデプロイする
このテンプレートでは、内部モードで仮想ネットワークのサブネット内の Premium レベルで Azure API Management のインスタンスを作成し、そのサブネットで推奨される NSG 規則を構成する方法を示します。 インスタンスは 2 つの可用性ゾーンにデプロイされます。 このテンプレートでは、サブスクリプションのパブリック IP アドレスも構成されます。
Api Management を Availability Zones にデプロイする

Azure にデプロイする
このテンプレートは、Azure API Management の Premium インスタンスを作成し、可用性ゾーンにデプロイします
外部の Azure Cache for Redis を使用して API Management をデプロイする

Azure
にデプロイする
このテンプレートでは、外部 Azure Cache for Redis インスタンスを API Management 外部キャッシュとして使用層に Azure API Management のインスタンスを作成する方法を示します。
API Management の配信元 を使用した Front Door Standard/Premium の

Azure
にデプロイする
このテンプレートは、Front Door Premium と API Management インスタンスを作成し、NSG とグローバル API Management ポリシーを使用して、トラフィックが Front Door の配信元を通過したことを検証します。

Terraform (AzAPI プロバイダー) リソース定義

サービス リソースの種類は、次を対象とする操作でデプロイできます。

  • リソース グループの

各 API バージョンで変更されたプロパティの一覧については、変更ログの参照してください。

リソースの形式

Microsoft.ApiManagement/service リソースを作成するには、次の Terraform をテンプレートに追加します。

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.ApiManagement/service@2021-01-01-preview"
  name = "string"
  identity = {
    type = "string"
    userAssignedIdentities = {
      {customized property} = {
        clientId = "string"
        principalId = "string"
      }
    }
  }
  location = "string"
  sku = {
    capacity = int
    name = "string"
  }
  tags = {
    {customized property} = "string"
  }
  zones = [
    "string"
  ]
  body = jsonencode({
    properties = {
      additionalLocations = [
        {
          disableGateway = bool
          location = "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"
        }
      ]
      customProperties = {
        {customized property} = "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"
        }
      ]
      notificationSenderEmail = "string"
      publicIpAddressId = "string"
      publisherEmail = "string"
      publisherName = "string"
      restore = bool
      virtualNetworkConfiguration = {
        subnetResourceId = "string"
      }
      virtualNetworkType = "string"
    }
  })
}

プロパティ値

AdditionalLocation

名前 形容 価値
disableGateway プロパティは、複数の場所にデプロイされた Api Management サービスに対してのみ有効です。 これを使用して、この追加の場所でゲートウェイを無効にすることができます。 bool
場所 Azure データ センター リージョン間の追加リージョンの場所名。 string (必須)
publicIpAddressId 場所にデプロイされた Virtual Network サービスに関連付けられるパブリック Standard SKU IP V4 ベースの IP アドレス。 Virtual Network にデプロイされている Premium SKU でのみサポートされます。
sku API Management サービスの SKU プロパティ。 ApiManagementServiceSkuProperties (必須)
virtualNetworkConfiguration 場所の仮想ネットワーク構成。 VirtualNetworkConfiguration
ゾーン リソースの取得場所を表す可用性ゾーンの一覧。 string[]

ApiManagementServiceBasePropertiesCustomProperties

名前 形容 価値

ApiManagementServiceIdentity

名前 形容 価値
種類 リソースに使用される ID の種類。 型 'SystemAssigned, UserAssigned' には、暗黙的に作成された ID とユーザー割り当て ID のセットの両方が含まれます。 型 'None' は、サービスからすべての ID を削除します。 'None'
'SystemAssigned'
'SystemAssigned,UserAssigned'
'UserAssigned' (必須)
userAssignedIdentities リソースに関連付けられているユーザー ID の一覧。 ユーザー ID
ディクショナリ キー参照は、次の形式の ARM リソース ID になります。
'/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/
providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'。
ApiManagementServiceIdentityUserAssignedIdentities

ApiManagementServiceIdentityUserAssignedIdentities

名前 形容 価値

ApiManagementServiceProperties

名前 形容 価値
additionalLocations API Management サービスの追加のデータセンターの場所。 AdditionalLocationの []
apiVersionConstraint API Management サービスのコントロール プレーン API のバージョン制約。 ApiVersionConstraint
証明 書 API Management サービスにインストールする必要がある証明書の一覧。 インストールできるサポートされる証明書の最大数は 10 です。 CertificateConfiguration[]
customProperties API Management サービスのカスタム プロパティ。
Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TripleDes168 設定すると、すべての TLS(1.0、1.1、1.2) の暗号TLS_RSA_WITH_3DES_EDE_CBC_SHAが無効になります。
Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11 設定を使用して、TLS 1.1 のみを無効にすることができます。
Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10 設定を使用して、API Management サービスで TLS 1.0 を無効にすることができます。
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 設定を使用して、API Management サービスで HTTP2 プロトコルを有効にすることができます。
PATCH 操作でこれらのプロパティを指定しないと、省略されたプロパティの値が既定値にリセットされます。 Http2 を除くすべての設定で、サービスが 2018 年 4 月 1 日以前に作成された場合は既定値が True され、それ以外の場合 False。 Http2 設定の既定値は Falseです。

TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA、TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA、Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.[cipher_name]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 されます。 注: 次の暗号は、Azure CloudService 内部コンポーネント (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,TLS_RSA_WITH_AES_256_GCM_SHA384
ApiManagementServiceBasePropertiesCustomProperties
disableGateway プロパティは、複数の場所にデプロイされた Api Management サービスに対してのみ有効です。 これを使用して、マスター リージョンのゲートウェイを無効にすることができます。 bool
enableClientCertificate プロパティは、従量課金 SKU サービスにのみ使用されます。 これにより、ゲートウェイへの各要求にクライアント証明書が提示されます。 これにより、ゲートウェイのポリシーで証明書を認証することもできます。 bool
hostnameConfigurations API Management サービスのカスタム ホスト名構成。 HostnameConfiguration[]
notificationSenderEmail 通知の送信先となる電子メール アドレス。

制約:
最大長 =
publicIpAddressId リージョンにデプロイされた Virtual Network サービスに関連付けられるパブリック Standard SKU IP V4 ベースの IP アドレス。 Virtual Network にデプロイされている Developer SKU と Premium SKU でのみサポートされます。
publisherEmail 発行元の電子メール。

制約:
最大長 = (必須)
publisherName 発行元名。

制約:
最大長 = (必須)
戻す 以前に論理的に削除された場合は、Api Management サービスの削除を取り消します。 このフラグを指定し、True に設定すると、他のすべてのプロパティは無視されます。 bool
virtualNetworkConfiguration API Management サービスの仮想ネットワーク構成。 VirtualNetworkConfiguration
virtualNetworkType API Management サービスを構成する必要がある VPN の種類。 None (既定値) は、API Management サービスが仮想ネットワークに含まれていないことを意味し、外部は、インターネットに接続するエンドポイントを持つ仮想ネットワーク内に API Management デプロイが設定されていることを意味し、内部はイントラネットに接続するエンドポイントのみを持つ仮想ネットワーク内で API Management のデプロイが設定されることを意味します。 'External'
'Internal'
'None'

ApiManagementServiceSkuProperties

名前 形容 価値
能力 SKU の容量 (SKU のデプロイされたユニットの数)。 従量課金 SKU の容量は 0 として指定する必要があります。 int (必須)
名前 SKU の名前。 'Basic'
'Consumption'
'Developer'
'Isolated'
'Premium'
'Standard' (必須)

ApimResourceTags

名前 形容 価値

ApiVersionConstraint

名前 形容 価値
minApiVersion この値以上のバージョンを使用して、API Management サービスへのコントロール プレーン API 呼び出しを制限します。

CertificateConfiguration

名前 形容 価値
証書 証明書情報。 CertificateInformation の
certificatePassword 証明書パスワード。
encodedCertificate Base64 でエンコードされた証明書。
storeName System.Security.Cryptography.x509certificates.StoreName 証明書ストアの場所。 有効な場所は Root と CertificateAuthority だけです。 'CertificateAuthority'
'Root' (必須)

CertificateInformation

名前 形容 価値
有効 期限 証明書の有効期限。 日付は、ISO 8601 標準で指定された yyyy-MM-ddTHH:mm:ssZ 形式に準拠しています。 string (必須)
件名 証明書のサブジェクト。 string (必須)
拇印 証明書の拇印。 string (必須)

HostnameConfiguration

名前 形容 価値
証書 証明書情報。 CertificateInformation の
certificatePassword 証明書パスワード。
certificateSource 証明書ソース。 'BuiltIn'
'Custom'
'KeyVault'
'Managed'
certificateStatus 証明書の状態。 'Completed'
'Failed'
'InProgress'
defaultSslBinding このホスト名に関連付けられている証明書を既定の SSL 証明書として設定するには、true を指定します。 クライアントが SNI ヘッダーを送信しない場合、これはチャレンジされる証明書になります。 このプロパティは、サービスで複数のカスタム ホスト名が有効になっていて、既定の ssl 証明書を決定する必要がある場合に便利です。 この設定は、プロキシ ホスト名の種類にのみ適用されます。 bool
encodedCertificate Base64 でエンコードされた証明書。
hostName Api Management サービスで構成するホスト名。 string (必須)
identityClientId Azure AD によって生成されたシステムまたはユーザー割り当てマネージド ID clientId。SSL 証明書を含む keyVault への GET アクセス権を持ちます。
keyVaultId Ssl 証明書を含む KeyVault シークレットの URL。 バージョンを含む絶対 URL が指定されている場合、ssl 証明書の自動更新は機能しません。 そのためには、api Management サービスを aka.ms/apimmsi で構成する必要があります。 シークレットの種類は application/x-pkcs12 する必要があります
negotiateClientCertificate ホスト名のクライアント証明書を常にネゴシエートするには、true を指定します。 既定値は false です。 bool
種類 ホスト名の種類。 'DeveloperPortal'
'Management'
'Portal'
'Proxy'
'Scm' (必須)

Microsoft.ApiManagement/service

名前 形容 価値
同一性 Api Management サービスのマネージド サービス ID。 ApiManagementServiceIdentity
場所 リソースの場所。 string (必須)
名前 リソース名

制約:
最小長 = 1
最大長 = 1
パターン = ^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$ (必須)
プロパティ API Management サービスのプロパティ。 ApiManagementServiceProperties (必須)
sku API Management サービスの SKU プロパティ。 ApiManagementServiceSkuProperties (必須)
タグ リソース タグ タグ名と値のディクショナリ。
種類 リソースの種類 "Microsoft.ApiManagement/service@2021-01-01-preview"
ゾーン リソースの取得場所を表す可用性ゾーンの一覧。 string[]

UserIdentityProperties

名前 形容 価値
clientId ユーザー割り当て ID のクライアント ID。
principalId ユーザー割り当て ID のプリンシパル ID。

VirtualNetworkConfiguration

名前 形容 価値
subnetResourceId API Management サービスをデプロイする仮想ネットワーク内のサブネットの完全なリソース ID。

制約:
パターン = ^/subscriptions/[^/]*/resourceGroups/[^/]*/providers/Microsoft.(ClassicNetwork|Network)/virtualNetworks/[^/]*/subnets/[^/]*$