다음을 통해 공유


Certificate - Create Or Update

백엔드와의 인증에 사용되는 인증서를 만들거나 업데이트합니다.

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

URI 매개 변수

Name In(다음 안에) 필수 형식 Description
certificateId
path True

string

인증서 엔터티의 식별자입니다. 현재 API Management 서비스 instance 고유해야 합니다.

regex 패턴: ^[^*#&+:<>?]+$

resourceGroupName
path True

string

리소스 그룹의 이름.

serviceName
path True

string

API Management 서비스의 이름입니다.

regex 패턴: ^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$

subscriptionId
path True

string

Microsoft Azure 구독을 고유하게 식별하는 구독 자격 증명 구독 ID는 모든 서비스 호출에 대한 URI의 파트를 형성합니다.

api-version
query True

string

클라이언트 요청과 함께 사용할 API의 버전입니다.

요청 헤더

Name 필수 형식 Description
If-Match

string

엔터티의 ETag입니다. 엔터티를 만들 때는 필요하지 않지만 엔터티를 업데이트할 때 필요합니다.

요청 본문

Name 형식 Description
properties.data

string

application/x-pkcs12 표현을 사용하여 기본 64로 인코딩된 인증서입니다.

properties.keyVault

KeyVaultContractCreateProperties

인증서의 KeyVault 위치 세부 정보입니다.

properties.password

string

인증서의 암호

응답

Name 형식 Description
200 OK

CertificateContract

인증서 세부 정보가 업데이트되었습니다.

헤더

ETag: string

201 Created

CertificateContract

새 인증서가 성공적으로 추가되었습니다.

헤더

ETag: string

Other Status Codes

ErrorResponse

작업이 실패한 이유를 설명하는 오류 응답입니다.

보안

azure_auth

Azure Active Directory OAuth2 Flow.

형식: oauth2
Flow: implicit
권한 부여 URL: https://login.microsoftonline.com/common/oauth2/authorize

범위

Name Description
user_impersonation 사용자 계정 가장

예제

ApiManagementCreateCertificate
ApiManagementCreateCertificateWithKeyVault

ApiManagementCreateCertificate

샘플 요청

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

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

샘플 응답

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

샘플 요청

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

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

샘플 응답

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

정의

Name Description
CertificateContract

인증서 세부 정보.

CertificateCreateOrUpdateParameters

인증서 만들기 또는 업데이트 세부 정보

ErrorFieldContract

오류 필드 계약.

ErrorResponse

오류 응답.

KeyVaultContractCreateProperties

keyVault 계약 세부 정보를 만듭니다.

KeyVaultContractProperties

KeyVault 계약 세부 정보입니다.

KeyVaultLastAccessStatusContractProperties

계약 업데이트 속성을 발급합니다.

CertificateContract

인증서 세부 정보.

Name 형식 Description
id

string

리소스에 대한 정규화된 리소스 ID입니다. 예 - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}

name

string

리소스의 이름입니다.

properties.expirationDate

string

인증서의 만료 날짜입니다. 날짜는 ISO 8601 표준에 지정된 형식 yyyy-MM-ddTHH:mm:ssZ 을 따릅니다.

properties.keyVault

KeyVaultContractProperties

인증서의 KeyVault 위치 세부 정보입니다.

properties.subject

string

인증서의 주체 특성입니다.

properties.thumbprint

string

인증서의 지문입니다.

type

string

리소스 형식입니다. 예: "Microsoft.Compute/virtualMachines" 또는 "Microsoft.Storage/storageAccounts"

CertificateCreateOrUpdateParameters

인증서 만들기 또는 업데이트 세부 정보

Name 형식 Description
properties.data

string

application/x-pkcs12 표현을 사용하여 기본 64로 인코딩된 인증서입니다.

properties.keyVault

KeyVaultContractCreateProperties

인증서의 KeyVault 위치 세부 정보입니다.

properties.password

string

인증서의 암호

ErrorFieldContract

오류 필드 계약.

Name 형식 Description
code

string

속성 수준 오류 코드입니다.

message

string

사람이 읽을 수 있는 속성 수준 오류 표현입니다.

target

string

속성 이름입니다.

ErrorResponse

오류 응답.

Name 형식 Description
error.code

string

서비스에서 정의한 오류 코드입니다. 이 코드는 응답에 지정된 HTTP 오류 코드의 하위 상태로 사용됩니다.

error.details

ErrorFieldContract[]

유효성 검사 오류가 발생한 경우 요청에 잘못된 필드가 전송됩니다.

error.message

string

사람이 읽을 수 있는 오류 표현입니다.

KeyVaultContractCreateProperties

keyVault 계약 세부 정보를 만듭니다.

Name 형식 Description
identityClientId

string

Key Vault 비밀에 액세스하는 데 사용되는 SystemAssignedIdentity의 경우 Null이거나 UserAssignedIdentity의 클라이언트 ID입니다.

secretIdentifier

string

비밀을 가져오기 위한 키 자격 증명 모음 비밀 식별자입니다. 버전이 지정된 비밀을 제공하면 자동 새로 고침이 방지됩니다. 이렇게 하려면 API Management 서비스를 aka.ms/apimmsi 구성해야 합니다.

KeyVaultContractProperties

KeyVault 계약 세부 정보입니다.

Name 형식 Description
identityClientId

string

Key Vault 비밀에 액세스하는 데 사용되는 SystemAssignedIdentity의 경우 Null이거나 UserAssignedIdentity의 클라이언트 ID입니다.

lastStatus

KeyVaultLastAccessStatusContractProperties

키 자격 증명 모음에서 비밀 상태 마지막으로 동기화하고 새로 고칩니다.

secretIdentifier

string

비밀을 가져오기 위한 키 자격 증명 모음 비밀 식별자입니다. 버전이 지정된 비밀을 제공하면 자동 새로 고침이 방지됩니다. 이렇게 하려면 API Management 서비스를 aka.ms/apimmsi 구성해야 합니다.

KeyVaultLastAccessStatusContractProperties

계약 업데이트 속성을 발급합니다.

Name 형식 Description
code

string

키 자격 증명 모음에서 비밀의 동기화 및 새로 고침을 위한 마지막 상태 코드입니다.

message

string

오류에 대한 세부 정보는 비어 있습니다.

timeStampUtc

string

마지막으로 비밀에 액세스했습니다. 날짜는 ISO 8601 표준에 지정된 형식 yyyy-MM-ddTHH:mm:ssZ 을 따릅니다.