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.
Asigne y active un token de hardware al mismo tiempo por el número de serie del token de hardware.
Esta API está disponible en las siguientes implementaciones nacionales de nube.
| Servicio global |
Gobierno de EE. UU. L4 |
Us Government L5 (DOD) |
China operada por 21Vianet |
| ✅ |
❌ |
❌ |
❌ |
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.
Permisos que actúan por sí mismo
| Tipo de permiso |
Permisos con privilegios mínimos |
Permisos con privilegios más altos |
| Delegado (cuenta profesional o educativa) |
UserAuthenticationMethod.ReadWrite |
UserAuthenticationMethod.ReadWrite.All |
| Delegado (cuenta personal de Microsoft) |
No admitida. |
No admitida. |
| Aplicación |
No admitida. |
No admitida. |
Permisos que actúan en otro usuario
| Tipo de permiso |
Permiso 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
Asigne y active un método de autenticación OATH de hardware por sí mismo mediante el número de serie del dispositivo.
POST /me/authentication/hardwareOathMethods/assignAndActivateBySerialNumber
Nota:
Para llamar al punto de conexión /me, se requiere un usuario con la sesión iniciada y, por lo tanto, un permiso delegado. Los permisos de aplicación no se admiten cuando se usa el punto de /me conexión.
Asigne y active un método de autenticación OATH de hardware para otro usuario mediante el número de serie del dispositivo.
POST /users/{usersId}/authentication/hardwareOathMethods/assignAndActivateBySerialNumber
| Nombre |
Descripción |
| Authorization |
{token} de portador. Obligatorio. Obtenga más información sobre la autenticación y la autorización. |
| Content-Type |
application/json. Obligatorio. |
Cuerpo de la solicitud
En el cuerpo de la solicitud, proporcione una representación JSON de los parámetros.
En la tabla siguiente se enumeran los parámetros necesarios al llamar a esta acción.
| Parámetro |
Tipo |
Descripción |
| verificationCode |
Cadena |
Código TOTP de 6 dígitos que se actualiza cada 30 o 60 segundos en el token oath de hardware. |
| serialNumber |
Cadena |
Número de serie del token oath de hardware, que a menudo se encuentra en la parte posterior del token. |
| displayName |
Cadena |
Nombre opcional que se puede proporcionar al token oath de hardware. |
Respuesta
Si se ejecuta correctamente, esta acción devuelve un código de respuesta 204 No Content.
Ejemplos
Solicitud
En el ejemplo siguiente se muestra la solicitud.
POST https://graph.microsoft.com/beta/me/authentication/hardwareOathMethods/assignAndActivateBySerialNumber
Content-Type: application/json
{
"verificationCode": "588651",
"serialNumber": "TOTP123456",
"displayName": "Amy Masters Token"
}
// Code snippets are only available for the latest version. Current version is 5.x
// Dependencies
using Microsoft.Graph.Beta.Me.Authentication.HardwareOathMethods.AssignAndActivateBySerialNumber;
var requestBody = new AssignAndActivateBySerialNumberPostRequestBody
{
VerificationCode = "588651",
SerialNumber = "TOTP123456",
DisplayName = "Amy Masters Token",
};
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
await graphClient.Me.Authentication.HardwareOathMethods.AssignAndActivateBySerialNumber.PostAsync(requestBody);
// Code snippets are only available for the latest major version. Current major version is $v0.*
// Dependencies
import (
"context"
msgraphsdk "github.com/microsoftgraph/msgraph-beta-sdk-go"
graphusers "github.com/microsoftgraph/msgraph-beta-sdk-go/users"
//other-imports
)
requestBody := graphusers.NewItemAssignAndActivateBySerialNumberPostRequestBody()
verificationCode := "588651"
requestBody.SetVerificationCode(&verificationCode)
serialNumber := "TOTP123456"
requestBody.SetSerialNumber(&serialNumber)
displayName := "Amy Masters Token"
requestBody.SetDisplayName(&displayName)
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=go
graphClient.Me().Authentication().HardwareOathMethods().AssignAndActivateBySerialNumber().Post(context.Background(), requestBody, nil)
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
com.microsoft.graph.beta.users.item.authentication.hardwareoathmethods.assignandactivatebyserialnumber.AssignAndActivateBySerialNumberPostRequestBody assignAndActivateBySerialNumberPostRequestBody = new com.microsoft.graph.beta.users.item.authentication.hardwareoathmethods.assignandactivatebyserialnumber.AssignAndActivateBySerialNumberPostRequestBody();
assignAndActivateBySerialNumberPostRequestBody.setVerificationCode("588651");
assignAndActivateBySerialNumberPostRequestBody.setSerialNumber("TOTP123456");
assignAndActivateBySerialNumberPostRequestBody.setDisplayName("Amy Masters Token");
graphClient.me().authentication().hardwareOathMethods().assignAndActivateBySerialNumber().post(assignAndActivateBySerialNumberPostRequestBody);
const options = {
authProvider,
};
const client = Client.init(options);
const assignAndActivateBySerialNumber = {
verificationCode: '588651',
serialNumber: 'TOTP123456',
displayName: 'Amy Masters Token'
};
await client.api('/me/authentication/hardwareOathMethods/assignAndActivateBySerialNumber')
.version('beta')
.post(assignAndActivateBySerialNumber);
<?php
use Microsoft\Graph\Beta\GraphServiceClient;
use Microsoft\Graph\Beta\Generated\Users\Item\Authentication\HardwareOathMethods\AssignAndActivateBySerialNumber\AssignAndActivateBySerialNumberPostRequestBody;
$graphServiceClient = new GraphServiceClient($tokenRequestContext, $scopes);
$requestBody = new AssignAndActivateBySerialNumberPostRequestBody();
$requestBody->setVerificationCode('588651');
$requestBody->setSerialNumber('TOTP123456');
$requestBody->setDisplayName('Amy Masters Token');
$graphServiceClient->me()->authentication()->hardwareOathMethods()->assignAndActivateBySerialNumber()->post($requestBody)->wait();
Import-Module Microsoft.Graph.Beta.Identity.SignIns
$params = @{
verificationCode = "588651"
serialNumber = "TOTP123456"
displayName = "Amy Masters Token"
}
# A UPN can also be used as -UserId.
Set-MgBetaUserAuthenticationHardwareOathMethodAndActivateBySerialNumber -UserId $userId -BodyParameter $params
# Code snippets are only available for the latest version. Current version is 1.x
from msgraph_beta import GraphServiceClient
from msgraph_beta.generated.users.item.authentication.hardwareoathmethods.assign_and_activate_by_serial_number.assign_and_activate_by_serial_number_post_request_body import AssignAndActivateBySerialNumberPostRequestBody
# To initialize your graph_client, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
request_body = AssignAndActivateBySerialNumberPostRequestBody(
verification_code = "588651",
serial_number = "TOTP123456",
display_name = "Amy Masters Token",
)
await graph_client.me.authentication.hardware_oath_methods.assign_and_activate_by_serial_number.post(request_body)
Respuesta
En el ejemplo siguiente se muestra la respuesta.
HTTP/1.1 204 No Content