本页面介绍了如何使用 Identity and Access Management (IAM) API、Google Cloud 控制台和 gcloud CLI 停用和启用服务账号。
准备工作
Enable the IAM API.
设置身份验证。
Select the tab for how you plan to use the samples on this page:
Console
When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.
gcloud
In the Google Cloud console, activate Cloud Shell.
At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
C#
如需在本地开发环境中使用本页面上的 .NET 示例,请安装并初始化 gcloud CLI,然后使用您的用户凭据设置应用默认凭据。
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
如需了解详情,请参阅 Google Cloud 身份验证文档中的为本地开发环境设置身份验证。
C++
如需在本地开发环境中使用本页面上的 C++ 示例,请安装并初始化 gcloud CLI,然后使用您的用户凭据设置应用默认凭据。
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
如需了解详情,请参阅 Google Cloud 身份验证文档中的为本地开发环境设置身份验证。
Go
如需在本地开发环境中使用本页面上的 Go 示例,请安装并初始化 gcloud CLI,然后使用您的用户凭据设置应用默认凭据。
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
如需了解详情,请参阅 Google Cloud 身份验证文档中的为本地开发环境设置身份验证。
Java
如需在本地开发环境中使用本页面上的 Java 示例,请安装并初始化 gcloud CLI,然后使用您的用户凭据设置应用默认凭据。
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
如需了解详情,请参阅 Google Cloud 身份验证文档中的为本地开发环境设置身份验证。
Python
如需在本地开发环境中使用本页面上的 Python 示例,请安装并初始化 gcloud CLI,然后使用您的用户凭据设置应用默认凭据。
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
如需了解详情,请参阅 Google Cloud 身份验证文档中的为本地开发环境设置身份验证。
REST
如需在本地开发环境中使用本页面上的 REST API 示例,请使用您提供给 gcloud CLI 的凭据。
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
如需了解详情,请参阅 Google Cloud 身份验证文档中的使用 REST 时进行身份验证。
了解 IAM 服务账号
所需的角色
如需获得管理服务账号所需的权限,请让管理员向您授予项目的 Service Account Admin (
roles/iam.serviceAccountAdmin
) IAM 角色。 如需详细了解如何授予角色,请参阅管理访问权限。如需详细了解此角色,请参阅服务账号角色。
IAM 基本角色也具有管理服务账号的权限。您不应在生产环境中授予基本角色,但可以在开发或测试环境中授予这些角色。
停用服务账号
与删除服务账号类似,当您停用服务账号后,应用将无法再通过该服务账号来访问 Google Cloud 资源。如果停用默认 App Engine 和 Compute Engine 服务账号,实例将无法再访问项目中的资源。如果您尝试停用已停用的服务账号,则操作无效。
与删除服务账号不同的是,您可根据需要轻松重新启用已停用的服务账号。我们建议在删除服务账号之前,先执行停用,以防有关键应用正在使用该服务账号。
控制台
在 Google Cloud 控制台中,转到服务账号页面。
选择一个项目。
点击要停用的服务账号的名称。
在服务账号状态下,点击停用服务账号,然后点击停用确认更改。
gcloud
-
In the Google Cloud console, activate Cloud Shell.
At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
-
执行
gcloud iam service-accounts disable
命令可停用服务账号。命令:
gcloud iam service-accounts disable SA_NAME@PROJECT_ID.iam.gserviceaccount.com
输出如下:
Disabled service account SA_NAME@PROJECT_ID.iam.gserviceaccount.com
C++
如需了解如何安装和使用 IAM 客户端库,请参阅 IAM 客户端库。如需了解详情,请参阅 IAM C++ API 参考文档。
如需向 IAM 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅准备工作。
C#
如需了解如何安装和使用 IAM 客户端库,请参阅 IAM 客户端库。如需了解详情,请参阅 IAM C# API 参考文档。
如需向 IAM 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅准备工作。
Go
如需了解如何安装和使用 IAM 客户端库,请参阅 IAM 客户端库。如需了解详情,请参阅 IAM Go API 参考文档。
如需向 IAM 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅准备工作。
Java
如需了解如何安装和使用 IAM 客户端库,请参阅 IAM 客户端库。如需了解详情,请参阅 IAM Java API 参考文档。
如需向 IAM 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅准备工作。
Python
如需了解如何安装和使用 IAM 客户端库,请参阅 IAM 客户端库。如需了解详情,请参阅 IAM Python API 参考文档。
如需向 IAM 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅准备工作。
REST
serviceAccounts.disable
方法可立即停用服务账号。在使用任何请求数据之前,请先进行以下替换:
PROJECT_ID
:您的 Google Cloud 项目 ID。项目 ID 是字母数字字符串,例如my-project
。SA_ID
:您的服务账号的 ID。此 ID 可以是服务账号的电子邮件地址(格式为SA_NAME@PROJECT_ID.iam.gserviceaccount.com
)或服务账号的唯一数字 ID。
HTTP 方法和网址:
POST https://iam.googleapis.com/v1/projects/PROJECT_ID/serviceAccounts/SA_ID:disable
如需发送您的请求,请展开以下选项之一:
如果成功,则响应正文将为空。
启用服务账号
启用已停用的服务账号后,应用便能够重新通过该服务账号访问 Google Cloud 资源。
您可以根据需要随时启用已停用的服务账号。如果您尝试启用已启用的服务账号,则操作无效。
控制台
在 Google Cloud 控制台中,转到服务账号页面。
选择一个项目。
点击要启用的服务账号的名称。
在服务账号状态下,点击启用服务账号,然后点击启用确认更改。
gcloud
-
In the Google Cloud console, activate Cloud Shell.
At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
-
执行
gcloud iam service-accounts enable
命令可启用服务账号。命令:
gcloud iam service-accounts enable SA_NAME@PROJECT_ID.iam.gserviceaccount.com
输出如下:
Enabled service account SA_NAME@PROJECT_ID.iam.gserviceaccount.com
C++
如需了解如何安装和使用 IAM 客户端库,请参阅 IAM 客户端库。如需了解详情,请参阅 IAM C++ API 参考文档。
如需向 IAM 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅准备工作。
C#
如需了解如何安装和使用 IAM 客户端库,请参阅 IAM 客户端库。如需了解详情,请参阅 IAM C# API 参考文档。
如需向 IAM 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅准备工作。
Go
如需了解如何安装和使用 IAM 客户端库,请参阅 IAM 客户端库。如需了解详情,请参阅 IAM Go API 参考文档。
如需向 IAM 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅准备工作。
Java
如需了解如何安装和使用 IAM 客户端库,请参阅 IAM 客户端库。如需了解详情,请参阅 IAM Java API 参考文档。
如需向 IAM 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅准备工作。
Python
如需了解如何安装和使用 IAM 客户端库,请参阅 IAM 客户端库。如需了解详情,请参阅 IAM Python API 参考文档。
如需向 IAM 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅准备工作。
REST
serviceAccounts.enable
方法可启用先前停用的服务账号。在使用任何请求数据之前,请先进行以下替换:
PROJECT_ID
:您的 Google Cloud 项目 ID。项目 ID 是字母数字字符串,例如my-project
。SA_ID
:您的服务账号的 ID。此 ID 可以是服务账号的电子邮件地址(格式为SA_NAME@PROJECT_ID.iam.gserviceaccount.com
)或服务账号的唯一数字 ID。
HTTP 方法和网址:
POST https://iam.googleapis.com/v1/projects/PROJECT_ID/serviceAccounts/SA_ID:enable
如需发送您的请求,请展开以下选项之一:
如果成功,则响应正文将为空。
后续步骤
- 了解如何删除和恢复删除服务账号。
- 查看将 IAM 角色授予所有类型的主账号(包括服务账号)的流程。
- 了解如何使用角色建议来缩小所有主账号(包括服务账号)的权限范围。
- 了解如何将服务账号关联到资源。
如未另行说明,那么本页面中的内容已根据知识共享署名 4.0 许可获得了许可,并且代码示例已根据 Apache 2.0 许可获得了许可。有关详情,请参阅 Google 开发者网站政策。Java 是 Oracle 和/或其关联公司的注册商标。
最后更新时间 (UTC):2024-11-15。