Cree un nuevo objeto temporaryAccessPassAuthenticationMethod en un usuario. Un usuario solo puede tener un pase de acceso temporal que se pueda usar dentro de su duración especificada. Si el usuario requiere un nuevo pase de acceso temporal mientras el pase de acceso temporal actual es válido, el administrador puede crear un nuevo pase de acceso temporal para el usuario, se eliminará el pase de acceso temporal anterior y se creará un nuevo pase de acceso temporal.
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 en otros usuarios
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
POST /users/{id | userPrincipalName}/authentication/temporaryAccessPassMethods
Opcional. Determina si el pase está limitado a un uso único. Si truees , el paso se puede usar una vez; si falsees , el pase se puede usar varias veces dentro de su configuración lifetimeInMinutes . Un pase de acceso temporal de uso múltiple (isUsableOnce = false), solo se puede crear y usar para el inicio de sesión si está permitido por la directiva de método de autenticación de paso de acceso temporal.
lifetimeInMinutes
Int32
Opcional. Duración de temporaryAccessPass en minutos a partir de la hora de creación o en startDateTime, si se establece. Debe tener entre 10 y 43200 (equivalente a 30 días). Si no se especifica, se aplica la configuración defaultLifetimeInMinutes en la directiva de método de autenticación de pase de acceso temporal .
startDateTime
DateTimeOffset
Opcional. Fecha y hora en que el objeto temporaryAccessPass está disponible para su uso. Si no se especifica, el pase de acceso temporal está disponible para su uso inmediatamente después de su creación.
Respuesta
Si se ejecuta correctamente, este método devuelve un 201 Created código de respuesta y un objeto temporaryAccessPassAuthenticationMethod en el cuerpo de la respuesta.
// Code snippets are only available for the latest version. Current version is 5.x
// Dependencies
using Microsoft.Graph.Models;
var requestBody = new TemporaryAccessPassAuthenticationMethod
{
StartDateTime = DateTimeOffset.Parse("2022-06-05T00:00:00.000Z"),
LifetimeInMinutes = 60,
IsUsableOnce = false,
};
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
var result = await graphClient.Users["{user-id}"].Authentication.TemporaryAccessPassMethods.PostAsync(requestBody);
// Code snippets are only available for the latest major version. Current major version is $v1.*
// Dependencies
import (
"context"
"time"
msgraphsdk "github.com/microsoftgraph/msgraph-sdk-go"
graphmodels "github.com/microsoftgraph/msgraph-sdk-go/models"
//other-imports
)
requestBody := graphmodels.NewTemporaryAccessPassAuthenticationMethod()
startDateTime , err := time.Parse(time.RFC3339, "2022-06-05T00:00:00.000Z")
requestBody.SetStartDateTime(&startDateTime)
lifetimeInMinutes := int32(60)
requestBody.SetLifetimeInMinutes(&lifetimeInMinutes)
isUsableOnce := false
requestBody.SetIsUsableOnce(&isUsableOnce)
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=go
temporaryAccessPassMethods, err := graphClient.Users().ByUserId("user-id").Authentication().TemporaryAccessPassMethods().Post(context.Background(), requestBody, nil)
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
TemporaryAccessPassAuthenticationMethod temporaryAccessPassAuthenticationMethod = new TemporaryAccessPassAuthenticationMethod();
OffsetDateTime startDateTime = OffsetDateTime.parse("2022-06-05T00:00:00.000Z");
temporaryAccessPassAuthenticationMethod.setStartDateTime(startDateTime);
temporaryAccessPassAuthenticationMethod.setLifetimeInMinutes(60);
temporaryAccessPassAuthenticationMethod.setIsUsableOnce(false);
TemporaryAccessPassAuthenticationMethod result = graphClient.users().byUserId("{user-id}").authentication().temporaryAccessPassMethods().post(temporaryAccessPassAuthenticationMethod);
# Code snippets are only available for the latest version. Current version is 1.x
from msgraph import GraphServiceClient
from msgraph.generated.models.temporary_access_pass_authentication_method import TemporaryAccessPassAuthenticationMethod
# To initialize your graph_client, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
request_body = TemporaryAccessPassAuthenticationMethod(
start_date_time = "2022-06-05T00:00:00.000Z",
lifetime_in_minutes = 60,
is_usable_once = False,
)
result = await graph_client.users.by_user_id('user-id').authentication.temporary_access_pass_methods.post(request_body)