1 つ以上の hardwareOathTokenAuthenticationMethodDevice オブジェクトを作成する

名前空間: microsoft.graph

重要

Microsoft Graph の /beta バージョンの API は変更される可能性があります。 実稼働アプリケーションでこれらの API を使用することは、サポートされていません。 v1.0 で API を使用できるかどうかを確認するには、Version セレクターを使用します。

1 つ以上の hardwareOathTokenAuthenticationMethodDevice オブジェクトを作成します。 この API では、次の 2 つのシナリオがサポートされています。

  • ユーザーに割り当てずに新しいハードウェア トークンを作成します。 その後、 ユーザーに割り当てることができます。
  • 個々のハードウェア トークンを作成して、同じ要求のユーザーに割り当てます。

アクセス許可

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

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

重要

職場または学校アカウントで委任されたアクセス許可を使用する場合、サインインしたユーザーには、適切な Microsoft Entra ロール、または必要なアクセス許可を持つカスタム ロールが必要です。 この操作に必要な最低特権の組み込みロールは、 認証ポリシー管理者です。

1 回の要求でハードウェア OATH トークンを作成してユーザーに割り当てるには、サインインしたユーザーに以下も必要です。

  • UserAuthenticationMethod.ReadWrite.All の委任されたアクセス許可。
  • 認証管理者 (ハードウェア トークンを管理者以外のユーザーに割り当てるための最小特権ロール) または特権認証管理者 (ハードウェア トークンを管理者ユーザーに割り当てるための最小特権ロール) ロールのいずれかです。

HTTP 要求

PATCH /directory/authenticationMethodDevices/hardwareOathDevices

要求ヘッダー

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

要求本文

要求の本文には、 hardwareOathTokenAuthenticationMethodDevice オブジェクトの JSON 表現を指定します。

hardwareOathTokenAuthenticationMethodDevice を作成するときに、次のプロパティを指定できます。

プロパティ 型 説明
シリアル番号 文字列 特定のハードウェア トークンのシリアル番号。多くの場合、デバイスの背面に記載されています。 必須です。
manufacturer 文字列 ハードウェア トークンの製造元名。 必須です。
model 文字列 ハードウェア トークンのモデル名。 必須です。
secretKey 文字列 ベンダーによって提供される、特定のハードウェア トークンの秘密鍵。 必須です。
timeIntervalInSeconds Int32 6 桁の確認コードの更新間隔 (秒単位)。 有効な値は 30 または 60 です。 必須です。
hashFunction hardwareOathTokenHashFunction ハードウェア トークンのハッシュ関数。 使用可能な値: hmacsha1、hmacsha256。 既定値は hmacsha1 です。 省略可能。
assignTo identity トークンをユーザーに直接割り当てる場合は、ユーザー ID。 省略可能。

応答

成功した場合、このメソッドは応答本文で 201 Created 応答コードと hardwareOathTokenAuthenticationMethodDevice オブジェクトを返します。

例

要求

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

POST https://graph.microsoft.com/beta/directory/authenticationMethodDevices/hardwareOathDevices
Content-Type: application/json

{
  "@context": "#$delta",
  "value": [
    {
      "@contentId": "1",
      "serialNumber": "TOTP123456",
      "manufacturer": "Contoso",
      "model": "Hardware Token 1000",
      "secretKey": "6PJ4UKIW33NNXYZAEHQNFUFTZF7WFTFB",
      "timeIntervalInSeconds": "30",
      "hashFunction": "hmacsha1"
      },
      {
        "@contentId": "2",
        "serialNumber": "TOTP654321",
        "manufacturer": "Contoso",
        "model": "Hardware Token 1000",
        "secretKey": "TXYZAE6PJ4UZF3NNKIW3HQNFUF7WFTFB",
        "timeIntervalInSeconds": "30",
        "hashFunction": "hmacsha1",
        "assignTo": {
          "id": "0cadbf92-####-####-####-############"
          }
      }
   ]
}

応答

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

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

HTTP/1.1 201 Created
Content-Type: application/json

{
  "value": [
    {
      "@odata.type": "#microsoft.graph.hardwareOathAuthenticationMethod",
      "id": "aad49556-####-####-####-############",
      "device": {
        "id": "aad49556-####-####-####-############",
        "displayName": null,
        "serialNumber": "TOTP123456",
        "manufacturer": "Contoso",
        "model": "Hardware Token 1000",
        "secretKey": null,
        "timeIntervalInSeconds": 30,
        "status": "available",
        "hashFunction": "hmacsha1",
        "assignedTo": null
      }
    },
    {
      "@odata.type": "#microsoft.graph.hardwareOathAuthenticationMethod",
      "id": "3dee0e53-####-####-####-############",
      "device": {
        "id": "3dee0e53-####-####-####-############",
        "displayName": null,
        "serialNumber": "TOTP654321",
        "manufacturer": "Contoso",
        "model": "Hardware Token 1000",
        "secretKey": null,
        "timeIntervalInSeconds": 30,
        "status": "assigned",
        "hashFunction": "hmacsha1",
        "assignedTo": {
            "id": "0cadbf92-####-####-####-############",
            "displayName": "Amy Masters"
        }
      }
    }
  ]
}