Kubernetes ロールベースのアクセス制御 (RBAC) とは

URL をコピー

Kubernetes ロールベースのアクセス制御 (RBAC) は、ID およびアクセス管理 (IAM) の一形態であり、誰 (サブジェクト) が、どこ (名前空間) で、何を実行 (動詞) できるかを決定する一連の権限またはテンプレートが含まれます。RBAC は、従来の属性ベースのアクセス制御 (ABAC) の進化形で、ユーザーの責任ではなくユーザー名に基づいてアクセスを付与します。

Kubernetes (k8s または kube とも呼ばれる) は、オープンソースコンテナ・オーケストレーション・プラットフォームで、コンテナ化されたアプリケーションのデプロイ管理、スケーリングに伴う多くの手動プロセスを自動化します。 

Kubernetes によって管理される Linux コンテナは、マイクロサービスベースのアプリケーションにとって理想的なアプリケーションデプロイ単位であり、自己完結型の実行環境です。また、Kubernetes デプロイメントは YAML で記述されるため、コードは人間が読める形式になっています。

Kubernetes の詳細

Red Hat のリソース

ロールは、Pod とノードへのさまざまなレベルのアクセスを許可します。ロールには、アプリケーション・ワークロード (単にロールと呼ばれる) またはクラスタ全体 (クラスタロールと呼ばれる) として一緒に機能するクラスタの特定のグループにアクセスする権限を与えることができます。

  • ロールは、名前空間と呼ばれる、仮想的にリンクされたクラスタのグループに権限を付与します。ワークロードへのユーザーアクセスは、特定の名前空間に含まれるクラスタによって決定されるため、ロールは名前空間付きのリソースの一種です。ユーザー、ユーザーのグループ、またはサービスアカウント名は、ロールバインディングによって単一のロールに統合できます。
  • クラスタロールは、個別のハードウェアノードのグループであるクラスタ全体に権限を付与します。クラスタロールは、複数の名前空間にまたがることができます。クラスタ・ロール・バインディングは、クラスタロールをクラスタ内のすべての名前空間に関連付けます。たとえば、クラスタ管理者のクラスタロール名は、すべてのクラスタに自由にアクセスできます。

ロールバインディングとクラスタロールの権限は、メタデータを使用して組み合わせ、スタックすることができます。これにより、クラスタロールで定義された権限が、ロールバインディングの名前空間内のリソースに付与され、複数の名前空間で再利用できるクラスタ全体で共通のロールを定義するのに役立ちます。

Kubernetes RBAC でよくある 5 つの間違いはこちら

Kubernetes コントロールプレーンのフロントエンドは Kubernetes アプリケーション・プログラミング・インタフェース (API) です。Kubernetes API は、コンピュータまたはシステムとの対話を通信し、情報を取得したり、機能を実行したりします。 

Kubernetes RBAC は、関連する機能要求を API グループに収集します。API グループは、特定のロールを API エンドポイントに接続するときに API サーバーと通信します。

Kubernetes RBAC の使用に関する詳細 (Kubernetes ドキュメント、rbac.authorization.k8s.io 認証、kubectl コマンドラインツール、アドオン、kubelet TLS ブートストラップ、ネットワークポリシーの設定など) については、オープンソース・プロジェクトの RBAC ドキュメントをご覧ください。

Red Hat は、Kubernetes の作成者である Google と、立ち上げ前からプロジェクトで協力していた最初の企業の 1 つでした。以来、Kubernetes アップストリーム・プロジェクトにおける第 2 の主要なコントリビューターであり、エンタープライズ Kubernetes プラットフォームの最初の市場投入に貢献しました。 

Red Hat® OpenShift® はエンタープライズ向けの Kubernetes であり、Kubernetes をより強力で実行可能なものにするためのすべてのテクノロジーが追加されています。これらのコンポーネントには、ネットワーク、認証、監視、セキュリティ、自動化などが含まれます。 

プロプライエタリーのコンポーネントや複雑なプロセスを必要とする他のベンダーのプラットフォームとは異なり、Red Hat OpenShift は運用および開発チーム向けの単一の統合プラットフォームであり、Kubernetes の一般的なストレージとネットワークプラグインを検証済みで、監視、ロギング、および分析ソリューションが組み込まれています。

さらに詳しく
ハブ

Red Hat 公式ブログ

Red Hat のお客様、パートナー、およびコミュニティのエコシステムに関する最新の情報を入手しましょう。

すべての Red Hat 製品のトライアル

Red Hat の無料トライアルは、Red Hat 製品をハンズオンでお試しいただける無料体験版です。認定の取得に向けた準備をしたり、製品が組織に適しているかどうかを評価したりするのに役立ちます。

関連情報

Red Hat OpenShift Serverless を選ぶ理由

Red Hat OpenShift Serverlessは Knativeプロジェクト・ベースのサービスで、ハイブリッドやマルチクラウド環境でサーバーレスのワークロードをデプロイし、管理できます。

開発者が Red Hat OpenShift を選ぶ理由 | Red Hat

Red Hat OpenShift は、アプリ開発の複雑さを軽減するアプリケーション・プラットフォームです。開発者はどこでも、使い慣れたツールでアプリを構築し、デプロイできます。

サンドボックスコンテナとは?をわかりやすく解説 | Red Hat

サンドボックスコンテナは、アプリケーションの保護のために未テストのコード等を分離して実行する環境。コンテナを起動する仮想マシンを使用してプログラムを分離します。

コンテナリソース

関連記事