fido2AuthenticationMethod: creationOptions

命名空间:microsoft.graph

检索生成和注册Microsoft Entra ID兼容密钥所需的创建选项。 此函数返回 WebAuthn 凭据创建选项,其中包括质询、信赖方信息和用户信息,客户端使用这些信息创建新的 FIDO2 凭据。 excludeCredentials 中的质询属性和凭据 ID 是 Base64URL 编码的,无需填充。 响应中的所有二进制数据都遵循 RFC 4648 第 5 节中定义的 Base64URL 编码。

注意

此 API 应用系统定义的质询超时 5 分钟。 与此 API 的 beta 版本不同,v1.0 不支持自定义质询超时值。

此 API 有一个 已知问题 ,需要允许在 FIDO2 身份验证方法策略中启用 自助服务设置

此 API 可用于以下国家级云部署

全局服务 美国政府 L4 美国政府 L5 (DOD) 由世纪互联运营的中国

权限

为此 API 选择标记为最低特权的权限。 只有在应用需要它时,才使用更高的特权权限。 有关委派权限和应用程序权限的详细信息,请参阅权限类型。 要了解有关这些权限的详细信息,请参阅 权限参考

权限类型 最低特权权限 更高特权权限
委派(工作或学校帐户) UserAuthMethod-Passkey.ReadWrite.All UserAuthenticationMethod.ReadWrite.All
委派(个人 Microsoft 帐户) 不支持。 不支持。
应用程序 UserAuthMethod-Passkey.ReadWrite.All UserAuthenticationMethod.ReadWrite.All

重要

对于使用工作或学校帐户(其中已登录用户对其他用户进行操作)的委派访问,必须为他们分配受支持的Microsoft Entra角色或授予此操作所需权限的自定义角色。 此操作支持以下内置角色,这些角色仅提供所需的最小特权:

  • 全局读取者
  • 身份验证管理员
  • 特权身份验证管理员

HTTP 请求

注意

调用 /me 终结点需要已登录的用户,因此需要委派权限。 使用 /me 终结点时,不支持应用程序权限。

GET /users/{id}/authentication/fido2Methods/creationOptions
GET /me/authentication/fido2Methods/creationOptions

请求标头

名称 说明
Authorization 持有者 {token}。 必填。 详细了解 身份验证和授权

请求正文

请勿提供此方法的请求正文。

响应

如果成功,此函数在 200 OK 响应正文中返回响应代码和 webauthnCredentialCreationOptions 对象。

示例

请求

以下示例显示了一个请求。

GET https://graph.microsoft.com/v1.0/users/99a1915f-70a7-4b67-9dca-64095b41be73/authentication/fido2Methods/creationOptions

响应

以下示例显示了相应的响应。

注意:为了提高可读性,可能缩短了此处显示的响应对象。

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

{
  "@odata.type": "#microsoft.graph.webauthnCredentialCreationOptions",
  "challengeTimeoutDateTime": "2026-04-20T10:05:00Z",
  "publicKey": {
    "@odata.type": "#microsoft.graph.webauthnPublicKeyCredentialCreationOptions",
    "rp": {
      "@odata.type": "#microsoft.graph.webauthnPublicKeyCredentialRpEntity",
      "id": "login.microsoftonline.com",
      "name": "Microsoft"
    },
    "user": {
      "@odata.type": "#microsoft.graph.webauthnPublicKeyCredentialUserEntity",
      "id": "ZGF2aWRAY29udG9zby5jb20",
      "displayName": "David Smith",
      "name": "david@contoso.com"
    },
    "challenge": "QTU1MzNDNzAtNkM3Ni00NTRDLUJDQ0YtRTREMDZCNTBFRTRE",
    "pubKeyCredParams": [
      {
        "@odata.type": "#microsoft.graph.webauthnPublicKeyCredentialParameters",
        "type": "public-key",
        "alg": -7
      }
    ],
    "timeout": 60000,
    "excludeCredentials": [],
    "authenticatorSelection": {
      "@odata.type": "#microsoft.graph.webauthnAuthenticatorSelectionCriteria",
      "authenticatorAttachment": "platform",
      "requireResidentKey": true,
      "userVerification": "required"
    },
    "attestation": "direct",
    "extensions": {
      "@odata.type": "#microsoft.graph.webauthnAuthenticationExtensionsClientInputs"
    }
  }
}