Поделиться через


Certificate - Create Or Update

Создает или обновляет сертификат, используемый для проверки подлинности в серверном компоненте.

PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/certificates/{certificateId}?api-version=2022-08-01

Параметры URI

Имя В Обязательно Тип Описание
certificateId
path True

string

Идентификатор сущности сертификата. Должен быть уникальным в текущем экземпляре службы Управление API.

Regex pattern: ^[^*#&+:<>?]+$

resourceGroupName
path True

string

Имя группы ресурсов. Регистр букв в имени не учитывается.

serviceName
path True

string

Имя службы Управление API.

Regex pattern: ^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$

subscriptionId
path True

string

Идентификатор целевой подписки.

api-version
query True

string

Версия API, используемая для данной операции.

Заголовок запроса

Имя Обязательно Тип Описание
If-Match

string

ETag сущности. Не требуется при создании сущности, но требуется при обновлении сущности.

Текст запроса

Имя Тип Описание
properties.data

string

Сертификат в кодировке Base 64 с использованием представления application/x-pkcs12.

properties.keyVault

KeyVaultContractCreateProperties

Сведения о расположении keyVault для сертификата.

properties.password

string

Пароль для сертификата

Ответы

Имя Тип Описание
200 OK

CertificateContract

Сведения о сертификате были успешно обновлены.

Headers

ETag: string

201 Created

CertificateContract

Новый сертификат успешно добавлен.

Headers

ETag: string

Other Status Codes

ErrorResponse

Ответ об ошибке, описывающий причину сбоя операции.

Безопасность

azure_auth

Поток OAuth2 в Azure Active Directory.

Type: oauth2
Flow: implicit
Authorization URL: https://login.microsoftonline.com/common/oauth2/authorize

Scopes

Имя Описание
user_impersonation олицетворения учетной записи пользователя

Примеры

ApiManagementCreateCertificate
ApiManagementCreateCertificateWithKeyVault

ApiManagementCreateCertificate

Sample Request

PUT https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/certificates/tempcert?api-version=2022-08-01

{
  "properties": {
    "data": "****************Base 64 Encoded Certificate *******************************",
    "password": "****Certificate Password******"
  }
}

Sample Response

{
  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/certificates/tempcert",
  "type": "Microsoft.ApiManagement/service/certificates",
  "name": "tempcert",
  "properties": {
    "subject": "CN=contoso.com",
    "thumbprint": "*******************3",
    "expirationDate": "2018-03-17T21:55:07+00:00"
  }
}
{
  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/certificates/tempcert",
  "type": "Microsoft.ApiManagement/service/certificates",
  "name": "tempcert",
  "properties": {
    "subject": "CN=contoso.com",
    "thumbprint": "*******************3",
    "expirationDate": "2018-03-17T21:55:07+00:00"
  }
}

ApiManagementCreateCertificateWithKeyVault

Sample Request

PUT https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/certificates/templateCertkv?api-version=2022-08-01

{
  "properties": {
    "keyVault": {
      "identityClientId": "ceaa6b06-c00f-43ef-99ac-f53d1fe876a0",
      "secretIdentifier": "https://rpbvtkeyvaultintegration.vault-int.azure-int.net/secrets/msitestingCert"
    }
  }
}

Sample Response

{
  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/certificates/templateCertkv",
  "type": "Microsoft.ApiManagement/service/certificates",
  "name": "templateCertkv",
  "properties": {
    "subject": "CN=*.msitesting.net",
    "thumbprint": "EA**********************9AD690",
    "expirationDate": "2037-01-01T07:00:00Z",
    "keyVault": {
      "secretIdentifier": "https://rpbvtkeyvaultintegration.vault-int.azure-int.net/secrets/msitestingCert",
      "identityClientId": "ceaa6b06-c00f-43ef-99ac-f53d1fe876a0",
      "lastStatus": {
        "code": "Success",
        "timeStampUtc": "2020-09-22T00:24:53.3191468Z"
      }
    }
  }
}
{
  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/certificates/templateCertkv",
  "type": "Microsoft.ApiManagement/service/certificates",
  "name": "templateCertkv",
  "properties": {
    "subject": "CN=*.msitesting.net",
    "thumbprint": "EA**********************9AD690",
    "expirationDate": "2037-01-01T07:00:00Z",
    "keyVault": {
      "secretIdentifier": "https://rpbvtkeyvaultintegration.vault-int.azure-int.net/secrets/msitestingCert",
      "identityClientId": "ceaa6b06-c00f-43ef-99ac-f53d1fe876a0",
      "lastStatus": {
        "code": "Success",
        "timeStampUtc": "2020-09-22T00:24:53.3191468Z"
      }
    }
  }
}

Определения

Имя Описание
CertificateContract

Сведения о сертификате.

CertificateCreateOrUpdateParameters

Сведения о создании или обновлении сертификата.

ErrorFieldContract

Контракт поля ошибки.

ErrorResponse

Ответ об ошибке.

KeyVaultContractCreateProperties

Создайте сведения о контракте keyVault.

KeyVaultContractProperties

Сведения о контракте KeyVault.

KeyVaultLastAccessStatusContractProperties

Выдача свойств обновления контракта.

CertificateContract

Сведения о сертификате.

Имя Тип Описание
id

string

Полный идентификатор ресурса. Например: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}

