跳到主内容

Azure AD 同步器

Azure AD 同步器 通过 Microsoft Graph API 将用户从 Azure Active Directory(Microsoft Entra ID)拉取到 Casdoor,并保持目录同步。

先决条件

Azure门户中注册一个应用程序,并授予它以下权限。

步骤1:注册应用程序

导航至Azure门户并注册一个新的应用程序:

  1. 转到Azure Active Directory应用程序注册新建注册
  2. 为您的应用程序输入名称
  3. 选择适当的账户类型(通常为“仅此组织目录中的账户”)
  4. 单击注册

步骤2:创建客户端密钥

注册完成后,创建客户端密钥:

  1. 在您的应用程序中,转到证书与密钥
  2. 单击新建客户端密钥
  3. 添加描述并选择到期期限
  4. 单击添加并立即复制密钥值(之后将不再显示)

第3步:授予API权限

配置所需的Microsoft Graph API权限:

  1. 前往API权限添加权限
  2. 选择Microsoft Graph应用程序权限
  3. 添加“User.Read.All”权限
  4. 单击以获取您组织的管理员同意
提示

“User.Read.All”权限允许同步器读取您Azure AD租户中的所有用户简档。

配置

在Casdoor中创建Azure AD同步器:

  1. 导航至同步器选项卡
  2. 单击添加以创建新的同步器
  3. 请填写以下必填字段:
字段描述
组织将导入用户的Casdoor组织
名称此同步器的唯一标识符
类型选择“Azure AD”
租户ID您的 Azure AD 租户 ID(可在 Azure 门户 → Azure Active Directory → 概览中找到)
客户端ID您的应用注册中的应用程序(客户端)ID
客户端密钥您之前创建的客户端密钥值

其他与数据库相关的字段(数据库类型、端口、数据库、表)不用于 Azure AD 同步器,可留空。

字段映射

同步器会自动将 Azure AD 用户属性映射到 Casdoor 用户字段:

字段Casdoor字段描述
IDId用户的唯一标识符
userPrincipalName名称用户主体名称
displayNameDisplayName用户显示名称
givenNameFirstName
姓氏姓氏
邮箱电子邮件电子邮件地址
mobilePhone电话手机号码
职位职称工作职务
办公地点地点办公地点
preferredLanguage语言首选语言
accountEnabled是否禁止账户状态(取反)
信息

当映射到IsForbidden时,accountEnabled字段会被取反。 当用户在Azure AD中被禁用(accountEnabled: false)时,他们将在Casdoor中被标记为禁止(IsForbidden: true)。

运行同步器

配置完成后:

  1. 点击测试连接以验证您的凭据和权限
  2. 通过切换已启用来启用同步器
  3. 点击同步以触发即时同步
  4. 同步器会自动从您的 Azure AD 租户中获取所有用户

同步器会自动处理分页,无论用户总数是多少,都会检索所有用户。