次の方法で共有


servicePrincipal: addTokenSigningCertificate

名前空間: microsoft.graph

自己署名証明書を作成し、生成された証明書のパブリック部分である selfSignedCertificate オブジェクトを返します。

自己署名署名証明書は、 servicePrincipal に追加される次のオブジェクトで構成されます。

  • 次のオブジェクトを持つ keyCredentials オブジェクト。
    • 使用法が に設定されているSign秘密キー オブジェクト。
    • 使用法が にVerify設定されている公開キー オブジェクト。
  • passwordCredentials オブジェクト。

すべてのオブジェクトの値は customKeyIdentifier と同じです。

passwordCredential は、PFX ファイル (秘密キー) を開くために使用されます。 それに関連付けられている秘密キー オブジェクトの keyId の値は同じです。 displayName プロパティを使用して作成時に設定した場合、証明書のサブジェクトを更新できません。 startDateTime は、アクションを使用して証明書が作成されるのと同じ時刻に設定されます。 endDateTime は、証明書が作成されてから最大 3 年後にすることができます。

この API は、次の国内クラウド展開で使用できます。

グローバル サービス 米国政府機関 L4 米国政府機関 L5 (DOD) 21Vianet が運営する中国

アクセス許可

この API の最小特権としてマークされているアクセス許可またはアクセス許可を選択します。 アプリで必要な場合にのみ、より高い特権のアクセス許可またはアクセス許可を使用します。 委任されたアクセス許可とアプリケーションのアクセス許可の詳細については、「 アクセス許可の種類」を参照してください。 これらのアクセス許可の詳細については、 アクセス許可のリファレンスを参照してください

アクセス許可の種類 最小特権アクセス許可 特権の高いアクセス許可
委任 (職場または学校のアカウント) Application.ReadWrite.All Directory.ReadWrite.All
委任 (個人用 Microsoft アカウント) サポートされていません。 サポートされていません。
アプリケーション Application.ReadWrite.OwnedBy Application.ReadWrite.All, Directory.ReadWrite.All

HTTP 要求

サービス プリンシパルは、 その ID または appId を使用してアドレス指定できます。 idappId は、Microsoft Entra 管理センターのアプリ登録でそれぞれオブジェクト IDアプリケーション (クライアント) ID と呼ばれます。

POST /servicePrincipals/{id}/addTokenSigningCertificate
POST /servicePrincipals(appId='{appId}')/addTokenSigningCertificate

要求ヘッダー

名前 説明
Authorization ベアラー {token}。 必須です。 認証と承認の詳細については、こちらをご覧ください。
Content-Type application/json. 必須です。

要求本文

要求本文で、次の必須プロパティを指定します。

プロパティ 説明
displayName string キーのフレンドリ名。 で始まる CN=必要があります。
endDateTime DateTimeOffset 資格情報の有効期限が切れる日時。 証明書が作成された日から最大 3 年間です。 指定しない場合、既定値は作成時から 3 年間です。 タイムスタンプの種類は、ISO 8601 形式を使用して日付と時刻の情報を表し、常に UTC 時刻です。 たとえば、2014 年 1 月 1 日午前 0 時 (UTC) は、2014-01-01T00:00:00Z です。

応答

成功した場合、このメソッドは 200 OK 応答コードと、応答本文に新しい selfSignedCertificate オブジェクトを返します。

要求

次の例は要求を示しています。

POST https://graph.microsoft.com/v1.0/servicePrincipals/004375c5-6e2e-4dec-95e3-626838cb9f80/addTokenSigningCertificate
Content-type: application/json

{
    "displayName":"CN=customDisplayName",
    "endDateTime":"2024-01-25T00:00:00Z"
}

応答

次の例は応答を示しています。

HTTP/1.1 200 OK
Content-Type: application/json

{
  "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#microsoft.graph.selfSignedCertificate",
  "customKeyIdentifier": "2iD8ppbE+D6Kmu1ZvjM2jtQh88E=",
  "displayName": "CN=customDisplayName",
  "endDateTime": "2024-01-25T00:00:00Z",
  "key": "MIICuDCCAaCgAwIBAgIIYXJsNtL4oUMwDQYJKoZIhvcNAQEL...StP8s/w==",
  "keyId": "93bc223f-7235-4b9c-beea-d66847531c49",
  "startDateTime": "2021-05-05T18:38:51.8100763Z",
  "thumbprint": "DA20FCA696C4F83E8A9AED59BE33368ED421F3C1",
  "type": "AsymmetricX509Cert",
  "usage": "Verify"
}