Skip to content

关于本页

本页介绍更夫所基于的开源内核 Keep 的通用能力。更夫在其上提供国内化增强:钉钉/企业微信/飞书通知、国产大模型接入、LDAP 认证与值班管理。部署与上手请看快速上手。

TIP

Keep 云:✅
Keep 企业本地部署:✅
Keep 开源:⛔️

Keep 支持通过 Azure 企业 ID(以前称为 Azure AD)进行企业认证,使组织能够使用其现有的 Microsoft 身份平台进行安全的访问管理。

何时使用 ​

  • Microsoft 环境: 如果您的组织使用 Microsoft 365 或 Azure 服务,Azure AD 集成提供无缝认证。
  • 企业 SSO: 利用 Azure AD 的单一登录功能进行统一访问管理。

设置说明(在 Azure AD 上) ​

创建 Azure AD 应用程序 ​

  1. 登录到 Azure 门户
  2. 导航到 Microsoft Entra ID > 应用注册 > 新注册
Azure AD App Registration
  1. 配置应用程序:
    • 名称:"Keep"

INFO

请注意,我们使用的是"注册要与 Microsoft Entra ID 集成的应用程序(您正在开发的应用程序)",因为您正在自行托管 Keep,需要直接控制认证流程和特定实例的权限 - 不同于云/托管版本,Keep 团队已经配置了集中式应用程序注册。

Azure AD App Registration
  1. 配置应用程序(继续)
  • 支持的账户类型:"单租户"

INFO

我们建议使用"单租户"以增强安全性,因为它限制只有您组织内的用户才能访问。虽然可以配置多租户,但允许多少 Azure AD 目录中的用户访问您的 Keep 实例,这可能会带来安全风险,除非您有特定的跨组织要求。

- 重定向 URI:"Web" + 您的重定向 URI

INFO

我们使用"Web"平台而不是"单页应用程序 (SPA)",因为 Keep 的后端使用客户端凭证/密钥处理认证流程,这比 SPA 使用的隐式流程更安全。这可以防止在浏览器中暴露令牌,并通过服务端令牌验证和刷新令牌处理提供更强的安全性。

TIP

对于 localhost,重定向将是 http://localhost:3000/api/auth/callback/microsoft-entra-id

对于生产环境,它应该是类似 http://your_keep_frontend_domain/api/auth/callback/microsoft-entra-id

Azure AD App Registration
  1. 最后,点击"注册"

配置认证 ​

创建应用程序后,让我们配置认证。

  1. 转到"应用注册" -> "所有应用程序"
Azure AD Authentication Configuration
  1. 点击您的应用程序 -> "添加证书或密钥"
Azure AD Authentication Configuration
  1. 点击"新客户端密钥"并为其命名
Azure AD Authentication Configuration
  1. 保留"值",我们很快会将其用作 KEEP_AZUREAD_CLIENT_SECRET
Azure AD Authentication Configuration

配置组 ​

Keep 将 Azure AD 组映射到具有两个默认组的角色:

  1. 管理员组(读 + 写)
  2. NOC 组(只读)

要创建这些组,请转到组 -> 所有组并创建两个组:

Azure AD Authentication Configuration

保留这些组的对象 ID 并将其用作 KEEP_AZUREAD_ADMIN_GROUP_ID 和 KEEP_AZUREAD_NOC_GROUP_ID。

配置组声明 ​

  1. 导航到 令牌配置
Azure AD Authentication Configuration
  1. 添加组声明:
    • 选择"安全组"和"分配给应用程序的组"
    • 选择"组 ID"作为声明值
Azure AD Authentication ConfigurationAzure AD Authentication Configuration

配置应用程序范围 ​

  1. 转到"公开 API"并点击"添加范围"
Azure AD Authentication Configuration
  1. 保留默认应用程序 ID 并点击"保存并继续"
Azure AD Authentication Configuration
  1. 添加"default"作为范围名称,同时给出显示名称和描述
Azure AD Authentication Configuration
  1. 最后,点击"添加范围"
Azure AD Authentication Configuration

设置说明(在 Keep 上) ​

配置 Azure AD 后,您应该有以下内容:

  1. Azure AD 租户 ID
  2. Azure AD 客户端 ID

如何获取:

Azure AD Authentication Configuration
  1. Azure AD 客户端密钥 请参阅配置认证。
  2. 管理员和 NOC(只读)的 Azure AD 组 ID 请参阅配置组。

配置 ​

前端 ​

环境变量描述必填默认值
AUTH_TYPE设置为 'AZUREAD' 以启用 Azure AD 认证是-
KEEP_AZUREAD_CLIENT_ID您的 Azure AD 应用程序(客户端)ID是-
KEEP_AZUREAD_CLIENT_SECRET您的客户端密钥是-
KEEP_AZUREAD_TENANT_ID您的 Azure AD 租户 ID是-
NEXTAUTH_URL您的 Keep 应用程序 URL是-
NEXTAUTH_SECRETNextAuth.js 的随机字符串是-

后端 ​

环境变量描述必填默认值
AUTH_TYPE设置为 'AZUREAD' 以启用 Azure AD 认证是-
KEEP_AZUREAD_TENANT_ID您的 Azure AD 租户 ID是-
KEEP_AZUREAD_CLIENT_ID您的 Azure AD 应用程序(客户端)ID是-
KEEP_AZUREAD_ADMIN_GROUP_IDKeep 管理员组(读写)的组 ID是-
KEEP_AZUREAD_NOC_GROUP_IDKeep NOC(只读)的组 ID是-

功能和限制 ​

支持的功能 ​

  • 单一登录 (SSO)
  • 通过 Azure AD 组进行基于角色的访问控制
  • 多因素身份验证(在 Azure AD 中配置时)

限制 ​

请参阅 概述

基于 MIT 协议开源的 Keep · 由更夫社区维护