Erstellen Sie einen neuen Benutzer.
Der Anforderungstext enthält den zu erstellenden Benutzer. Sie müssen für den Benutzer mindestens die erforderlichen Eigenschaften angeben. Optional können Sie weitere schreibbare Eigenschaften festlegen.
Hinweis
Verwenden Sie zum Erstellen externer Benutzer die Einladungs-API.
Eine der nachfolgenden Berechtigungen ist erforderlich, um diese API aufrufen zu können. Weitere Informationen, unter anderem zur Auswahl von Berechtigungen, finden Sie unter Berechtigungen.
Berechtigungstyp
Berechtigungen (von der Berechtigung mit den wenigsten Rechten zu der mit den meisten Rechten)
Geben Sie im Anforderungstext eine JSON-Darstellung des user-Objekts an.
In der folgenden Tabelle sind die Eigenschaften aufgeführt, die zum Erstellen eines Benutzers erforderlich sind. Wenn Sie für den Benutzer, den Sie erstellen, eine identities-Eigenschaft einschließen, sind nicht alle aufgeführten Eigenschaften erforderlich. Bei einer sozialen Identität ist keine der Eigenschaften erforderlich.
Parameter
Typ
Beschreibung
accountEnabled
Boolesch
true, wenn das Konto aktiviert ist; andernfalls false.
displayName
String
Der Name des Benutzers, der im Adressbuch angezeigt wird.
onPremisesImmutableId
String
Nur beim Erstellen eines neuen Benutzerkontos erforderlich, wenn Sie eine Verbunddomäne für die UserPrincipalName-Eigenschaft (UPN) des Benutzers verwenden.
Der Benutzerprinzipalname (someuser@contoso.com). Es ist ein Anmeldename für den Benutzers im Internetformat, der auf dem Internetstandard RFC 822 basiert. Gemäß der Konvention sollte er dem E-Mail-Namen des Benutzers zugeordnet sein. Das allgemeine Format lautet „alias@domäne“, wobei „domäne“ in der Sammlung der verifizierten Domänen des Mandanten vorhanden sein muss. Auf die verifizierten Domänen für den Mandanten kann über die verifiedDomains -Eigenschaft von organization zugegriffen werden. HINWEIS: Diese Eigenschaft darf keine Akzentuierungszeichen enthalten. Nur die folgenden Zeichen sind zulässig: A - Z, a - z, 0 - 9, ' . - _ ! # ^ ~. Eine vollständige Liste der zulässigen Zeichen finden Sie unter Richtlinien für Benutzernamen.
Da die user-Ressource Erweiterungen unterstützt, können Sie den POST-Vorgang verwenden und während der Erstellung des Benutzers benutzerdefinierte Eigenschaften mit Ihren eigenen Daten hinzufügen.
Hinweis
Verbundbenutzer, die über diese API erstellt wurden, müssen sich standardmäßig alle 12 Stunden anmelden. Informationen dazu, wie Sie dies ändern können, finden Sie unter Ausnahmen für tokengültigkeitsdauern.
Antwort
Wenn die Methode erfolgreich verläuft, werden der Antwortcode 201 Created und ein user-Objekt im Antworttext zurückgegeben.
// 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);
# Code snippets are only available for the latest version. Current version is 1.x
from msgraph import GraphServiceClient
from msgraph.generated.models.user import User
from msgraph.generated.models.password_profile import PasswordProfile
# To initialize your graph_client, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
request_body = User(
account_enabled = True,
display_name = "Adele Vance",
mail_nickname = "AdeleV",
user_principal_name = "AdeleV@contoso.com",
password_profile = PasswordProfile(
force_change_password_next_sign_in = True,
password = "xWwvJ]6NMw+bWH-d",
),
)
result = await graph_client.users.post(request_body)
Beispiel 2: Erstellen eines Benutzers mit einer sozialen und einer lokalen Kontoidentität
Erstellen Sie einen neuen Benutzer mit einer lokalen Kontoidentität mit einem Anmeldenamen, einer E-Mail-Adresse für die Anmeldung und einer sozialen Identität. Dieses Beispiel wird in der Regel für Migrationsszenarios in B2C-Mandanten verwendet.
Hinweis
Bei lokalen Kontoidentitäten müssen das Ablaufen des Kennworts und das Erzwingen der Kennwortänderung bei der nächsten Anmeldung deaktiviert werden.
// 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);