Compartir a través de


Certificate - Create Or Update

Crea o actualiza el certificado que se usa para la autenticación con el servidor back-end.

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

Parámetros de identificador URI

Nombre En Requerido Tipo Description
certificateId
path True

string

Identificador de la entidad de certificado. Debe ser único en la instancia de servicio de API Management actual.

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

resourceGroupName
path True

string

Nombre del grupo de recursos. El nombre distingue mayúsculas de minúsculas.

serviceName
path True

string

Nombre del servicio API Management.

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

subscriptionId
path True

string

Identificador de la suscripción de destino.

api-version
query True

string

Versión de API que se usará para la operación.

Encabezado de la solicitud

Nombre Requerido Tipo Description
If-Match

string

ETag de la entidad. No es necesario al crear una entidad, pero es necesario al actualizar una entidad.

Cuerpo de la solicitud

Nombre Tipo Description
properties.data

string

Certificado codificado en base 64 mediante la representación application/x-pkcs12.

properties.keyVault

KeyVaultContractCreateProperties

Detalles de ubicación de KeyVault del certificado.

properties.password

string

Contraseña del certificado

Respuestas

Nombre Tipo Description
200 OK

CertificateContract

Los detalles del certificado se actualizaron correctamente.

Headers

ETag: string

201 Created

CertificateContract

El nuevo certificado se ha agregado correctamente.

Headers

ETag: string

Other Status Codes

ErrorResponse

Respuesta de error que describe el motivo del error de la operación.

Seguridad

azure_auth

Flujo de OAuth2 de Azure Active Directory.

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

Scopes

Nombre Description
user_impersonation suplantación de su cuenta de usuario

Ejemplos

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"
      }
    }
  }
}

Definiciones

Nombre Description
CertificateContract

Detalles del certificado.

CertificateCreateOrUpdateParameters

Detalles de creación o actualización del certificado.

ErrorFieldContract

Contrato de campo de error.

ErrorResponse

Respuesta de error.

KeyVaultContractCreateProperties

Cree los detalles del contrato keyVault.

KeyVaultContractProperties

Detalles del contrato de KeyVault.

KeyVaultLastAccessStatusContractProperties

Emitir propiedades de actualización de contrato.

CertificateContract

Detalles del certificado.

Nombre Tipo Description
id

string

Identificador de recurso completo del recurso. Por ejemplo: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}

name

string

Nombre del recurso.

properties.expirationDate

string

Fecha de expiración del certificado. La fecha se ajusta al siguiente formato: yyyy-MM-ddTHH:mm:ssZ según lo especificado por el estándar ISO 8601.

properties.keyVault

KeyVaultContractProperties

Detalles de ubicación de KeyVault del certificado.

properties.subject

string

Atributo Subject del certificado.

properties.thumbprint

string

Huella digital del certificado

type

string

Tipo de recurso. Por ejemplo, "Microsoft.Compute/virtualMachines" o "Microsoft.Storage/storageAccounts"

CertificateCreateOrUpdateParameters

Detalles de creación o actualización del certificado.

Nombre Tipo Description
properties.data

string

Certificado codificado en base 64 mediante la representación application/x-pkcs12.

properties.keyVault

KeyVaultContractCreateProperties

Detalles de ubicación de KeyVault del certificado.

properties.password

string

Contraseña del certificado

ErrorFieldContract

Contrato de campo de error.

Nombre Tipo Description
code

string

Código de error de nivel de propiedad.

message

string

Representación legible del error de nivel de propiedad.

target

string

Nombre de propiedad.

ErrorResponse

Respuesta de error.

Nombre Tipo Description
error.code

string

Código del error definido por el servicio. Este código funciona como estado secundario del código de error HTTP especificado en la respuesta.

error.details

ErrorFieldContract[]

La lista de campos no válidos que se envían en la solicitud, en caso de error de validación.

error.message

string

Representación legible del error.

KeyVaultContractCreateProperties

Cree los detalles del contrato keyVault.

Nombre Tipo Description
identityClientId

string

Null para SystemAssignedIdentity o Id. de cliente para UserAssignedIdentity, que se usará para acceder al secreto del almacén de claves.

secretIdentifier

string

Identificador de secreto del almacén de claves para capturar el secreto. Proporcionar un secreto con versiones impedirá la actualización automática. Esto requiere que API Management servicio se configure con aka.ms/apimmsi

KeyVaultContractProperties

Detalles del contrato de KeyVault.

Nombre Tipo Description
identityClientId

string

Null para SystemAssignedIdentity o Id. de cliente para UserAssignedIdentity, que se usará para acceder al secreto del almacén de claves.

lastStatus

KeyVaultLastAccessStatusContractProperties

Última sincronización y actualización del estado del secreto del almacén de claves.

secretIdentifier

string

Identificador de secreto del almacén de claves para capturar el secreto. Proporcionar un secreto con versiones impedirá la actualización automática. Esto requiere que API Management servicio se configure con aka.ms/apimmsi

KeyVaultLastAccessStatusContractProperties

Emitir propiedades de actualización de contrato.

Nombre Tipo Description
code

string

Último código de estado para la sincronización y actualización del secreto desde el almacén de claves.

message

string

Detalles del error en blanco.

timeStampUtc

string

Última vez que se obtuvo acceso al secreto. La fecha se ajusta al siguiente formato: yyyy-MM-ddTHH:mm:ssZ según lo especificado por el estándar ISO 8601.