name

string

Имя ресурса.

properties.expirationDate

string

Дата окончания срока действия сертификата. Дата соответствует следующему формату: yyyy-MM-ddTHH:mm:ssZ в соответствии со стандартом ISO 8601.

properties.keyVault

KeyVaultContractProperties

Сведения о расположении keyVault для сертификата.

properties.subject

string

Атрибут субъекта сертификата.

properties.thumbprint

string

Отпечаток сертификата.

type

string

Тип ресурса. Например, Microsoft.Compute/virtualMachines или Microsoft.Storage/storageAccounts.

CertificateCreateOrUpdateParameters

Сведения о создании или обновлении сертификата.

Имя Тип Описание
properties.data

string

Сертификат в кодировке Base 64 с использованием представления application/x-pkcs12.

properties.keyVault

KeyVaultContractCreateProperties

Сведения о расположении keyVault для сертификата.

properties.password

string

Пароль для сертификата

ErrorFieldContract

Контракт поля ошибки.

Имя Тип Описание
code

string

Код ошибки уровня свойства.

message

string

Удобочитаемое представление ошибки на уровне свойств.

target

string

Имя свойства.

ErrorResponse

Ответ об ошибке.

Имя Тип Описание
error.code

string

Код ошибки, определяемый службой. Это код служит в качестве подсостояния для кода ошибки HTTP, указанного в ответе.

error.details

ErrorFieldContract[]

Список недопустимых полей, отправляемых в запросе, в случае ошибки проверки.

error.message

string

Читаемое представление ошибки.

KeyVaultContractCreateProperties

Создайте сведения о контракте keyVault.

Имя Тип Описание
identityClientId

string

Значение NULL для SystemAssignedIdentity или идентификатор клиента для UserAssignedIdentity, который будет использоваться для доступа к секрету хранилища ключей.

secretIdentifier

string

Идентификатор секрета хранилища ключей для получения секрета. Предоставление секрета с управлением версиями помешает автоматическому обновлению. Для этого необходимо, чтобы служба Управление API была настроена с помощью aka.ms/apimmsi

KeyVaultContractProperties

Сведения о контракте KeyVault.

Имя Тип Описание
identityClientId

string

Значение NULL для SystemAssignedIdentity или идентификатор клиента для UserAssignedIdentity, который будет использоваться для доступа к секрету хранилища ключей.

lastStatus

KeyVaultLastAccessStatusContractProperties

Последнее время синхронизации и обновления секрета из хранилища ключей.

secretIdentifier

string

Идентификатор секрета хранилища ключей для получения секрета. Предоставление секрета с управлением версиями помешает автоматическому обновлению. Для этого необходимо, чтобы служба Управление API была настроена с помощью aka.ms/apimmsi

KeyVaultLastAccessStatusContractProperties

Выдача свойств обновления контракта.

Имя Тип Описание
code

string

Последний код состояния для синхронизации и обновления секрета из хранилища ключей.

message

string

Сведения об ошибке в противном случае пусты.

timeStampUtc

string

Последний раз, когда был доступ к секрету. Дата соответствует следующему формату: yyyy-MM-ddTHH:mm:ssZ в соответствии со стандартом ISO 8601.