#chiroito ’s blog

Java を中心とした趣味の技術について

Htpasswd ファイルを使って OpenShift にユーザを追加する

最初にユーザを作る時はパスワードファイル(passwordfile)も同時に作成します。

$ htpasswd -c -B -b passwordfile user1 MyPassword!

2人目移行のユーザを作る時はパスワードファイルの作成は不要なので、-cオプションを外します。

$ htpasswd -B -b passwordfile user2 MyPassword!

oauth.yaml

apiVersion: config.openshift.io/v1
kind: OAuth
metadata:
  name: cluster
spec:
  identityProviders:
  - name: Local Password
    mappingMethod: claim
    type: HTPasswd
    htpasswd:
      fileData:
        name: htpasswd

secretを作成し、アイデンティティプロバイダをクラスタへ追加することでユーザの認証が行える様にします。

$ oc create secret generic htpasswd --from-file=passwordfile -n openshift-config
$ oc apply -f oauth.yaml

OpenShift にユーザが作られるには最初にログインしたタイミングのようです。試しにログインしてみましょう

$ oc login -u user1 -p MyPassword!
$ oc whoami
user1
$ oc login -u user2 -p MyPassword!
$ oc whoami
user2

ユーザを確認してみます

$ oc get users
NAME    UID                                    FULL NAME   IDENTITIES
user1   567540df-306a-4e0b-9b12-4f34c5a906c5               Local Password:user1
user2   1cfb4f52-f1b2-48f0-adc3-9096006c60bf               Local Password:user2

user1 に管理者権限を付与してみます。

oc adm policy add-role-to-user cluster-admin user1

参考情報