G Suite 身份同步项目教程
1、项目介绍
G Suite 身份同步项目(G Suite Identity Sync)是一个开源工具,旨在将 G Suite 用户和组同步到 LDAP 目录中。该项目允许用户将 G Suite 中的用户和组信息同步到支持 LDAP 的服务中,从而实现统一的身份验证和授权管理。通过这种方式,用户可以在使用支持 LDAP 的服务(如 Gitlab、Sonatype Nexus、Artifactory、Jira、Freeradius 等)时,仍然使用 G Suite 进行用户和组管理。
该项目的主要功能包括:
- 同步 G Suite 账户或常规 Gmail 账户到 LDAP。
- 同步 G Suite 组到 LDAP 组。
- 支持外部用户(任何 Google 账户)。
- 同步 LDAP 密码到 G Suite(实现单一密码管理)。
- 支持推送通知。
- 同步名称更改到 LDAP。
- 支持选择用户名从 G Suite 别名。
- 支持计划同步器。
2、项目快速启动
环境准备
- Java 运行环境
- G Suite 账户
- LDAP 服务器
下载项目
git clone https://github.com/hlavki/g-suite-identity-sync.git
cd g-suite-identity-sync
配置文件
在项目根目录下创建 config.properties
文件,并填写以下内容:
gsuite.domain=your-domain.com
gsuite.admin.email=your-admin-email@your-domain.com
gsuite.service.account.file=path/to/your/service-account-file.json
ldap.url=ldap://your-ldap-server:389
ldap.base.dn=dc=your-domain,dc=com
ldap.bind.dn=cn=admin,dc=your-domain,dc=com
ldap.bind.password=your-ldap-password
运行项目
./gradlew run
3、应用案例和最佳实践
应用案例
- Gitlab 身份验证:通过将 G Suite 用户同步到 LDAP,Gitlab 可以使用 LDAP 进行用户身份验证,同时用户管理仍然在 G Suite 中进行。
- Jira 授权管理:Jira 支持 LDAP 授权,通过同步 G Suite 组到 LDAP,可以实现 Jira 中的组权限管理。
最佳实践
- 定期同步:建议设置定期同步任务,以确保 LDAP 中的用户和组信息与 G Suite 保持一致。
- 安全配置:确保配置文件和敏感信息(如 LDAP 密码)的安全存储,避免泄露。
4、典型生态项目
- Gitlab:支持 LDAP 身份验证,适合与 G Suite 身份同步项目结合使用。
- Jira:支持 LDAP 授权,可以通过同步 G Suite 组实现权限管理。
- Sonatype Nexus:支持 LDAP 身份验证和授权,适合与 G Suite 身份同步项目结合使用。
- Artifactory:支持 LDAP 身份验证和授权,适合与 G Suite 身份同步项目结合使用。
通过以上步骤,您可以快速启动并使用 G Suite 身份同步项目,实现 G Suite 与 LDAP 的同步,从而简化身份验证和授权管理。