使用Google应用程序配置API将用户添加到组织单位和组
本文关键字:单位 添加 用户 应用程序 Google 配置 API 使用 | 更新日期: 2023-09-27 18:26:38
我已经在.Net中完成了使用google Apps Provisioning API创建google帐户的编码。我成功地创建了谷歌帐户,但我无法将用户添加到特定的组织单位和组。我已经实现了这样的账户创建目标:
//Creating Google Account
AppsService appService = new AppsService("Mydomain", "AdminUsername", "AdminPassword");
try
{
var account = appService.CreateUser(googleEmail, FirstName.Text, LastName.Text, password);
}
catch (Exception ex)
{
ResultsLabel.Text += "<br />Can't create this Google Account";
}
添加用户后,它会在谷歌的主域"用户"下创建。但我必须将该用户放入他们所属的组织单元,在我的情况下,我需要将用户放入"工作人员"组织单元。我不确定applicationName是什么意思,我只是在使用项目解决方案名称,还是在这里没有使用正确的名称?applicationinName是什么意思?我应该使用什么?在下面的代码中,我使用CustomerID作为"GoogleCustomerId",这是我从谷歌为我们的域获得的。我已经完成了这样的编码,这对将用户添加到组织单元不起作用:
//Adding User to Organization Unit
OrganizationService service = new OrganizationService("mydomain", "applicationName");
service.setUserCredentials("AdminUsername", "AdminPassword");
service.UpdateOrganizationUser("GoogleCustomerId", Email.Text, "Staff", "Users");
我用上面的代码将用户添加到组织单元:中,得到了这个异常
Google.GData.Client.GDataRequestException was unhandled by user code
HResult=-2146233088
Message=Execution of request failed: https://apps-apis.google.com/a/feeds/orguser/2.0/C090ll5hh/Test@domain.com
Source=Google.GData.Client
ResponseString=<?xml version="1.0" encoding="UTF-8"?>
<AppsForYourDomainErrors>
<error errorCode="1801" invalidInput="" reason="InvalidValue" />
</AppsForYourDomainErrors>
这是我将用户添加到组的代码,但它也不起作用,我需要将用户添加staff@mydomain.com组:
//Adding User to Group
service.Groups.AddMemberToGroup("staff@mydomain.com", username);
你知道这个吗?
感谢
经过进一步的研究和对代码的更改,添加到组织单元和组现在正在工作。我必须为"StringoldOrgUnitPath"加上"/",因为它是最初添加用户的顶级组织单元。
//将用户添加到组织单元
OrganizationService service = new OrganizationService("mydomain", "applicationName");
service.setUserCredentials("AdminUsername", "AdminPassword");
service.UpdateOrganizationUser("GoogleCustomerId", Email.Text, "Staff", "/");
为了使添加到小组工作,我必须在代码中进行此更改。我们不应该将@domain.com与组名一起使用,并且切换电子邮件id和组名的位置是有效的。
//Adding User to Group
service.Groups.AddMemberToGroup(Email.Text, "Staff");
感谢
关于Google,此API将于2015年4月底停止工作。
自去年以来,我在这个API上遇到了一些问题,我决定看看"新的"API:https://developers.google.com/admin-sdk/directory/
即使你现在解决了这个问题,如果你希望你的应用程序在未来顺利运行,我建议你检查新的API。
祝你好运!