fido2AuthenticationMethod: creationOptions
Namespace: microsoft.graph
Importante
As APIs na versão /beta
no Microsoft Graph estão sujeitas a alterações. Não há suporte para o uso dessas APIs em aplicativos de produção. Para determinar se uma API está disponível na v1.0, use o seletor Versão.
Obtenha as opções de criação necessárias para gerar e registar uma chave de acesso compatível com Microsoft Entra ID. As operações self-service não são suportadas.
Permissões
Escolha a permissão ou permissões marcadas como menos privilegiadas para esta API. Utilize uma permissão ou permissões com privilégios mais elevados apenas se a sua aplicação o exigir. Para obter detalhes sobre as permissões delegadas e de aplicação, veja Tipos de permissão. Para saber mais sobre estas permissões, veja a referência de permissões.
Tipo de permissão | Permissões com menos privilégios | Permissões com privilégios superiores |
---|---|---|
Delegado (conta corporativa ou de estudante) | UserAuthenticationMethod.ReadWrite.All | Indisponível. |
Delegado (conta pessoal da Microsoft) | Sem suporte. | Sem suporte. |
Application | UserAuthenticationMethod.ReadWrite.All | Indisponível. |
Importante
Em cenários delegados com contas escolares ou profissionais em que o utilizador com sessão iniciada está a agir sobre outro utilizador, tem de lhes ser atribuída uma função de Microsoft Entra suportada ou uma função personalizada com uma permissão de função suportada. As seguintes funções com menos privilégios são suportadas para esta operação.
- Administrador de Autenticação
- Administrador de Autenticação Privilegiada
Solicitação HTTP
GET /users/{user-id}/authentication/fido2Methods/creationOptions(challengeTimeoutInMinutes={challengeTimeoutInMinutes})
Parâmetros de função
A tabela seguinte lista os parâmetros que são necessários quando chama esta função.
Parâmetro | Tipo | Descrição |
---|---|---|
challengeTimeoutInMinutes | Int32 | Substitua o tempo limite do desafio gerado pelo servidor devolvido no pedido. O valor predefinido é 5 minutos; este valor pode ser substituído entre 5 a 43200 minutos. |
Cabeçalhos de solicitação
Nome | Descrição |
---|---|
Autorização | {token} de portador. Obrigatório. Saiba mais sobre autenticação e autorização. |
Corpo da solicitação
Não forneça um corpo de solicitação para esse método.
Resposta
Se for bem-sucedida, esta função devolve um 200 OK
código de resposta e um webauthnCredentialCreationOptions no corpo da resposta.
Exemplos
Solicitação
O exemplo a seguir mostra uma solicitação.
GET https://graph.microsoft.com/beta/users/{usersId}/authentication/fido2Methods/creationOptions(challengeTimeoutInMinutes=10)
Resposta
O exemplo a seguir mostra a resposta.
Observação: o objeto de resposta mostrado aqui pode ser encurtado para legibilidade.
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"
}
}
}
}