使用 c#.net 代码在 Office 365 中动态创建用户帐户
create user accounts in office 365 using c#.net code dynamically
我想要一个 c#.net 中的示例应用程序,它可以使用 Microsoft API 在 Office 365 中创建用户。
我希望在代码中完成,而不是使用 Powershell。
您可以使用 Microsoft Graph API - Create User:
在 Azure AD 上注册本地客户端应用程序,分配 "Microsoft Graph" > "Read and Write Directory Data" 权限。
string authority = "https://login.windows.net/yourdomain.onmicrosoft.com";
string clientId = "{app_client_id}";
Uri redirectUri = new Uri("http://localhost");
string resourceUrl = "https://graph.microsoft.com";
HttpClient client = new HttpClient();
AuthenticationContext authenticationContext = new AuthenticationContext(authority, false);
AuthenticationResult authenticationResult = authenticationContext.AcquireToken(resourceUrl,
clientId, redirectUri, PromptBehavior.Always);
client.DefaultRequestHeaders.Add("Authorization", "Bearer " + authenticationResult.AccessToken);
string content = @"{
'accountEnabled': true,
'displayName': 'testuser',
'mailNickname': 'test',
'passwordProfile': {
'forceChangePasswordNextSignIn': true,
'password': 'pass@wd12345'
},
'userPrincipalName': 'testuser@yourdomain.onmicrosoft.com'
}";
var httpContent = new StringContent(content, Encoding.GetEncoding("utf-8"), "application/json");
var response = client.PostAsync("https://graph.microsoft.com/v1.0/users", httpContent).Result;
Console.WriteLine(response.Content.ReadAsStringAsync().Result);
我想要一个 c#.net 中的示例应用程序,它可以使用 Microsoft API 在 Office 365 中创建用户。
我希望在代码中完成,而不是使用 Powershell。
您可以使用 Microsoft Graph API - Create User:
在 Azure AD 上注册本地客户端应用程序,分配 "Microsoft Graph" > "Read and Write Directory Data" 权限。
string authority = "https://login.windows.net/yourdomain.onmicrosoft.com";
string clientId = "{app_client_id}";
Uri redirectUri = new Uri("http://localhost");
string resourceUrl = "https://graph.microsoft.com";
HttpClient client = new HttpClient();
AuthenticationContext authenticationContext = new AuthenticationContext(authority, false);
AuthenticationResult authenticationResult = authenticationContext.AcquireToken(resourceUrl,
clientId, redirectUri, PromptBehavior.Always);
client.DefaultRequestHeaders.Add("Authorization", "Bearer " + authenticationResult.AccessToken);
string content = @"{
'accountEnabled': true,
'displayName': 'testuser',
'mailNickname': 'test',
'passwordProfile': {
'forceChangePasswordNextSignIn': true,
'password': 'pass@wd12345'
},
'userPrincipalName': 'testuser@yourdomain.onmicrosoft.com'
}";
var httpContent = new StringContent(content, Encoding.GetEncoding("utf-8"), "application/json");
var response = client.PostAsync("https://graph.microsoft.com/v1.0/users", httpContent).Result;
Console.WriteLine(response.Content.ReadAsStringAsync().Result);