Я настроил opendistro_security для OpenID. Когда я пытаюсь аутентифицировать пользователя, это терпит неудачу. Предположительно потому, что у этого пользователя нет разрешений. Как дать разрешения пользователю openid? Кажется, я не могу найти очевидного способа сделать это с помощью internal_user.yml.
Добавить пользователей OpenID в Open Distro Kibana
Ответы (1)
Я решил это. Для потомков вот что нужно сделать в дополнение к настройкам openis в файле Kibana.yml.
1: В файле config.yml на каждом из моих узлов Elasticsearch мне нужно было добавить следующее:
authc:
openid_auth_domain:
http_enabled: true
transport_enabled: true
order: 0
http_authenticator:
type: openid
challenge: false
config:
subject_key: email
roles_key: roles
openid_connect_url: https://accounts.google.com/.well-known/openid-configuration
authentication_backend:
type: noop
Поскольку я использую Google в качестве поставщика удостоверений, мне нужно было убедиться, что мой subject_key был "email"
2: необходимо для запуска сценария конфигурации безопасности на каждом узле:
docker exec -it elasticsearch-node1 /usr/share/elasticsearch/plugins/opendistro_security/tools/securityadmin.sh -cacert /usr/share/elasticsearch/config/root-ca.pem -cert /usr/share/elasticsearch/config/kirk.pem -key /usr/share/elasticsearch/config/kirk-key.pem -cd /usr/share/elasticsearch/plugins/opendistro_security/securityconfig/ -icl && docker exec -it elasticsearch-node2 /usr/share/elasticsearch/plugins/opendistro_security/tools/securityadmin.sh -cacert /usr/share/elasticsearch/config/root-ca.pem -cert /usr/share/elasticsearch/config/kirk.pem -key /usr/share/elasticsearch/config/kirk-key.pem -cd /usr/share/elasticsearch/plugins/opendistro_security/securityconfig/ -icl
3: Мне нужно было настроить пользователей, которым я хочу иметь доступ администратора к роли:
all_access:
reserved: false
backend_roles:
- "admin"
users:
- "[email protected]"
description: "Maps an openid user to all_access"
Теперь я могу назначать других пользователей из Kibana