Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Recap - 認可の標準仕様「AuthZEN」

Avatar for Kentaro Kentaro
July 03, 2025
320

Recap - 認可の標準仕様「AuthZEN」

KubeCon + CloudNativeCon Japan 2025 のセッション「Mastering Authorization: Integrating Authentication and Authorization Data in Cloud Native Apps」では、認可の標準仕様として OpenID Foundation の WG で策定が進む「AuthZEN」の紹介と、Keycloak + Topaz を用いたデモが行われました。
この発表では、その内容を Recap していきます。

Avatar for Kentaro

Kentaro

July 03, 2025
Tweet

Transcript

  1. ⾃⼰紹介 ▪ ⽒名‧所属 阿部 賢太郎 サイバーエージェント > グループIT推進本部 > CIU

    > Development Div ▪ 普段やっていること • プライベートクラウド上の KaaS(Kubernetes as a Service) 基盤の 開発‧運⽤ ▪ 趣味 • ⾃宅サーバー • クラリネット • YouTubeの流し⾒
  2. 標準仕様 • 認証の委任の⽅法は標準化されてきている ◦ OpenID Connect ◦ SAML etc… •

    認可については標準と⾔えるものがない ◦ OpenPolicyAgent なり Aserto Topaz なり、OSS 実装は多くあるものの、スタン ダードとまでは⾔えない • OpenID Foundation で認可についても標準仕様の策定が進む →「AuthZEN」
  3. PDP ↔ PEP の連携 • PDP と PEP が連携するための API

    仕様が定義されている ◦ リソースの利⽤可否を評価する (Access Evaluation API / Access Evaluations API) ◦ 特定のリソースを利⽤できる subject を検索する (Subject Search API) ◦ 特定の subject が利⽤できるリソースを検索する (Resource Search API) ◦ 特定の subject が特定のリソースに対して⾏える操作を検索する (Action Search API) ◦ ↑の API のエンドポイントを含むメタデータ (Policy Decision Point Metadata)
  4. PDP ↔ PEP の連携 • Access Evaluation API / Access

    Evaluations API 図引⽤: https://kccncjpn2025.sched.com/event/1x71j/mastering-authorization-integrating-authentication-and-authorization-data-in-cloud-n ative-apps-yoshiyuki-tabata-hitachi-ltd?linkback=grid
  5. PDP ↔ PEP の連携 • Access Evaluation API / Access

    Evaluations API 図引⽤: https://kccncjpn2025.sched.com/event/1x71j/mastering-authorization-integrating-authentication-and-authorization-data-in-cloud-n ative-apps-yoshiyuki-tabata-hitachi-ltd?linkback=grid
  6. PDP ↔ PEP の連携 • Policy Decision Point Metadata 図引⽤:

    https://kccncjpn2025.sched.com/event/1x71j/mastering-authorization-integrating-authentication-and-authorization-data-in-cloud-n ative-apps-yoshiyuki-tabata-hitachi-ltd?linkback=grid
  7. 実装パターン • クライアントがIdPから取得したトークンを使って、PDPが判定 ◦ JWT などを渡すイメージ ◦ トークンの情報が全てなので、最新の情報とは限らない • PEP

    が IdP からユーザーの属性を取得する ◦ PEP に役割が集中してそう • PDP が IdP からユーザーの属性を取得する ◦ これが⼀番 OIDC に近そう • IdP と PDP が常にユーザー情報を同期している ◦ 複雑さは⾼いが、認証認可の時点でのステップは少ない
  8. Keycloak + Topaz で AuthZEN (デモ) • Keycloak は CNCF

    Graduated の IAM ◦ Keycloak ⾃⾝で持つユーザーストアや、LDAP /外部の IdP などと連携できる ◦ OAuth2.0 / OIDC / SAML などに対応 • Topaz は「認可」に特化した OSS ◦ こちらが AuthZEN Authorization API にも対応
  9. Keycloak + Topaz で AuthZEN (デモ) • Keycloak のユーザー情報を、Topaz に同期

    ◦ Keycloak のユーザーとグループの関連付けなど ◦ 同期の⽅法は AuthZEN のスコープ外(SCIM や OIDC の UserInfo など、やりやす い⽅法で) • Topaz でホストしている Access Evaluation API の結果に反映されて いる
  10. まとめ‧感想 • AuthZEN では、認可についての標準仕様を策定 ◦ 特に、リソースに対するアクセス権限を判定するための標準的な API が決まって いる •

    役割⾃体は兼務することもあり得る ◦ IdP が PIP を兼ねていたり、PDP が PEP を兼ねていたり • 仕様が標準化されていくことで、ライブラリなどの選択の幅が広がり そう
  11. KubeCon + CloudNativeCon Japan 2025 を通して • CloudNative の領域を「⿃瞰」することができた ◦

    Kubernetes 本体のアップデート ◦ 各社の事例 ◦ 便利な OSS の紹介 • コントリビュートのモチベが上がった ◦ まずは good first issue から‧‧‧ • 英語できないことのつらみ ◦ 来年も開催されるので、勉強しようと⼼に誓いました