fido2AuthenticationMethod: creationOptions
Espacio de nombres: microsoft.graph
Importante
Las API de la versión /beta
de Microsoft Graph están sujetas a cambios. No se admite el uso de estas API en aplicaciones de producción. Para determinar si una API está disponible en la versión 1.0, use el selector de Versión.
Recupere las opciones de creación necesarias para generar y registrar una clave de acceso compatible con Microsoft Entra ID. No se admiten las operaciones de autoservicio.
Permissions
Elija el permiso o los permisos marcados como con privilegios mínimos para esta API. Use un permiso o permisos con privilegios superiores solo si la aplicación lo requiere. Para obtener más información sobre los permisos delegados y de aplicación, consulte Tipos de permisos. Para obtener más información sobre estos permisos, consulte la referencia de permisos.
Tipo de permiso | Permisos con privilegios mínimos | Permisos con privilegios más altos |
---|---|---|
Delegado (cuenta profesional o educativa) | UserAuthenticationMethod.ReadWrite.All | No disponible. |
Delegado (cuenta personal de Microsoft) | No admitida. | No admitida. |
Aplicación | UserAuthenticationMethod.ReadWrite.All | No disponible. |
Importante
En escenarios delegados con cuentas profesionales o educativas en las que el usuario que ha iniciado sesión actúa sobre otro usuario, se le debe asignar un rol de Microsoft Entra compatible o un rol personalizado con un permiso de rol admitido. Se admiten los siguientes roles con privilegios mínimos para esta operación.
- Administrador de autenticación
- Administrador de autenticación con privilegios
Solicitud HTTP
GET /users/{user-id}/authentication/fido2Methods/creationOptions(challengeTimeoutInMinutes={challengeTimeoutInMinutes})
Parámetros de función
En la tabla siguiente se enumeran los parámetros necesarios al llamar a esta función.
Parámetro | Tipo | Descripción |
---|---|---|
challengeTimeoutInMinutes | Int32 | Invalide el tiempo de espera del desafío generado por el servidor devuelto en la solicitud. El valor predeterminado es 5 minutos; Este valor se puede invalidar entre 5 y 43200 minutos. |
Encabezados de solicitud
Nombre | Descripción |
---|---|
Authorization | {token} de portador. Obligatorio. Obtenga más información sobre la autenticación y la autorización. |
Cuerpo de la solicitud
No proporcione un cuerpo de solicitud para este método.
Respuesta
Si se ejecuta correctamente, esta función devuelve un 200 OK
código de respuesta y un webauthnCredentialCreationOptions en el cuerpo de la respuesta.
Nota:
Este método también devuelve identificadores de clave excludeCredentials con formato en Base64URL con un sufijo de número de relleno. Para descodificar los identificadores de clave, convierta el valor entero final de 0, 1 o 2 en el mismo número de caracteres de relleno base64.
Ejemplos
Solicitud
En el ejemplo siguiente se muestra la solicitud.
GET https://graph.microsoft.com/beta/users/{usersId}/authentication/fido2Methods/creationOptions(challengeTimeoutInMinutes=10)
Respuesta
En el ejemplo siguiente se muestra la respuesta.
Nota: Se puede acortar el objeto de respuesta que se muestra aquí para mejorar la legibilidad.
HTTP/1.1 200 OK
Content-Type: application/json
{
"value": {
"@odata.context": "https://graph.microsoft.com/beta/$metadata#microsoft.graph.webauthnCredentialCreationOptions",
"challengeTimeoutDateTime": "2024-08-14T16:29:58Z",
"publicKey": {
"challenge": "ZXlKaGJHY2lPaUpTVTBFdFQwRkZVQzB5TlRZaUxDSmxibU1pT2lKQk1qVTJSME5OSWl3aWVEVmpJanBiSWsxSlNVUmhSRU5EUVd4...",
"timeout": 0,
"attestation": "direct",
"rp": {
"id": "login.microsoft.com",
"name": "Microsoft"
},
"user": {
"id": "T0Y6Ehqp2EfQP0iExdt54DFwdWuaH7qIZbZGpOc92RGnvbXyRPvU-8AOp9r1T7Cebfc3",
"displayName": "Kim User",
"name": "kimuser@contoso.com"
},
"pubKeyCredParams": [
{
"type": "public-key",
"alg": -7
},
{
"type": "public-key",
"alg": -257
}
],
"excludeCredentials": [
{
"id": "0S64X8KwFmCeJjHzK1oE/39T+JYhfYbhFurwOxMMjtvRWc/sLYq8AMJVuva823XQ",
"type": "public-key",
"transports": []
},
{
"id": "pgIfj2fnom8rJdb4/h1gKqDkq+gxHFksI+m2aR5T+PNNycBfENAM4ksEBvoXky6d",
"type": "public-key",
"transports": []
},
{
"id": "u5wuw6SGH0VhAz7OXCLRkCuxhm4UrCB7hcLccyMU6calP1hWexfKe5PJNM69neAM",
"type": "public-key",
"transports": []
},
{
"id": "6rc0zTSz2YRlaKlCjqxsNDjDe8qY8TSL95Z4WhxEaaP4XfvfSnAGMk49RSwm/uAO",
"type": "public-key",
"transports": []
}
],
"authenticatorSelection": {
"authenticatorAttachment": "cross-platform",
"requireResidentKey": true,
"userVerification": "required"
},
"extensions": {
"hmacCreateSecret": true,
"enforceCredentialProtectionPolicy": true,
"credentialProtectionPolicy": "userVerificationOptional"
}
}
}
}