翻訳者 |李睿 レビュー |チョンロウ 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 環境向けのドメイン名マッピング最適化、開発者の新たなお気に入り
今日のSEO環境は大きく悪化しています。スパムがインターネットに溢れており、SEO に取り組んでいる...
最も速度が速い海外の VPS はどれですか? 2019 年に最も速い海外 VPS は何ですか?多くの...
環境: springboot2.4.12 + ElasticSearch7.8.0導入Elastic...
インターネットの発展に伴い、検索エンジン最適化は一般の人々からますます注目を集めています。中小企業、...
デジタルオーシャンはどうですか?デジタルオーシャンインドはどうですか?現在の国内のインターネットアク...
エンタープライズシンクタンクが発表したデータによると、2016年12月時点で、 WeChatの月間ア...
ご存知のとおり、SEO はキーワードのランキングを向上させ、ターゲット トラフィックを追求し、最終的...
インターネットの急速な発展に伴い、わが国ではインターネットが徐々に成熟してきました。同時に、国内のイ...
acroservers は 2016 年 8 月に新しく設立され、ポーランドに登録されました (NI...
budgetvm の最新プロモーション: 両方の Smart Server モデルが 10 ドル値下...
テンセントは8月8日、第2世代Maxロボット(以下、Max)を正式にリリースした。記者たちは、マック...
1 クラウドコンピューティングIaaSの開発IaaS はインフラストラクチャ レベルのクラウド コン...
ウェブサイトはますます急速に発展しており、ますます多くの企業がオンライン マーケティングに参加するよ...
[[405722]]みなさんこんにちは。私はウー兄弟です。これは、Kafka に関する「Master...
ショートビデオ、セルフメディア、インフルエンサーのためのワンストップサービス著者: Box Fung...