Skip to content

cornus token

ベアラー認証を使用する Cornus サーバー向けに署名付き JWT を発行します。

構文

sh
cornus token issue [flags]

説明

Cornus サーバーは検証専用です。cornus token issue は、サーバーが検証するトークンを発行するプロセス内の発行者です。サーバーが検証するものと同じ鍵材料で署名します。両側に設定する HS256 シークレット (CORNUS_JWT_HS256_SECRET)、または公開部分をサーバーの CORNUS_JWT_PUBLIC_KEY に設定した秘密鍵を使用します。発行されたトークンは標準出力に表示されます。

サーバーによるトークン検証と claim からアクセスへの対応は、セキュリティと認証を参照してください。

cornus token issue

署名付き JWT を一つ発行します。

フラグ環境変数既定値説明
--subSubject (sub) claim。呼び出し元の ID。
--scopeapi範囲: api (完全アクセス) または caretaker (caretaker アタッチエンドポイントのみ)。トークンはどちらかを必ず指定する必要があります。空の範囲は何も許可されず、発行時に拒否されます。
--ttl1hトークンの有効期間 (例: 1h720h)。
--issIssuer (iss) claim。設定時はサーバーの CORNUS_JWT_ISSUER と一致する必要があります。
--audAudience (aud) claim。設定時はサーバーの CORNUS_JWT_AUDIENCE と一致する必要があります。
--kidキー ID ヘッダー。JWKS verifier (CORNUS_JWT_JWKS_FILE/_URL) が対応する鍵を選べるようにします。
--hs256-secretCORNUS_JWT_HS256_SECRETHMAC シークレット (対称鍵)。サーバーは同じシークレットで検証します。最低 32 バイト。
--private-keyPEM 秘密鍵ファイル (RSA では RS256、ECDSA では ES256)。サーバーは対応する公開鍵で検証します。

対称シークレットによる HS256 署名トークンを発行します。

sh
export CORNUS_JWT_HS256_SECRET='a-secret-at-least-32-bytes-long!!'
cornus token issue --sub alice --ttl 24h

秘密鍵で署名する非対称トークンを発行します。

sh
cornus token issue --sub ci --scope api --private-key ./signing-key.pem --kid key-1

caretaker 範囲のトークンを発行します。

sh
cornus token issue --sub sidecar --scope caretaker --aud cornus

Released under the Apache-2.0 License.