Search Guard1.2 映射到Search Guard角色
本文内容
-
角色映射概念
-
概述:用户的后端角色
-
配置角色映射
-
更新配置
在1.0和1.1中我们已经创建了Search Guard用户和角色。
在下一步操作中,我们需要去连接Search Guard角色的用户,这就是角色映射发挥作用的地方。为了映射Search Guard角色到用户,你可以使用
-
这个用户名称
-
这个用户的后端角色
-
请求来源的主机名和IP(高级)
这最灵活的方式是去使用后端角色。依赖于你使用的身份验证方法,后端角色可以是:
-
LDAP/Active Directory groups
-
JWT claims
-
SAML assertions
-
Internal user datatbase backend roles
1. 概述:用户的后端角色
在1.0中我们配置了三个用户。他们中的两个拥有后端角色hr_department
,另外一个拥有后端角色devops
。
jdoe:
hash: $2y$12$AwwN1fn0HDEw/LBCwWU0y.Ys6PoKBL5pR.WTYAIV92ld7tA8kozqa
backend_roles:
- hr_department
psmith:
hash: $2y$12$YOVZhJ.gbZOAoGyd9YGNMuw7rWYTfB73n8OGBLtsrihMkW5rg5D1G
backend_roles:
- hr_department
cmaddock:
hash: $2y$12$3UFikPXIZLoHcsDGD0hyqOvxjytdXeRkefIF1M58jA5oueSDKthzu
backend_roles:
- devops
我们想去分配
-
拥有后端角色
hr_department
的所有用户对应Search Guard的sg_human_resources
角色 -
拥有后端角色
devops
的所有用户,对应Search Guard 的sg_devops
角色
2. 配置角色映射
在sg_roles_mappings.yml
文件中配置用户和Search Guard角色的映射,如下是结构:
<Search Guard role name>:
users:
- <username>
- ...
backend_roles:
- <rolename>
- ...
hosts:
- <hostname>
- ...
在sg_internal_uses.yml
中我们可以配置用户的后端角色,并且定义如下角色映射:
sg_human_resources:
backend_roles:
- hr_department
sg_devops:
backend_roles:
- devops
对于用户jdoe和psmith在Search Guard角色sg_human_resources
是有效的,由于他们拥有户端角色hr_department
。
且用户cmaddock在Search Guard 角色sg_devops
也有效,由于这个用户拥有后端角色devops
。
3. 更新配置
这个我们专门拿一节来说更新。这里给个官网链接
https://docs.search-guard.com/latest/sgadmin