Créez un utilisateur.
Le corps de la demande contient l’utilisateur à créer. Au minimum, vous devez spécifier les propriétés requises pour l’utilisateur. Vous pouvez aussi spécifier d’autres propriétés accessibles en écriture.
L’une des autorisations suivantes est nécessaire pour appeler cette API. Pour plus d’informations, notamment sur la façon de choisir les autorisations, voir Autorisations.
Type d’autorisation
Autorisations (de celle qui offre le plus de privilèges à celle qui en offre le moins)
Dans le corps de la demande, fournissez une représentation JSON de l’objet user.
Le tableau suivant répertorie les propriétés nécessaires lorsque vous créez un utilisateur. Si vous incluez une propriété identités pour l’utilisateur que vous créez, l'ensemble des propriétés répertoriées n'est pas nécessaire. Pour une identité sociale, aucune des propriétés n’est nécessaire.
Parameter
Type
Description
accountEnabled
Boolean
valeur True si le compte est activé ; sinon, valeur False.
displayName
Chaîne
Le nom à afficher dans le carnet d’adresses pour l’utilisateur.
onPremisesImmutableId
String
Obligatoire uniquement lors de la création d’un compte d’utilisateur si vous utilisez un domaine fédéré pour la propriété userPrincipalName (UPN) de l’utilisateur.
Nom d’utilisateur principal (someuser@contoso.com). Il s’agit d’un nom de connexion internet pour l’utilisateur basé sur la norme Internet RFC 822. Par convention, il doit être mappé sur le nom de messagerie de l’utilisateur. Le format général est alias@domaine, où le domaine doit être présent dans la collection de domaines vérifiés du client. Les domaines vérifiés du client sont accessibles à partir de la propriété verifiedDomains de l’organisation. REMARQUE : cette propriété ne peut pas contenir de caractères accentués. Seuls les caractères suivants sont autorisés A - Z, a - z, 0 - 9, ' . - _ ! # ^ ~. Pour obtenir la liste complète des caractères autorisés, consultez stratégies de nom d’utilisateur.
Étant donné que la ressource user prend en charge des extensions, vous pouvez utiliser l’opération POST pour ajouter des propriétés personnalisées avec vos propres données à l’instance user lors de sa création.
Remarque
Les utilisateurs fédérés créés via cette API sont obligés de se connecter toutes les 12 heures par défaut. Pour plus d’informations sur la façon de modifier cela, consultez Exceptions pour les durées de vie des jetons.
Réponse
Si elle réussit, cette méthode renvoie un code de réponse 201 Created et un objet user dans le corps de la réponse.
// Code snippets are only available for the latest version. Current version is 5.x
// Dependencies
using Microsoft.Graph.Models;
var requestBody = new User
{
AccountEnabled = true,
DisplayName = "Adele Vance",
MailNickname = "AdeleV",
UserPrincipalName = "AdeleV@contoso.com",
PasswordProfile = new PasswordProfile
{
ForceChangePasswordNextSignIn = true,
Password = "xWwvJ]6NMw+bWH-d",
},
};
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
var result = await graphClient.Users.PostAsync(requestBody);
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
User user = new User();
user.setAccountEnabled(true);
user.setDisplayName("Adele Vance");
user.setMailNickname("AdeleV");
user.setUserPrincipalName("AdeleV@contoso.com");
PasswordProfile passwordProfile = new PasswordProfile();
passwordProfile.setForceChangePasswordNextSignIn(true);
passwordProfile.setPassword("xWwvJ]6NMw+bWH-d");
user.setPasswordProfile(passwordProfile);
User result = graphClient.users().post(user);
Exemple 2 : créer un utilisateur ayant des identités de compte social et local
Créez un utilisateur, avec une identité de compte local comme nom de connexion, une adresse de messagerie comme connexion et avec une identité sociale. Cet exemple est généralement utilisé pour les scénarios de migration chez les locataires B2C.
Remarque
Pour les identités de compte local, l’expiration des mots de passe doit être désactivée. L’option forcer la modification du mot de passe à la prochaine connexion doit également être désactivée.
// Code snippets are only available for the latest version. Current version is 5.x
// Dependencies
using Microsoft.Graph.Models;
var requestBody = new User
{
DisplayName = "John Smith",
Identities = new List<ObjectIdentity>
{
new ObjectIdentity
{
SignInType = "userName",
Issuer = "contoso.com",
IssuerAssignedId = "johnsmith",
},
new ObjectIdentity
{
SignInType = "emailAddress",
Issuer = "contoso.com",
IssuerAssignedId = "jsmith@yahoo.com",
},
new ObjectIdentity
{
SignInType = "federated",
Issuer = "facebook.com",
IssuerAssignedId = "5eecb0cd",
},
},
PasswordProfile = new PasswordProfile
{
Password = "password-value",
ForceChangePasswordNextSignIn = false,
},
PasswordPolicies = "DisablePasswordExpiration",
};
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
var result = await graphClient.Users.PostAsync(requestBody);
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
User user = new User();
user.setDisplayName("John Smith");
LinkedList<ObjectIdentity> identities = new LinkedList<ObjectIdentity>();
ObjectIdentity objectIdentity = new ObjectIdentity();
objectIdentity.setSignInType("userName");
objectIdentity.setIssuer("contoso.com");
objectIdentity.setIssuerAssignedId("johnsmith");
identities.add(objectIdentity);
ObjectIdentity objectIdentity1 = new ObjectIdentity();
objectIdentity1.setSignInType("emailAddress");
objectIdentity1.setIssuer("contoso.com");
objectIdentity1.setIssuerAssignedId("jsmith@yahoo.com");
identities.add(objectIdentity1);
ObjectIdentity objectIdentity2 = new ObjectIdentity();
objectIdentity2.setSignInType("federated");
objectIdentity2.setIssuer("facebook.com");
objectIdentity2.setIssuerAssignedId("5eecb0cd");
identities.add(objectIdentity2);
user.setIdentities(identities);
PasswordProfile passwordProfile = new PasswordProfile();
passwordProfile.setPassword("password-value");
passwordProfile.setForceChangePasswordNextSignIn(false);
user.setPasswordProfile(passwordProfile);
user.setPasswordPolicies("DisablePasswordExpiration");
User result = graphClient.users().post(user);
Bientôt disponible : Tout au long de 2024, nous allons supprimer progressivement GitHub Issues comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultez https://aka.ms/ContentUserFeedback.