"User "系统在 Openshift3 中“无法在集群范围内获取安全上下文约束”

"User "system" cannot get securitycontextconstraints at the cluster scope" in Openshift3

如果我尝试在 Windows10 Pro 和 Hyper-V 中向本地 OpenShift 一体化集群 运行 添加安全约束,openshift 客户端会收到以下消息:

c:\openshift\oc.exe adm policy add-scc-to-user anyuid -z default
Error from server (Forbidden): User "system" cannot get securitycontextconstraints at the cluster scope"

Openshift 实例是由 docker 台机器按照以下步骤创建的:

1) docker-machine create -d "hyperv" --engine-insecure-registry 172.30.0.0/16 --hyperv-virtual-switch "openshift" openshift 
2) oc cluster up --docker-machine=openshift

是否有任何配置允许系统用户访问 securitycontextconstraints?

尝试 运行宁:

docker exec origin oc adm policy add-scc-to-user anyuid -z default -n projectname

这将 运行 oc 在 OpenShift 集群内部,它应该 运行 作为管理员。

我也建议 运行ning:

docker exec origin oc adm policy add-cluster-role-to-group sudoer system:authenticated yourusername

这样你以后就可以 运行 管理命令 运行ning:

oc adm policy add-scc-to-user anyuid -z default -n projectname --as system:admin

即使用--as system:admin冒充管理员

您可能需要考虑使用 Minishift 而不是 oc cluster up,因为它从内存中默认赋予 developer 用户 sudoer 角色,因此可以使用 --as system:admin 来执行管理员命令。

在发出具有管理员权限的日志记录命令之前,我无法应用配置命令

oc login -u system:admin -n default 

之后是著名的 upper,(对于我没有 "docker prefix" 的情况),在带有 openshift 的命令行上 - "oc" 命令行实用程序,有效

oc adm policy add-scc-to-user anyuid -z default -n projectname