Назад | Перейти на главную страницу

Как вывести список пользователей с ролью cluster-admin в OpenShift?

Я могу добавлять пользователей в роль кластера «администратор кластера» с помощью:

oc adm policy add-cluster-role-to-user cluster-admin <user>

Но как мне вывести список всех пользователей с ролью администратора кластера?

Среда: OpenShift 3.x

Нашел сам:

Это в RoleBinding[cluster-admins]: раздел:

oc describe clusterPolicyBindings :default

С участием jq вы можете получить список пользователей одной командой:

oc get --all-namespaces --output json clusterPolicyBindings | jq '.items[].roleBindings[] | select(.name=="cluster-admins") | .roleBinding.userNames'

Для OpenShift 3.7 и новее:

oc get clusterrolebindings -o json | jq '.items[] | select(.metadata.name=="cluster-admins") | .userNames'

в openshift 3.9 администраторы кластера находятся в разных словарях (cluster-admin-0, cluster-admin-1 и т. д.). Чтобы перечислить их:

oc get clusterrolebinding -o json | jq '.items[] | select(.metadata.name |  startswith("cluster-admin")) | .userNames'

С моей стороны команда для Openshift 3.7+ предназначена для администраторов кластера:

oc get --all-namespaces --output json clusterPolicyBindings | jq '.items[].roleBindings[] | select(.name=="cluster-admin") | .roleBinding.userNames'

Для роли кластера-читателя:

oc get clusterrolebindings -o json | jq '.items[] | select(.metadata.name=="cluster-readers") | .userNames'