如何通过PHP调用Google Workspace API创建新用户?
PHP实现Google Workspace用户创建
基于你已有的代码,可以直接使用Google Admin SDK的PHP客户端库完成用户创建,无需手动调用REST API。以下是具体实现步骤:
1. 确认权限范围
你当前设置的https://www.googleapis.com/auth/admin.directory.user权限已经包含创建用户的权限,无需额外修改。
2. 构造用户资源对象
创建用户需要传入包含必填字段的用户对象,核心必填项包括:
primaryEmail:用户的Workspace邮箱地址name.givenName:用户名字name.familyName:用户姓氏password:初始密码(需符合Workspace密码规则)
3. 调用插入方法
使用Directory服务的users->insert()方法完成用户创建。
完整代码示例
putenv("GOOGLE_APPLICATION_CREDENTIALS=credentials.json"); $client = new Google_Client(); $client->useApplicationDefaultCredentials(); $client->setSubject($workspace_admin_email); $client->setApplicationName("Quickstart"); $client->setScopes(["https://www.googleapis.com/auth/admin.directory.user"]); $service = new Google_Service_Directory($client); // 确保已正确引入该类 // 构造新用户对象 $user = new Google_Service_Directory_User(); // 设置用户姓名信息 $name = new Google_Service_Directory_UserName(); $name->setGivenName("张三"); $name->setFamilyName("张"); $user->setName($name); // 设置邮箱和初始密码 $user->setPrimaryEmail("zhangsan@your-domain.com"); $user->setPassword("StrongPass123!"); // 需符合Workspace密码复杂度要求 // 可选:强制用户下次登录修改密码 $user->setChangePasswordAtNextLogin(true); // 执行用户创建操作 try { $createdUser = $service->users->insert($user); echo "用户创建成功,用户ID:" . $createdUser->getId(); } catch (Exception $e) { echo "创建用户失败:" . $e->getMessage(); }
注意事项
- 确保你的服务账号已被授予Workspace超级管理员权限,或拥有创建用户的特定权限
- 密码必须满足Google Workspace的密码策略(如长度、复杂度要求)
- 如果遇到权限错误,检查
setSubject参数是否为有效的Workspace管理员邮箱
内容的提问来源于stack exchange,提问作者Manisha
相关产品推荐
相关产品推荐

