ビジネス向けのk 8 sコンテナプラットフォームで、サービスaccountを無視していますか?

1995 ワード

サービスアカウントとは
A service account provides an identity for processes that run in a Pod
Serviceaccount:podで実行されるプロセスに対するサービスアカウント.
kubernetesのアカウントには、ユーザーアカウントとサービスアカウントの2つのタイプがあります.
ユーザーアカウントとサービスアカウント
  • ユーザーアカウントは人を対象としている.サービスアカウントはpodで実行されるプロセスについてです.
  • ユーザーアカウントはグローバルです.その名前はクラスタの各namespaceにおいてグローバルで一意であり、将来のユーザーリソースはnamespace分離を行わず、サービスアカウントはnamespace分離である.
  • 通常、クラスタのユーザー・アカウントがエンタープライズ・データベースから同期される可能性があり、特殊な権限を必要とし、複雑なビジネス・プロセスに関連して作成されます.サービスアカウントの作成の目的は、クラスタ・ユーザーが特定のタスクのためにサービスアカウントを作成できるようにすることです(すなわち、権限の最小化の原則).
  • 人員・サービス口座監査に考慮される要因が異なる場合があります.
  • 複雑なシステムの構成には、システムコンポーネントに関する各種サービスアカウントの定義が含まれる場合がある.サービスアカウントはカスタマイズ可能に作成され、namespaceレベルの名前があるため、この構成は軽量です.

  • サービスアカウントの機能
    前述の説明から分かるように、サービスアカウントはPodプロセスに従って自動的に作成されたライセンスシステムであり、それを通じて、利用者はPodがあるnamespaceの下でやりたい放題(ハハハかつサービスアカウントがデフォルトでオープンしている場合、すなわち、公開されたk 8 sコンテナプラットフォームであり、あるnamespaceに対応するquotaが設定されていないか、quotaが十分大きい場合、その下に配置された事業者はk 8 sが提供するclient-gorest.InClusterConfig()方法で現在のnamespaceの下に配置(またはその他)することができる.これにより、クラスタ内に管理されていないpod(または予想外のpodおよびその他のリソースと言える)が発生し、プラットフォーム側としてこのシーンが発生することを望んでいないはずです.
    kubernetes 1.6以降のバージョンでは、このコンピテンシーを無効にすることを手動で制御できます.公式の紹介を参照してください.
    In version 1.6+, you can opt out of automounting API credentials for a service account by setting automountServiceAccountToken: false on the service account:
    apiVersion: v1
    kind: ServiceAccount
    metadata:
      name: build-robot
    automountServiceAccountToken: false
    ...
    

    In version 1.6+, you can also opt out of automounting API credentials for a particular pod:
    apiVersion: v1
    kind: Pod
    metadata:
      name: my-pod
    spec:
      serviceAccountName: build-robot
      automountServiceAccountToken: false
      ...

    The pod spec takes precedence over the service account if both specify a automountServiceAccountToken value.
    したがって,非特殊なビジネスシーンでは,ブロックautomountServiceAccountTokenを無効化し,クラスタの制御性をさらに保証すべきである.