AM
JA
無料で始める
メニュー

Client Key

トークン署名に使う暗号鍵ペア。公開鍵は JWKS で公開されます。

cryptography 暗号 jwt jwks signing 署名 keys

Client Key

Client Key はトークン署名に使用する暗号鍵ペアです。公開鍵は検証用に JWKS で公開され、秘密鍵は公開されません。

スキーマ

interface ClientKey {
  kid: string; // JWT ヘッダーで使うキー ID
  credential_id: string; // Client ID(cid...)
  jwk: object; // 公開 JWK
  public_key: string; // PEM 形式公開鍵
}

プロパティ

PropertyTypeDescription
kidstringキー ID(JWT ヘッダーの kid)
credential_idstringこの鍵が属する Client
jwkobject公開 JWK 表現
public_keystringPEM 形式公開鍵

JWKS 表現

公開鍵は /.well-known/jwks.json で公開されます。

{
  "keys": [
    {
      "kty": "RSA",
      "use": "sig",
      "kid": "key_2kHfPZcN9xW4mE8RtY7vB",
      "alg": "RS256",
      "n": "0vx7agoebG...",
      "e": "AQAB"
    }
  ]
}

鍵ローテーション

新しいキーを作成新しいキーで署名JWKS内の旧キー旧キーを削除

ベストプラクティス:

  • 定期的に鍵をローテーションする
  • 移行期間は 2〜4 本の鍵を同時に有効化する
  • 古い鍵はトークン検証のため JWKS に残す

{
  "kid": "key_2kHfPZcN9xW4mE8RtY7vB",
  "credential_id": "cid_1jGePYbM8wV3lD7QsX6uA",
  "jwk": { "kty": "RSA", "kid": "key_..." },
  "public_key": "-----BEGIN PUBLIC KEY-----..."
}

関連