18.2. 使用 mint 模式
Amazon Web Services(AWS)、Microsoft Azure 和 Google Cloud Platform(GCP)支持 Mint 模式。
Mint 模式是 Cloud Credential Operator(CCO)的默认和推荐的最佳实践设置,用于支持它的平台。在这个模式下,CCO 使用提供的管理员级云凭证为集群中组件创建新凭证,且只具有所需的特定权限。
如果在安装后没有删除凭证,则会存储并供 CCO 使用来处理集群中组件的 CredentialsRequest
CR,并为每个组件创建新凭证,每个凭证只具有所需的特定权限。以 mint 模式持续协调云凭证可进行需要额外凭证或权限(如升级)的操作。
如果 mint 模式在集群 kube-system
命名空间中存储管理员级别凭证的要求不匹配您的机构的安全要求,请参阅在 AWS、Azure 或 GCP 的 kube-system 项目中存储管理员级别的 secret。
18.2.1. Mint 模式权限要求
以 mint 模式使用 CCO 时,请确保您提供的凭证满足运行或安装 OpenShift Container Platform 的云要求。如果提供的凭证不足以满足 mint 模式,则 CCO 无法创建 IAM 用户。
18.2.1.1. Amazon Web Services(AWS)权限
您在 AWS 中为 mint 模式提供的凭证必须具有以下权限:
-
iam:CreateAccessKey
-
iam:CreateUser
-
iam:DeleteAccessKey
-
iam:DeleteUser
-
iam:DeleteUserPolicy
-
iam:GetUser
-
iam:GetUserPolicy
-
iam:ListAccessKeys
-
iam:PutUserPolicy
-
iam:TagUser
-
iam:SimulatePrincipalPolicy
18.2.1.2. Microsoft Azure 权限
您在 Azure 中为 mint 模式提供的凭证必须具有在创建服务主体中指定的权限的服务主体。
18.2.1.3. Google Cloud Platform(GCP)权限
您在 GCP 中为 mint 模式提供的凭证必须具有以下权限:
-
resourcemanager.projects.get
-
serviceusage.services.list
-
iam.serviceAccountKeys.create
-
iam.serviceAccountKeys.delete
-
iam.serviceAccounts.create
-
iam.serviceAccounts.delete
-
iam.serviceAccounts.get
-
iam.roles.get
-
resourcemanager.projects.getIamPolicy
-
resourcemanager.projects.setIamPolicy