Open zhangle-dev opened 3 years ago
认证通过 patch 下的 auth.yaml 文件实现的:
apiVersion: v1
data:
config.yaml: |
issuer: http://dex.auth.svc.cluster.local:5556/dex
storage:
type: kubernetes
config:
inCluster: true
web:
http: 0.0.0.0:5556
logger:
level: "debug"
format: text
oauth2:
skipApprovalScreen: true
enablePasswordDB: true
staticPasswords:
- email: "admin@example.com"
# hash string is "password"
hash: "$2y$12$X.oNHMsIfRSq35eRfiTYV.dPIYlWyPDRRc1.JVp0f3c.YqqJNW4uK"
# https://github.com/dexidp/dex/pull/1601/commits
# FIXME: Use hashFromEnv instead
username: "admin"
userID: "08a8684b-db88-4b73-90a9-3cd1661f5466"
staticClients:
# https://github.com/dexidp/dex/pull/1664
- idEnv: OIDC_CLIENT_ID
redirectURIs: ["/login/oidc"]
name: 'Dex Login Application'
secretEnv: OIDC_CLIENT_SECRET
kind: ConfigMap
metadata:
name: dex
namespace: auth
---
apiVersion: v1
data:
profile-name: kubeflow-user-example-com
user: admin@example.com
kind: ConfigMap
metadata:
name: default-install-config-9h2h2b6hbk
---
apiVersion: kubeflow.org/v1beta1
kind: Profile
metadata:
name: kubeflow-user-example-com
spec:
owner:
kind: User
name: admin@example.com
@zhangle-dev 你可以delete 掉 auth 命名空间下的 dex 名字的pod,让他重启看看,有可能是配置没重载
重启了这个pod没有成功,我把服务器重启了又可以了,谢谢哈
这个问题我也遇到了,额外执行一下
kubectl apply -f patch/auth.yaml
@shikanon 这个密码是用什么hash的,我用官方文档的方法hash出来的字符串跟您的这个不一样
@Planck0591 你用的是不是patch下的,patch 下的密码就是 passwd
:
https://github.com/shikanon/kubeflow-manifests/blob/b86bb177087f11a78ee95e86bf91e4a2f83c62d0/patch/auth.yaml#L19
@shikanon 官方的方法:python3 -c 'from passlib.hash import bcrypt; import getpass; print(bcrypt.using(rounds=12, ident="2y").hash(getpass.getpass()))',生成的hash是:$2y$12$XF6J2VNShmy07hHO6AtAo.QDLfXjSbNpgVF.x0MSeOzvOI0EiBUV2,patch里面的hash串是:$2y$12$X.oNHMsIfRSq35eRfiTYV.dPIYlWyPDRRc1.JVp0f3c.YqqJNW4uK,对不上。当然我用官方的密码1234生成的hash跟官方也对不上,所以想请教您一下,你是怎么生成hash字符串的
官方的方法是对的,看来生成字符串不一致并没有什么,现在已经可以了,非常感谢
我按照步骤安装完成之后,访问30000端口到登录页面,用
admin@example.com/password
登录一直提示Invalid Email Address and password.
,不知道为什么。 还有个问题,我之前通过官网的步骤安装过,好像没有登录页面,这个认证功能是哪个组件实现的,在哪里可以关掉。 希望能够解答,谢谢