次の方法で共有


servicePrincipal: removeKey

名前空間: microsoft.graph

servicePrincipal からキー資格情報を削除します。 このメソッドと addKey を servicePrincipal で使用すると、期限切れのキーのローリングを自動化できます。

注:

servicePrincipal および Update servicePrincipal 操作を引き続き使用して、ユーザーのコンテキストの有無にかかわらず、servicePrincipal のキー資格情報を追加および更新できます。

このメソッドの要求検証の一環として、アクションを実行する前に、既存のキーの所有証明が検証されます。

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

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

アクセス許可

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

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

重要

職場または学校アカウントを使用した委任されたシナリオでは、サインインしているユーザーに、サポートされているMicrosoft Entraロールまたはサポートされているロールのアクセス許可を持つカスタム ロールを割り当てる必要があります。 この操作では、次の最小特権ロールがサポートされています。

  • 既定のユーザー アクセス許可を持つ管理者以外のメンバー ユーザー - 所有しているアプリケーション用
  • アプリケーション開発者 - 所有するアプリケーション用
  • クラウド アプリケーション管理者
  • アプリケーション管理者

HTTP 要求

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

POST /serviceprincipals/{id}/removeKey
POST /servicePrincipals(appId='{appId}')/removeKey

要求ヘッダー

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

要求本文

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

プロパティ 説明
keyId Guid パスワードの一意識別子。
証拠 文字列 既存のキーの所有証明として使用される自己署名 JWT トークン。 この JWT トークンは、 servicePrincipal に関連付けられている既存の有効な証明書のいずれかに対応する秘密キーで署名する必要があります。 トークンには、次の要求を含める必要があります。
  • aud: 対象ユーザーは 00000002-0000-0000-c000-000000000000する必要があります。
  • iss: 発行者は、要求を開始する servicePrincipal の ID である必要があります。
  • nbf: 時間の前ではありません。
  • exp: 有効期限は nbf + 10 分の値にする必要があります。

この所有証明トークンを生成する手順については、「 ローリング キーの所有証明トークンの生成」を参照してください。

応答

成功した場合、このメソッドは 204 No content 応答コードを返します。

この API を呼び出す方法の例を次に示します。

要求

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

POST https://graph.microsoft.com/v1.0/servicePrincipals/{id}/removeKey
Content-Type: application/json

{
    "keyId": "f0b0b335-1d71-4883-8f98-567911bfdca6",
    "proof":"eyJ0eXAiOiJ..."
}

応答

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

HTTP/1.1 204 No Content