|
この文書は自動機械翻訳技術を使用して翻訳されています。 正確な翻訳を提供するように努めておりますが、翻訳された内容の完全性、正確性、信頼性については一切保証いたしません。 相違がある場合は、元の英語版 英語 が優先され、正式なテキストとなります。 |
トークン
|
Deprecation of v3 API tokens
Rancher v2.13 introduced a new token resource in the Starting with Rancher v2.14.1:
|
トークンリソース
Rancherには、Rancherとの認証に使用するトークンを生成するための命令型APIリソース`tokens.ext.cattle.io`があります。
kubectl api-resources --api-group=ext.cattle.io
トークンリソースのフィールドと構造の説明を取得するには、次のコマンドを実行してください:
kubectl explain tokens.ext.cattle.io
トークンの作成
|
トークンの値は`status.value`フィールドに一度だけ返されます。 |
有効でアクティブなRancherユーザーのみがトークンを作成できます。そうでない場合、トークンを作成しようとするとエラーが表示されます(Error from server (Forbidden)…)。
kubectl create -o jsonpath='{.status.value}' -f -<<EOF
apiVersion: ext.cattle.io/v1
kind: Token
EOF
Error from server (Forbidden): error when creating "STDIN": tokens.ext.cattle.io is forbidden: user system:admin is not a Rancher user
トークンは常にリクエストを行ったユーザーのために作成されます。異なる`spec.userID`を指定して別のユーザーのためにトークンを作成しようとすることは禁止されており、失敗します。
-
`spec.description`フィールドには、トークンの目的に関する任意の人間が読める説明を設定できます。デフォルト値は空です。
-
`spec.kind`フィールドには、トークンの種類を設定できます。値`session`はログイントークンを示します。他のすべての値(デフォルトの空文字列を含む)は、派生トークンの一種を示します。
-
`metadata.name`および`metadata.generateName`フィールドは無視され、新しいトークンの名前は接頭辞`token-`を使用して自動的に生成されます。
kubectl create -o jsonpath='{.status.value}' -f -<<EOF apiVersion: ext.cattle.io/v1 kind: Token spec: description: My Token EOF -
`spec.ttl`が指定されていない場合、トークンは`auth-token-max-ttl-minutes`設定で定義された有効期限で作成されます。デフォルトの有効期限は90日です。`spec.ttl`が指定されている場合、それは0より大きく、`auth-token-max-ttl-minutes`設定のミリ秒で表現された値以下である必要があります。
kubectl create -o jsonpath='{.status.value}' -f -<<EOF apiVersion: ext.cattle.io/v1 kind: Token spec: ttl: 7200000 # 2 hours EOF
トークンの一覧表示
以前に生成されたトークンの一覧表示は、もはや必要のないトークンを整理するのに役立ちます(例:一時的に発行されたもの)。管理者はすべてのトークンを一覧表示できますが、一般ユーザーは自分のトークンのみを見ることができます。
kubectl get tokens.ext.cattle.io
NAME KIND TTL AGE
token-chjc9 90d 18s
token-6fzgj 90d 16s
token-8nbrm 90d 14s
詳細を取得するには、`-o wide`を使用してください:
kubectl get tokens.ext.cattle.io -o wide
NAME USER KIND TTL AGE DESCRIPTION
token-chjc9 user-jtghh 90d 24s example
token-6fzgj user-jtghh 90d 22s box
token-8nbrm user-jtghh 90d 20s jinx
トークンの表示
管理者は任意のトークンを取得できますが、一般ユーザーは自分のトークンのみ取得できます。
kubectl get tokens.ext.cattle.io token-chjc9
NAME KIND TTL AGE
token-chjc9 90d 18s
詳細を取得するには、`-o wide`を使用してください:
kubectl get tokens.ext.cattle.io token-chjc9 -o wide
NAME USER KIND TTL AGE DESCRIPTION
token-chjc9 user-jtghh 90d 24s example