配置OKD 使用github.com OAuth2.0登陆
1. 前往github增加OAuth App
- 获取到Client ID,Client Secret
https://github.com/organizations/goistop/settings/applications/new
2. 修改master-config.yaml
oauthConfig:
assetPublicURL: https://master.okd.goxx.top/console/
grantConfig:
method: auto
identityProviders:
# -------- add start---------
- name: github
challenge: false
login: true
mappingMethod: claim # lookup, generate, add
provider:
apiVersion: v1
kind: GitHubIdentityProvider
#ca: ... # github.com 无需配置
clientID: 00b9b0bf1fc2a21b13386
clientSecret: 99613a0febb23287492aacedeaaa8f5c52a4c0b70
#hostname: ... # github.com 无需配置
organizations: # 允许登陆的组织
- goistop
#teams: # 允许登陆的组
#- xx
# ---------- add end--------------
- challenge: true
login: true
mappingMethod: claim
name: htpasswd_auth
provider:
apiVersion: v1
file: /etc/origin/master/htpasswd
kind: HTPasswdPasswordIdentityProvider
mappingMethod 说明:
-
claim
用户不存在将会自动创建,之后可以去分配权限。 -
lookup
查找用户是否存在,不存在则登陆失败。 -
generate
重新生成一个用户并添加到okd users中。 -
add
用户如果已经存在,增加一个github登陆等映射标识。
4. 重启OKD控制服务
[okd@master-1 ~]$ sudo /usr/local/bin/master-restart api
2
[okd@master-1 ~]$ sudo /usr/local/bin/master-restart controllers
2
- 测试发现,多个master时,需要修改每个master配置文件,并依此重启okd控制服务。