翻訳者 |李睿 レビュー |チョンロウ Kubernetes RBAC とは何ですか?組織が Kubernetes の導入を開始するときは通常、インフラストラクチャを保護するために最小限の権限ロールと適切な承認を実装する必要があります。ここで、Kubernetes RBAC が役立ち、デプロイメントの詳細、永続的なストレージ設定、シークレットなどの機密データなどの Kubernetes リソースを保護します。 Kubernetes RBAC は、各 API リソースにアクセスできるユーザーとその方法を制御する機能を提供します。組織は、人間のユーザー (個人またはグループ) と人間以外のユーザー (サービス アカウント) の両方に対して RBAC を使用して、さまざまな Kubernetes リソースへのアクセスの種類を定義できます。 たとえば、開発、ステージング、本番環境という 3 つの異なる環境があり、開発者、DevOps 担当者、SRE、アプリケーション所有者、製品マネージャーなどのチームにこれらの環境へのアクセスを提供する必要があります。 始める前に、抽象的な観点から、ユーザーとサービス アカウントは同じように扱われることを強調することが重要です。つまり、ユーザーからであろうとサービス アカウントからであろうと、すべてのリクエストは最終的には HTTP リクエストです。 Kubernetes のユーザーとサービス アカウント (人間以外のユーザー用) は根本的に異なることが知られています。 Kubernetes RBAC を有効にする方法認証モード フラグを使用して API サーバーを起動すると、Kubernetes で RBAC を有効にすることができます。ユーザーに RBAC を適用するために使用される Kubernetes リソースは次のとおりです。
1. サービスアカウントユーザーを管理するために、Kubernetes は認証メカニズムを提供しますが、一般的には、Kubernetes を Active Directory や LDAP などのエンタープライズ ユーザー ID 管理と統合することが推奨されます。 Kubernetes クラスター内の人間以外のユーザー (またはマシンやサービス) に関しては、サービス アカウントの概念が関係してきます。 たとえば、アプリケーションをデプロイするには、Spinnaker や Argo などの継続的デリバリー (CD)アプリケーションから Kubernetes リソースにアクセスする必要があります。また、サービス A の 1 つのポッドがサービス B の別のポッドと通信する必要があります。この場合、サービス アカウントを使用して、人間以外のユーザーのアカウントを作成し、必要な承認を指定します (ロール バインディングまたはクラスター ロール バインディングを使用)。 次のような yaml を作成することでサービス アカウントを作成できます。 それからそれを適用します。 ここで、デプロイメント リソース内のポッドにサービス アカウントを提供する必要があります。 デプロイメント リソースでサービス アカウント名 (serviceAccountName) を指定しない場合、ポッドはデフォルトのサービス アカウントに属します。各名前空間にはデフォルトのサービス アカウントがあり、クラスターにもデフォルトのサービス アカウントがあることに注意することが重要です。デフォルトのサービス アカウントのすべてのデフォルトの承認ポリシーは、サービス アカウント情報が指定されていないポッドに適用されます。 以下では、ロール バインディングとクラスター ロール バインディングを使用して、サービス アカウントにさまざまな権限を割り当てる方法を説明します。 2. ロールとクラスターロールRole と ClusterRole は、それぞれユーザーが名前空間またはクラスター内で実行できる操作のリストを定義する Kubernetes リソースです。 Kubernetes では、アクター (ユーザー、グループ、サービス アカウントなど) はサブジェクトと呼ばれます。作成、読み取り、書き込み、更新、削除などのサブジェクトのアクションは、操作と呼ばれます。 上記のロール リソースでは、読み取り専用ロールが deb-ns 名前空間と名前空間内のすべてのリソースにのみ適用されるように指定されています。読み取り専用ロールにバインドされたすべてのサービス アカウントまたはユーザーは、取得、一覧表示、監視などの操作を実行できます。 同様に、クラスター ロール (リソースにより、クラスターに関連するロールの作成が可能になります) 。次に例を示します。 chief-role にバインドされたユーザー/グループ/サービス アカウントは、クラスター内で任意のアクションを実行できます。 次のセクションでは、ロール バインディングとクラスター ロール バインディングを使用してトピックにロールを付与する方法について説明します。 さらに、Kubernetes では、Role リソースを使用してカスタム ロールを構成したり、次に示すようにデフォルトのユーザー指向のロールを使用したりできます。
3. ロールバインディングとクラスターロールバインディングサブジェクト (ユーザー/グループ/サービス アカウント) にロールを適用するには、ロール バインディングを定義する必要があります。これにより、ロール構成で定義された権限を使用して、名前空間内の必要なリソースへの最小限の権限アクセスがユーザーに提供されます。 同様に、クラスター ロール バインディング リソースを作成して、ユーザーのロールを定義することもできます。カスタム ロールの代わりに、Kubernetes によって提供されるデフォルトのスーパーユーザー クラスター ロール参照が使用されることに注意することが重要です。これはクラスター管理者が使用できます。 Kubernetes RBAC の利点Kubernetes RBAC の利点は、クラスター内のさまざまなユーザーとマシンに対して最小権限を「ネイティブ」に実装できることです。主な利点は次のとおりです。 1. 適切な承認さまざまなユーザーやサービス アカウントにKubernetes リソースへの最小限の権限を付与することは、DevOps とアーキテクトがゼロ トラストを実装するために使用できる主要な柱の 1 つです。組織は、データ侵害やデータ漏洩のリスクを軽減できるだけでなく、社内従業員による重要なリソースの誤った削除や操作も回避できます。 2. 職務の分離Kubernetes リソースに RBAC を適用すると、組織内のユーザー (開発者、DevOps、テスター、SRE など) の職務の分離に常に役立ちます。たとえば、開発環境で新しいリソースを作成/削除する場合、開発者は管理者に依存すべきではありません。同様に、新しいアプリケーションをテスト サーバーにデプロイし、テスト後にポッドを削除することは、DevOps やテスターにとってボトルネックになってはなりません。ユーザー (開発者や CI/CD デプロイメント エージェントなど) に独自のワークスペース (名前空間やクラスターなど) への承認と権限を適用すると、依存関係が減り、余裕が減ります。 3.規制への100%の遵守多くの業界規制 (HIPAA、GDPR、SOX など) では、ソフトウェア分野で厳格な認証および承認メカニズムが求められています。 Kubernetes RBAC を使用すると、DevOps とアーキテクトは Kubernetes クラスターに RBAC を迅速に実装し、これらの標準に準拠するようにセットアップを改善できます。 Kubernetes RBAC の欠点中小企業の場合、Kubernetes RBAC を使用することは合理的ですが、次の理由から推奨されません。
元のタイトル: Kubernetes RBAC とは何ですか? なぜ必要なのですか?著者: デバスリー・パンダ |
<<: クラウド ネイティブのヒント: OrbStack — ローカル K8s 環境向けのドメイン名マッピング最適化、開発者の新たなお気に入り
今週開催された第1回中国インターネットセキュリティカンファレンスでは、カンファレンス全体の注目はやは...
クラウド コンピューティングは、第 3 世代のインターネット ネットワーク テクノロジーの中核を成す...
[[340470]]この記事はWeChatの公開アカウント「Huperzineの建築に関するメモ」か...
不十分なセキュリティやベンダー ロックインなどの一般的な問題によって、組織がストレージに複数のクラウ...
lovevps は設立されて 3 年になるワンマン ブランドです。低価格帯の VPS 市場では評判が...
今日のウェブマスター、特に私たちの草の根ウェブマスターは、「虎」という言葉を聞くと恐怖を感じます。こ...
月収10万元の起業の夢を実現するミニプログラム起業支援プラン多くの SEO 実践者は企業で働いている...
最近、ある読者が SEO ピラミッド マトリックス ランキング テクノロジーについて Fuqing ...
1. SERP機能の台頭以前は、オーガニックランキングができるだけ多くのトラフィックを獲得する方法だ...
今日は月曜日です。私と彼女は仕事のスケジュールがあり、休みを取りたかったので、深センの最高峰である梧...
多くの人が「budgetvm についてどう思いますか?」と尋ねます。私 (Zhujimao www....
月収10万元の起業の夢を実現するミニプログラム起業支援プラン著者丨ルーティン編集部出典: Opera...
Baidu のホームページで上位にランクインしたい場合、ウェブサイトのランキングを向上させるためにい...
クラウド ネイティブ アーキテクチャは、クラウド コンピューティング プラットフォームの利点を最大限...
ショートビデオ、セルフメディア、インフルエンサーのためのワンストップサービスまず、Weibo につい...