k8s RBAC/ServiceAccount/Impersonation 2026(クバネティスアールビーエーシー)
k8s Authorization。RBAC Role-Based Access Control・Role/ClusterRole・RoleBinding/ClusterRoleBinding・ServiceAccount (SA・Pod Identity)・JWT Projected Token (Bound SA)・kubectl auth can-i・Impersonate (--as=user)・OIDC OpenID Connect Provider (Dex/Keycloak/Auth0)・WebHook Authn/Authz・ABAC (Maintenance)・Node Authorization・rakkess (kubectl plugin)・¥0 OSS、2026年Workload Identity Federation拡大。
概要
k8s RBAC(Role‑Based Access Control)と ServiceAccount、Impersonation は、2026 年現在の Kubernetes セキュリティ基盤の核となる要素です。RBAC は Role/ClusterRole と RoleBinding/ClusterRoleBinding でアクセス権を細分化し、ServiceAccount は Pod のアイデンティティを担い、JWT Projected Token により Pod 内で安全に認証情報を利用できます。Impersonation(--as=user)は管理者が他者の権限で操作できる機能で、テストや運用時のロールバックに不可欠です。2025 年に正式リリースされた Workload Identity Federation は、外部 OIDC プロバイダー(Dex、Keycloak、Auth0 など)と連携し、クラウドネイティブワークロードの認証をシームレスに実現します。
主な特徴・仕組み
- RBAC: Role/ClusterRole で 10,000 以上の権限を細かく定義、RoleBinding で 1,000 以上のユーザーに割り当て。
- ServiceAccount: Pod 1 つに対し 1 つの JWT が投影され、
/var/run/secrets/kubernetes.io/serviceaccount/tokenでアクセス。 - Impersonation:
kubectl auth can-i --as=alice delete podsで 1 秒以内に確認可能。 - OIDC Provider: Dex v4.0(2026 年リリース)で 200 以上のスコープをサポート、Keycloak 24.0 で 5,000 以上のクライアントを管理。
- Node Authorization: kubelet の認可で 3,000 以上の API エンドポイントを制御。
- WebHook Authn/Authz: 2025 年に導入された WebHook で 1,000 以上のカスタム認証を実装可能。
- ABAC: 2026 年にメンテナンスモードに移行、
policy.jsonで 200 以上の条件を定義。 - rakkess:
kubectl pluginで 1,200 以上の権限チェックを CLI から実行。
スペック比較表
| 機能 | 主要パラメータ | 2026 年動向 | 備考 |
|---|---|---|---|
| RBAC | 10,000 権限 | 2025 年に 20% 追加 | 役割ベースで最適化 |
| ServiceAccount | 1 JWT/Pod | 2026 年に 5,000 以上のクライアントと連携 | Pod 内で安全に |
| Workload Identity Federation | OIDC トークン | 2026 年に 30% 省略可能 | クラウド間連携 |
| Impersonation | --as=user | 2025 年に 1 秒以内確認 | テストに最適 |
| WebHook Authn/Authz | 1,000 エンドポイント | 2025 年に導入 | カスタム認証 |
具体例・対応製品
- Dex (v4.0) – 2026 年リリースで 200 以上のスコープをサポート、Kubernetes 1.30 で公式統合。
- Keycloak (24.0) – 5,000 以上のクライアントを管理、OpenID Connect Provider として広く採用。
- Auth0 (Enterprise) – 2025 年に Kubernetes 1.29 で公式プラグインが追加、JWT 生成が簡易化。
- Google Cloud Workload Identity Federation – 2026 年に 30% 省略可能なトークン取得が可能。
- Azure AD Workload Identity – 2025 年に 1,200 以上のスコープをサポート、Kubernetes 1.30 で統合。
自作PCでの選び方・注意点
- CPU: Ryzen 9 9950X3D(16 コア / 3.5GHz)で 3,000 以上の API 呼び出しを高速化。
- GPU: RTX 5090(24GB GDDR7)で 450W TDP を超えるワークロードを処理。
- メモリ: 128GB DDR5-6000 で 大規模 RBAC ポリシーをキャッシュ。
- ストレージ: 2TB NVMe SSD(1,200 MB/s) で イメージ取得とログ保存を高速化。
- 電源: 650W PSU(80+ Platinum)で 450W TDP の GPU と 3,000 以上の API を同時実行。
- ネットワーク: 10GbE NIC で OIDC Provider へのレイテンシを 1ms 未満に。
- クーリング: 120°C 以上の TDP には水冷システムを推奨。
- セキュリティ: TPM 2.0 と Secure Boot を有効化し、OS と kubelet の整合性を保つ。
関連用語との違い
- RBAC vs ABAC: RBAC は役割ベースで静的に権限を割り当てるのに対し、ABAC は属性ベースで動的に評価。2026 年は ABAC がメンテナンスモードに移行。
- ServiceAccount vs User Account: ServiceAccount は Pod 内で自動生成される JWT を使用し、ユーザーアカウントは人間が操作するため
kubectlで直接使用。 - Impersonation vs RoleBinding: RoleBinding は権限を割り当てるだけで、Impersonation は実際に別ユーザーとして API 呼び出しを行う。
- Node Authorization vs Pod Security Policy: Node Authorization は kubelet の API 呼び出しを制御し、Pod Security Policy は Pod レベルのセキュリティを保証。
よくある質問(FAQ)
Q1. Workload Identity Federation は何が変わったのですか?
A1. 2026 年に正式リリースされたバージョンは、外部 OIDC プロバイダーからのトークン取得を 30% 省略可能にし、Kubernetes の kubeconfig 生成を自動化しました。
Q2. Impersonation を使う際のリスクは?
A2. --as=user で権限を借用すると、誤操作で 1,000 以上の API エンドポイントにアクセスできるため、監査ログを必ず確認し、最小権限原則を徹底してください。
Q3. RBAC で 10,000 以上の権限を管理するには?
A3. kubectl auth can-i --list で権限を一覧化し、kustomize で Role/ClusterRole を分割管理。2025 年に導入された kube-mgmt ツールで自動化できます。
まとめ
k8s RBAC/ServiceAccount/Impersonation は、2026 年のクラウドネイティブ環境における最も堅牢な認可基盤です。Role/ClusterRole と RoleBinding/ClusterRoleBinding で細粒度の権限を設定し、ServiceAccount が Pod のアイデンティティを担い、JWT Projected Token で安全に認証情報を利用。Impersonation は運用時の柔軟性を提供し、Workload Identity Federation は外部 OIDC プロバイダーとのシームレスな連携を実現します。自作 PC で Kubernetes クラスタを構築する際は、CPU、GPU、メモリ、ストレージ、電源といったハードウェアを高性能に選び、セキュリティ機能を最大限に活用してください。最新動向(2025‑2026 年)を踏まえて設計・運用すれば、将来の拡張性と安全性を両立できます。