次の方法で共有


servicePrincipal: addPassword

名前空間: microsoft.graph

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}/addPassword
POST /servicePrincipals(appId='{appId}')/addPassword

要求ヘッダー

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

要求本文

要求本文で、空の passwordCredential オブジェクトを指定するか、次の省略可能なプロパティを指定します。

プロパティ 説明
displayName 文字列 パスワードのフレンドリ名。 省略可能。
endDateTime DateTimeOffset パスワードの有効期限が切れる日付と時刻は、ISO 8601 形式を使用して表され、常に UTC 時刻になります。 たとえば、2014 年 1 月 1 日午前 0 時 (UTC) は、2014-01-01T00:00:00Z です。 省略可能。 既定値は "startDateTime + 2 years" です。
startDateTime DateTimeOffset パスワードが有効になる日時。 Timestamp 型は、ISO 8601 形式を使用して日付と時刻の情報を表し、常に UTC 時間です。 たとえば、2014 年 1 月 1 日午前 0 時 (UTC) は、2014-01-01T00:00:00Z です。 省略可能。 既定値は "now" です。

応答

成功した場合、このメソッドは 200 OK 応答コードと、応答本文に新しい passwordCredential オブジェクトを返します。 応答オブジェクトの secretText プロパティには、長さが 16 から 64 文字のMicrosoft Entra IDによって生成された強力なパスワードが含まれています。 今後、このパスワードを取得する方法はありません。

次の例は、この API を呼び出す方法を示しています。

要求

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

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

{
  "passwordCredential": {
    "displayName": "Password friendly name"
  }
}

応答

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

注: ここに示す応答オブジェクトは、読みやすさのために短縮されている場合があります。

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

{
    "customKeyIdentifier": null,
    "endDateTime": "2021-09-09T19:50:29.3086381Z",
    "keyId": "f0b0b335-1d71-4883-8f98-567911bfdca6",
    "startDateTime": "2019-09-09T19:50:29.3086381Z",
    "secretText": "[6gyXA5S20@MN+WRXAJ]I-TO7g1:h2P8",
    "hint": "[6g",
    "displayName": "Password friendly name"
}