---
title: "配置说明"
date: 0001-01-01
summary: "本页聚焦 安全模块的配置与身份验证流程，是 Reference 性质的说明：
具体如何选型身份源、如何设计整体安全架构，请参考 Best Practices 中的安全章节。
相关指南（先读这些） #    安全与多租户最佳实践  身份验证流程 #  了解身份验证流程是开始配置安全模块的好方法。
  为了识别想要访问集群的用户，安全模块需要用户的凭据。
这些凭据因您配置模块的方式而异。例如，如果您使用基本身份验证，则凭据是用户名和密码。 如果您使用 JSON Web 令牌，则凭据存储在令牌本身中。 如果您使用 TLS 证书，则凭据是证书的专有名称 (DN)。
  安全模块根据后端验证用户凭证：内部用户数据库、轻量级目录访问协议 (LDAP)、Active Directory。
该模块支持在 config/security/config.yml 中链接后端。如果存在多个后端，则该模块会尝试依次对每个后端进行用户身份验证，直到一个成功为止。
  后端验证用户凭证后，模块收集所有后端角色。这些角色可以是内部用户数据库中的任意字符串。
  用户通过身份验证并检索到任何后端角色后，安全模块使用角色映射为用户分配安全角色。
如果角色映射不包括用户（或用户的后端角色），则用户已成功通过身份验证，但没有权限。
  用户现在可以执行由映射的安全角色定义的操作。
  禁用安全功能 #  Easysearch 默认开启了安全功能，尽管强烈不建议关闭 Easysearch 的安全功能，不过如果确实有必要临时禁用权限功能， 可以通过修改 easysearch.yml 的配置实现：
security.enabled: false "
---


本页聚焦 **安全模块的配置与身份验证流程**，是 Reference 性质的说明：  
具体如何选型身份源、如何设计整体安全架构，请参考 Best Practices 中的安全章节。

## 相关指南（先读这些）

- [安全与多租户最佳实践]({{< relref "/docs/best-practices/security-and-multi-tenancy.md" >}})

# 身份验证流程

了解身份验证流程是开始配置安全模块的好方法。

1. 为了识别想要访问集群的用户，安全模块需要用户的凭据。

   这些凭据因您配置模块的方式而异。例如，如果您使用基本身份验证，则凭据是用户名和密码。
   如果您使用 JSON Web 令牌，则凭据存储在令牌本身中。
   如果您使用 TLS 证书，则凭据是证书的专有名称 (DN)。

2. 安全模块根据后端验证用户凭证：内部用户数据库、轻量级目录访问协议 (LDAP)、Active Directory。

   该模块支持在 `config/security/config.yml` 中链接后端。如果存在多个后端，则该模块会尝试依次对每个后端进行用户身份验证，直到一个成功为止。

3. 后端验证用户凭证后，模块收集所有后端角色。这些角色可以是内部用户数据库中的任意字符串。

4. 用户通过身份验证并检索到任何后端角色后，安全模块使用角色映射为用户分配安全角色。

   如果角色映射不包括用户（或用户的后端角色），则用户已成功通过身份验证，但没有权限。

5. 用户现在可以执行由映射的安全角色定义的操作。

# 禁用安全功能

Easysearch 默认开启了安全功能，尽管强烈不建议关闭 Easysearch 的安全功能，不过如果确实有必要临时禁用权限功能，
可以通过修改 `easysearch.yml` 的配置实现：

```yml
security.enabled: false
```
