管理通知联系人

许多 Google Cloud 产品和服务(例如 Cloud Billing)都会发送通知,以便与 Google Cloud 用户共享重要信息。默认情况下,这些通知将发送给具有某些 Identity and Access Management (IAM) 角色的成员。借助“重要联系人”,您可以通过提供自己的联系人列表来自定义接收通知的人员。

Enable the Essential Contacts API.

Enable the API

所需的角色

如需获得管理联系人所需的权限,请让管理员向您授予联系人所分配的项目、文件夹或组织的以下 IAM 角色:

如需详细了解如何授予角色,请参阅管理对项目、文件夹和组织的访问权限

这些预定义角色包含管理联系人所需的权限。如需查看所需的确切权限,请展开所需权限部分:

如需管理联系人,您需要具备以下权限:

  • 如需查看联系人,请执行以下操作:
    • essentialcontacts.contacts.get
    • essentialcontacts.contacts.list
  • 如需修改、删除和创建联系人,请执行以下操作:
    • essentialcontacts.contacts.create
    • essentialcontacts.contacts.delete
    • essentialcontacts.contacts.update

您也可以使用自定义角色或其他预定义角色来获取这些权限。

通知类别

您可以将联系人分配给多个通知类别。如果您没有向类别添加联系人,则该类别中的通知会发送到根据您的成员的 IAM 角色选择的后备联系人。建议添加自定义联系人,而不要依赖于后备联系人,从而帮助确保合适的人员能够收到您的项目、文件夹或组织的通知。

您可以将个人和群组添加为联系人。为降低人员变动造成的影响,我们建议将群组添加为联系人,然后管理这些群组的成员资格,以确定哪些人会收到通知。这种做法有助于确保通知始终发送给在职员工。

查看下表以了解通知类别、后备联系人和推荐的联系人。如果您未向给定类别分配联系人,则通知将发送给后备联系人。

类别 说明 示例 后备联系人 推荐的联系人
全部 来自所有其他类别的所有通知 不适用 不适用 负责路由或记录可能存在的大量通知的人员或自动化系统
结算 结算和付款通知 价格更新、错误和赠金 Billing Account Administrator (roles/billing.admin) 财务部门员工和负责管理您与 Google 之间财务关系的人员,包括管理预算、规划以及与 Google Cloud 使用相关的账号的人员
法律 法规遵从通知 强制措施、法规遵从、政府通知 Billing Account Administrator (roles/billing.admin) 法律顾问、合规性管理人员、政府关系专家以及其他相关专业人员
产品最新动态 对 Google 产品的更改 新版本、产品条款更新和弃用情况 Project Owner (roles/owner) 能够通过及时了解 Google 产品和服务的变化而从中受益的产品经理、架构师和工程师。
安全 安全性/隐私权问题通知 漏洞、数据突发事件和攻击 Organization Administrator (roles/resourcemanager.organizationAdmin) IT 安全、运营安全以及负责保护公司和客户数据并确保业务连续性的其他人
暂停 与立即暂停账号和项目相关的通知 Apigee 评估合规性、版权侵犯和虚拟货币挖矿 Project Owner (roles/owner) 立即负责维护 IT 基础架构和业务应用启动和正常运行的人员
技术 技术事件和其他运维问题 记录配置错误、数据泄露防护更新和 Actions on Google 状态 Project Owner (roles/owner) IT 专业人员、可靠性工程师、管理员、值班人员名单,以及需要知道当前和即将发生的技术事件和问题以更好地管理 IT 资产并避免服务中断的其他人员

支持的语言

在“重要联系人”中,每位联系人都有首选语言设置。通知创建者可以在发送通知时参考此设置。

在 Google Cloud 控制台中添加联系人时,Google Cloud 控制台中会根据联系人创建者的首选语言设置自动配置联系人的首选语言。使用 API 添加联系人时,您需要使用语言代码手动配置联系人的首选语言。该语言代码可以引用“重要联系人”支持的任何语言。

语言 语言代码
南非荷兰语 af
阿尔巴尼亚语 sq
阿姆哈拉语 am
阿拉伯语 ar
阿拉伯语(埃及语) ar-EG
亚美尼亚语 hy
阿塞拜疆语 az
巴斯克语 eu
白俄罗斯语 be
孟加拉语 bn
波斯尼亚语 bs
保加利亚语 bg
缅甸语 my
加泰罗尼亚语 ca
中文 zh
中文 (香港) zh-HK
中文(台湾) zh-TW
克罗地亚语 hr
捷克语 cs
丹麦语 da
荷兰语 nl
英语 en
英语(澳大利亚) en-AU
英语(英国) en-GB
英语(美国) en-US
爱沙尼亚语 et
菲律宾语 fil
芬兰语 fi
法语 fr
法语(加拿大) fr-CA
加利西亚语 gl
德语 de
格鲁吉亚语 ka
希腊语 el
古吉拉特语 gu
希伯来语 iw
印地语 hi
匈牙利语 hu
冰岛语 is
印度尼西亚语 id
爱尔兰语 ga
意大利语 it
日语 ja
爪哇语 jv
卡纳达语 kn
哈萨克语 kk
高棉语 km
韩语 ko
吉尔吉斯语 ky
老挝语 lo
拉脱维亚语 lv
立陶宛语 lt
马其顿语 mk
马来语 ms
马拉雅拉姆语 ml
马拉地语 mr
蒙古语 mn
尼泊尔语 ne
挪威语 no
普什图语 ps
波斯语 fa
波兰语 pl
葡萄牙语 pt
葡萄牙语(巴西) pt-BR
葡萄牙语(葡萄牙) pt-PT
旁遮普语 pa
罗马尼亚语 ro
俄语 ru
塞尔维亚语 sr
信德语 sd
僧伽罗文 si
斯洛伐克语 sk
斯洛文尼亚语 sl
索马里语 so
西班牙语 es
西班牙语(拉丁美洲) es-419
斯瓦希里语 sw
瑞典语 sv
泰米尔语 ta
泰卢固语 te
泰语 th
土耳其语 tr
土库曼语 tk
乌克兰语 uk
乌尔都语 ur
乌兹别克语 uz
越南语 vi
威尔士语 cy
祖鲁语 zu

分配联系人的最佳实践

您可以在项目、文件夹或单位级别分配联系人。

联系人通过 Google Cloud 资源层次结构继承。因此,如果您在组织级层添加联系人,他们会收到组织的通知以及组织中所有文件夹和项目的通知。同样,如果您在文件夹级层添加联系人,则他们将会收到文件夹的通知以及文件夹中所有文件夹和项目的通知。

您决定分配联系人的位置取决于您的组织结构。但是,我们通常建议根据联系人的通知类别在下列级层指定联系人:

推荐级层 通知类别
组织级层
  • 结算
  • 法律
  • 安全1
文件夹/项目级层
  • 全部
  • 产品最新动态
  • 安全1
  • 暂停
  • 技术2

1 分配安全联系人的级别取决于组织的具体安全做法。例如,如果各个项目所有者负责其项目的安全性,则您可以在项目级层分配安全联系人。但是,如果组织范围的群组管理所有项目的安全性,则您可以在组织级层分配安全联系人。

2 技术类别联系人会收到大量电子邮件通知。在文件夹或项目级层分配这些联系人,使其能够处理传入通知流程。

限制联系人可以拥有的网域

如需限制新联系人可以拥有的电子邮件地址网域,请设置组织政策限制条件 constraints/essentialcontacts.allowedContactDomains。现有联系人不受此限制条件影响。

如需了解如何设置组织政策限制条件,请参阅组织政策限制条件

列出联系人

要列出项目、文件夹或组织中的所有联系人,请执行以下操作:

  1. 在 Google Cloud 控制台中,前往重要联系人页面。

    转到“重要联系人”页面

  2. 确保您的项目、文件夹或组织的名称显示在该页面顶部的资源选择器中。资源选择器会显示您当前要管理哪个项目、文件夹或组织的联系人。

  3. 要按类别列出联系人,请选择类别。要按字母顺序列出联系人,请选择联系人

  1. In the Google Cloud console, activate Cloud Shell.

    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.

  2. 您可以使用 Google Cloud CLI 列出在资源中定义的联系人,也可以列出资源的所有联系人和继承的联系人。

    如需查看已在特定项目、文件夹或组织中定义的联系人,请使用 gcloud essential-contacts list 命令:

    gcloud essential-contacts list --RESOURCE_TYPE="RESOURCE_ID"

    替换以下值:

    • RESOURCE_TYPE:要为其列出联系人的资源类型。使用值 projectfolderorganization
    • RESOURCE_ID:您的 Google Cloud 项目、组织或文件夹 ID。项目 ID 是字母数字字符串,例如 my-project。文件夹和组织 ID 是数字,例如 123456789012

    或者,如果您未指定资源类型或 ID,则 gcloud CLI 会列出当前项目的联系人。

    响应类似于以下示例:

    ---
    email: my-contact-1@example.com
    languageTag: en-US
    name: projects/my-projects/contacts/1
    notificationCategorySubscriptions:
    - ALL
    ---
    email: my-contact-2@example.com
    languageTag: en-US
    name: projects/my-projects/contacts/2
    notificationCategorySubscriptions:
    - BILLING
    ---
    

    子资源(文件夹和项目)会从其祖先实体(组织和其他文件夹)继承联系人。如需列出资源的所有联系人和继承的联系人,请使用 gcloud essential-contacts compute 命令:

    gcloud essential-contacts compute --notification-categories="NOTIFICATION_CATEGORY" \
      --RESOURCE_TYPE="RESOURCE_ID"

    替换以下值:

    在使用下面的请求数据之前,请先进行以下替换:

    • NOTIFICATION_CATEGORIES:您要为其计算联系人的以英文逗号分隔的通知类别列表。该列表可以包含以下任一值:allbillinglegalproduct-updatessecuritysuspensiontechnicalnotification-category-unspecified。选择 all 值可列出所有类别的联系人。
    • RESOURCE_TYPE:要为其计算联系人的资源类型。使用值 projectfolderorganization
    • RESOURCE_ID:您的 Google Cloud 项目、组织或文件夹 ID。项目 ID 是字母数字字符串,例如 my-project。文件夹和组织 ID 是数字,例如 123456789012

    如果您未指定资源类型和 ID,则 gcloud CLI 会列出当前项目的联系人。

    响应列出了资源的所有联系人和继承的联系人:

    ---
    email: my-contact-1@example.com
    languageTag: en-US
    name: projects/my-projects/contacts/1
    notificationCategorySubscriptions:
    - ALL
    ---
    email: my-contact-2@example.com
    languageTag: en-US
    name: projects/my-projects/contacts/2
    notificationCategorySubscriptions:
    - BILLING
    ---
    email: my-organization-contact@example.com
    languageTag: en-US
    name: organizations/my-organization/contacts/1
    notificationCategorySubscriptions:
    - ALL
    ---
    

您可以使用 Essential Contacts REST API 列出在资源中定义的联系人,也可以列出资源的所有联系人和继承的联系人。

如需查看已在特定项目、文件夹或组织中定义的联系人,请使用 Essentials Contacts API 的 contacts.list 方法。

在使用下面的请求数据之前,请先进行以下替换:

  • RESOURCE_TYPE:要为其列出联系人的资源类型。使用值 projectsfoldersorganizations
  • RESOURCE_ID:您的 Google Cloud 项目、组织或文件夹 ID。项目 ID 是字母数字字符串,例如 my-project。文件夹和组织 ID 是数字,例如 123456789012
  • PAGE_SIZE:可选。响应中包含的联系人数量。默认值为 50,最大值为 100。如果联系人数量超过页面大小,则响应将包含可用于检索下一页结果的分页令牌。
  • NEXT_PAGE_TOKEN:可选。此方法之前的响应中返回的分页令牌。如果已指定,则联系人列表将从上一个响应结束的位置开始。

请求:

GET essentialcontacts.googleapis.com/v1/RESOURCE_TYPE/RESOURCE_ID/contacts?pageSize=PAGE_SIZE&pageToken=NEXT_PAGE_TOKEN

根据您发送的请求,请展开以下选项之一:

执行以下命令:

curl -X GET \
-H "Authorization: Bearer "$(gcloud auth application-default print-access-token) \
https://essentialcontacts.googleapis.com/v1/RESOURCE_TYPE/RESOURCE_ID/contacts?pageSize=PAGE_SIZE&pageToken=NEXT_PAGE_TOKEN
  

执行以下命令:

$cred = gcloud auth application-default print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
  -Method GET `
  -Headers $headers `
  -Uri "https://essentialcontacts.googleapis.com/v1/RESOURCE_TYPE/RESOURCE_ID/contacts?pageSize=PAGE_SIZE&pageToken=NEXT_PAGE_TOKEN" | Select-Object -Expand Content
  

发送请求后,您会收到类似于以下内容的 JSON 响应:

{
  "contacts": [
    {
      "name": "projects/my-projects/contacts/1",
      "email": "my-contact-1@example.com",
      "notificationCategorySubscriptions": [
        "ALL"
      ],
      "languageTag": "en-US"
    },
    {
      "name": "projects/my-projects/contacts/2",
      "email": "my-contact-2@example.com",
      "notificationCategorySubscriptions": [
        "BILLING"
      ],
      "languageTag": "en-US"
    }
  ]
}

子资源(文件夹和项目)会从其祖先实体(组织和其他文件夹)继承联系人。要列出资源的所有联系人和继承的联系人,请使用 Essential Contacts API 的 contacts.compute 方法。

在使用下面的请求数据之前,请先进行以下替换:

  • RESOURCE_TYPE:要为其计算联系人的资源类型。使用值 projectsfoldersorganizations
  • RESOURCE_ID:您的 Google Cloud 项目、组织或文件夹 ID。项目 ID 是字母数字字符串,例如 my-project。文件夹和组织 ID 是数字,例如 123456789012
  • NOTIFICATION_CATEGORY:您要计算联系人的通知类别。您可以重复此字段以列出多个通知类别的联系人。此 NOTIFICATION_CATEGORY 可以是以下任一值:ALLBILLINGLEGALPRODUCT_UPDATESSECURITYSUSPENSIONTECHNICALNOTIFICATION_CATEGORY_UNSPECIFIED。选择 ALL 值可列出所有类别的联系人。
  • PAGE_SIZE:可选。响应中包含的联系人数量。默认值为 50,最大值为 100。如果联系人数量超过页面大小,则响应将包含可用于检索下一页结果的分页令牌。
  • NEXT_PAGE_TOKEN:可选。此方法之前的响应中返回的分页令牌。如果已指定,则联系人列表将从上一个响应结束的位置开始。

请求:

GET essentialcontacts.googleapis.com/v1/RESOURCE_TYPE/RESOURCE_ID/contacts:compute?notificationCategories=NOTIFICATION_CATEGORY&pageSize=PAGE_SIZE&pageToken=NEXT_PAGE_TOKEN

根据您发送的请求,请展开以下选项之一:

执行以下命令:

curl -X GET \
-H "Authorization: Bearer "$(gcloud auth application-default print-access-token) \
https://essentialcontacts.googleapis.com/v1/RESOURCE_TYPE/RESOURCE_ID/contacts:compute?notificationCategories=NOTIFICATION_CATEGORY&pageSize=PAGE_SIZE&pageToken=NEXT_PAGE_TOKEN

执行以下命令:

$cred = gcloud auth application-default print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
  -Method GET `
  -Headers $headers `
  -Uri "https://essentialcontacts.googleapis.com/v1/RESOURCE_TYPE/RESOURCE_ID/contacts:compute?notificationCategories=NOTIFICATION_CATEGORIES&pageSize=PAGE_SIZE&pageToken=NEXT_PAGE_TOKEN" | Select-Object -Expand Content

响应列出了资源的所有联系人和继承的联系人:

{
  "contacts": [
    {
      "name": "projects/my-projects/contacts/1",
      "email": "my-project-contact-1@example.com",
      "notificationCategorySubscriptions": [
        "ALL"
      ],
      "languageTag": "en-US"
    },
    {
      "name": "projects/my-projects/contacts/2",
      "email": "my-project-contact-2@example.com",
      "notificationCategorySubscriptions": [
        "BILLING"
      ],
      "languageTag": "en-US"
    },
    {
      "name": "organizations/my-organization/contacts/1",
      "email": "my-organization-contact@example.com",
      "notificationCategorySubscriptions": [
        "ALL"
      ],
      "languageTag": "en-US"
    }
  ]
}

管理个别重要联系人

您可以在 Google Cloud 控制台的重要联系人页面上或使用 REST API 添加联系人、移除联系人或为联系人分配通知类别。

添加联系人

如需添加联系人,请执行以下操作:

  1. 在 Google Cloud 控制台中,前往重要联系人页面。

    转到“重要联系人”页面

  2. 确保您的项目、文件夹或组织的名称显示在该页面顶部的资源选择器中。资源选择器会显示您当前要管理哪个项目、文件夹或组织的联系人。

  3. 点击 添加联系人

  4. 电子邮件确认电子邮件字段中,输入联系人的电子邮件地址。

  5. 通知类别下拉菜单中,选择您希望联系人接收相关信息的通知类别。如需查看通知类别和建议的联系人的列表,请参阅本页面上的识别联系人

  6. 点击保存

  1. In the Google Cloud console, activate Cloud Shell.

    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.

  2. 如需添加新联系人,请使用 gcloud essential-contacts create 命令:

    gcloud essential-contacts create --email="EMAIL" \
        --notification-categories="NOTIFICATION_CATEGORIES" \
        --language="LANGUAGE" \
        --RESOURCE_TYPE="RESOURCE_ID"

    替换以下值:

    • EMAIL:您的联系人的电子邮件地址。创建联系人后,您便无法更改此字段。
    • NOTIFICATION_CATEGORIES:您希望联系人接收其相关信息的以英文逗号分隔的通知类别列表。该列表可以包含以下任一值:allbillinglegalproduct-updatessecuritysuspensiontechnicaltechnical-incidentsnotification-category-unspecified。选择 all 值可列出所有类别的联系人。

      如需查看每个类别的建议联系人列表,请参阅本页中的识别联系人

    • LANGUAGE:联系人首选通知语言的语言代码。您可以添加任何支持的语言的语言代码。
    • RESOURCE_TYPE:要为其创建联系人的资源类型。使用值 projectfolderorganization
    • RESOURCE_ID:您的 Google Cloud 项目、组织或文件夹 ID。项目 ID 是字母数字字符串,例如 my-project。文件夹和组织 ID 是数字,例如 123456789012

    如果您未指定资源类型和 ID,则 gcloud CLI 会在当前项目中创建联系人。

    如果命令成功,则系统不会返回任何响应。

要添加新联系人,请使用 Essentials Contacts API 的 contacts.create 方法。

在使用下面的请求数据之前,请先进行以下替换:

  • RESOURCE_TYPE:要为其创建联系人的资源类型。使用值 projectsfoldersorganizations
  • RESOURCE_ID:您的 Google Cloud 项目、组织或文件夹 ID。项目 ID 是字母数字字符串,例如 my-project。文件夹和组织 ID 是数字,例如 123456789012
  • EMAIL:您的联系人的电子邮件地址。创建联系人后,您便无法更改此字段。
  • NOTIFICATION_CATEGORY_1NOTIFICATION_CATEGORY_2:您希望联系人接收相关信息的通知类别。此值可以是以下任一值:ALLBILLINGLEGALPRODUCT_UPDATESSECURITYSUSPENSIONTECHNICAL

    如需查看每个类别的建议联系人列表,请参阅本页中的识别联系人

  • LANGUAGE:联系人首选通知语言的语言代码。您可以添加任何支持的语言的语言代码。

请求:

POST essentialcontacts.googleapis.com/v1/RESOURCE_TYPE/RESOURCE_ID/contacts

请求正文:

{
  "email": "EMAIL",
  "notificationCategorySubscriptions": [
    "NOTIFICATION_CATEGORY_1",
    "NOTIFICATION_CATEGORY_2"
  ],
  "languageTag": "LANGUAGE"
}

根据您发送的请求,请展开以下选项之一:

将请求正文保存在名为 request.json 的文件中,然后执行以下命令:

curl -X POST \
-H "Authorization: Bearer "$(gcloud auth application-default print-access-token) \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
https://essentialcontacts.googleapis.com/v1/RESOURCE_TYPE/RESOURCE_ID/contacts
  

将请求正文保存在名为 request.json 的文件中,然后执行以下命令:

$cred = gcloud auth application-default print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
  -Method POST `
  -Headers $headers `
  -ContentType: "application/json; charset=utf-8" `
  -InFile request.json `
  -Uri "https://essentialcontacts.googleapis.com/v1/RESOURCE_TYPE/RESOURCE_ID/contacts" | Select-Object -Expand Content
  

发送请求后,您会收到类似于以下内容的 JSON 响应:

{
  "name": "projects/my-project/contacts/3",
  "email": "my-new-contact@example.com",
  "notificationCategorySubscriptions": [
    "SUSPENSION",
    "TECHNICAL"
  ],
  "languageTag": "en"
}

更改联系人

如需更改将联系人分配到哪个类别,请执行以下操作:

  1. 在 Google Cloud 控制台中,前往重要联系人页面。

    转到“重要联系人”页面

  2. 确保您的项目、文件夹或组织的名称显示在该页面顶部的资源选择器中。资源选择器会显示您当前要管理哪个项目、文件夹或组织的联系人。

  3. 查看方式旁边,选择联系人

  4. 点击您要更改其类别的联系人旁边的

  5. 通知类别下拉菜单中选择所需的通知类别,然后点击保存

  1. In the Google Cloud console, activate Cloud Shell.

    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.

  2. 如需更新现有联系人,请使用 gcloud essential-contacts update 命令:

    gcloud essential-contacts update CONTACT_ID \
        --notification-categories="NOTIFICATION_CATEGORIES" \
        --language="LANGUAGE"
        --RESOURCE_TYPE="RESOURCE_ID"

    替换以下值:

    • CONTACT_ID:您要更新的联系人的数字 ID。如需查看项目、文件夹或组织中所有联系人的 ID,请列出联系人。数字 ID 是联系人名称中 contacts 之后的所有内容。
    • NOTIFICATION_CATEGORIES:您希望联系人接收其相关信息的以英文逗号分隔的新通知类别列表。此列表将替换现有的通知类别列表。

      该列表可以包含以下任一值:allbillinglegalproduct-updatessecuritysuspensiontechnicaltechnical-incidentsnotification-category-unspecified。选择 all 值可列出所有类别的联系人。

      如需查看每个类别的建议联系人列表,请参阅本页中的识别联系人

    • LANGUAGE:联系人首选通知语言的语言代码。您可以添加任何支持的语言的语言代码。
    • RESOURCE_TYPE:在其中定义了联系人的资源类型。使用值 projectfolderorganization
    • RESOURCE_ID:在其中定义了联系人的 Google Cloud 项目、组织或文件夹的 ID。项目 ID 是字母数字字符串,例如 my-project。文件夹和组织 ID 是数字,例如 123456789012

    如果您未指定资源类型和 ID,则 gcloud CLI 会使用当前项目中的指定 ID 更新联系人。如果不存在具有指定 ID 的联系人,则 gcloud CLI 将返回错误。

    如果命令成功,则系统不会返回任何响应。

如需更改现有联系人的通知订阅或首选语言,请使用 Essential Contacts API 的 contacts.patch 方法。

在使用下面的请求数据之前,请先进行以下替换:

  • RESOURCE_TYPE:要为其列出联系人的资源类型。使用值 projectsfoldersorganizations
  • RESOURCE_ID:您的 Google Cloud 项目、组织或文件夹 ID。项目 ID 是字母数字字符串,例如 my-project。文件夹和组织 ID 是数字,例如 123456789012
  • CONTACT_ID:您要更新的联系人的数字 ID。如需查看项目、文件夹或组织中所有联系人的 ID,请列出联系人。数字 ID 是联系人名称中 contacts 之后的所有内容。
  • UPDATE_MASK:可选。描述您更改了联系人的哪个字段的掩码。掩码的格式是以英文逗号分隔的完全限定字段名称列表,例如:notificationCategorySubscriptions,languageTag
  • EMAIL:您的联系人的电子邮件地址。此字段必须与您在请求中添加的 CONTACT_ID 关联的电子邮件地址一致。
  • NOTIFICATION_CATEGORY_1NOTIFICATION_CATEGORY_2:可选。您希望联系人接收相关信息的已更新通知类别。此值可以是以下任一值:ALLBILLINGLEGALPRODUCT_UPDATESSECURITYSUSPENSIONTECHNICAL

    如需查看每个类别的建议联系人列表,请参阅本页中的识别联系人

  • LANGUAGE:联系人首选通知语言的语言代码。您可以添加任何支持的语言的语言代码。

请求:

PATCH essentialcontacts.googleapis.com/v1/RESOURCE_TYPE/RESOURCE_ID/contacts/CONTACT_ID?updateMask="UPDATE_MASK"

请求正文:

{
  "name": "RESOURCE_TYPE/RESOURCE_ID/contact/CONTACT_ID",
  "email": "EMAIL",
  "notificationCategorySubscriptions": [
    "NOTIFICATION_CATEGORY_1",
    "NOTIFICATION_CATEGORY_2"
  ],
  "languageTag": "LANGUAGE"
}

根据您发送的请求,请展开以下选项之一:

将请求正文保存在名为 request.json 的文件中,然后执行以下命令:

curl -X PATCH \
-H "Authorization: Bearer "$(gcloud auth application-default print-access-token) \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
https://essentialcontacts.googleapis.com/v1/RESOURCE_TYPE/RESOURCE_ID/contacts/CONTACT_ID?updateMask="UPDATE_MASK"
  

将请求正文保存在名为 request.json 的文件中,然后执行以下命令:

$cred = gcloud auth application-default print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
  -Method PATCH `
  -Headers $headers `
  -ContentType: "application/json; charset=utf-8" `
  -InFile request.json `
  -Uri "https://essentialcontacts.googleapis.com/v1/RESOURCE_TYPE/RESOURCE_ID/contacts/CONTACT_ID?updateMask="UPDATE_MASK"" | Select-Object -Expand Content
  

发送请求后,您会收到类似于以下内容的 JSON 响应:

{
  "name": "projects/my-project/contacts/2",
  "email": "my-new-contact@example.com",
  "notificationCategorySubscriptions": [
    "ALL"
  ],
  "languageTag": "en"
}

删除联系人

如需删除联系人,请执行以下操作:

  1. 在 Google Cloud 控制台中,前往重要联系人页面。

    转到“重要联系人”页面

  2. 确保您的项目、文件夹或组织的名称显示在该页面顶部的资源选择器中。资源选择器会显示您当前要管理哪个项目、文件夹或组织的联系人。

  3. 查看方式旁边,选择联系人

  4. 点击您要删除的联系人的电子邮件地址旁边的 。然后在对话框中确认您要删除联系人。

  1. In the Google Cloud console, activate Cloud Shell.

    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.

  2. 如需删除现有联系人,请使用 gcloud essential-contacts delete 命令:

    gcloud essential-contacts delete CONTACT_ID \
        --RESOURCE_TYPE="RESOURCE_ID"

    替换以下值:

    • CONTACT_ID:您要删除的联系人的数字 ID。如需查看项目、文件夹或组织中所有联系人的 ID,请列出联系人。数字 ID 是联系人名称中 contacts 之后的所有内容。
    • RESOURCE_TYPE:在其中定义了联系人的资源类型。使用值 projectfolderorganization
    • RESOURCE_ID:在其中定义了联系人的 Google Cloud 项目、组织或文件夹的 ID。项目 ID 是字母数字字符串,例如 my-project。文件夹和组织 ID 是数字,例如 123456789012

    如果您未指定资源类型和 ID,则 gcloud CLI 会使用当前项目中的指定 ID 删除联系人。如果不存在具有指定 ID 的联系人,则 gcloud CLI 将返回错误。

    如果命令成功,则系统不会返回任何响应。

要删除联系人,请使用 Essentials Contacts API 的 contacts.delete 方法。

在使用下面的请求数据之前,请先进行以下替换:

  • RESOURCE_TYPE:要为其列出联系人的资源类型。使用值 projectsfoldersorganizations
  • RESOURCE_ID:您的 Google Cloud 项目、组织或文件夹 ID。项目 ID 是字母数字字符串,例如 my-project。文件夹和组织 ID 是数字,例如 123456789012
  • CONTACT_ID:联系人的数字 ID。要查看项目、文件夹或组织中所有联系人的 ID,请列出联系人

请求:

DELETE essentialcontacts.googleapis.com/v1/RESOURCE_TYPE/RESOURCE_ID/contacts/CONTACT_ID

根据您发送的请求,请展开以下选项之一:

执行以下命令:

curl -X DELETE \
-H "Authorization: Bearer "$(gcloud auth application-default print-access-token) \
https://essentialcontacts.googleapis.com/v1/RESOURCE_TYPE/RESOURCE_ID/contacts/CONTACT_ID
  

执行以下命令:

$cred = gcloud auth application-default print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
  -Method DELETE `
  -Headers $headers `
  -Uri "https://essentialcontacts.googleapis.com/v1/RESOURCE_TYPE/RESOURCE_ID/contacts/CONTACT_ID" | Select-Object -Expand Content
  

如果请求成功,则响应正文将为空。

按类别管理联系人

在 Google Cloud 控制台中,您还可以通过前往重要联系人页面上的类别标签页,按类别管理联系人。

如需添加、更改或删除分配给单个类别的联系人,请执行以下操作:

  1. 在 Google Cloud 控制台中,前往重要联系人页面。

    转到“重要联系人”页面

  2. 确保您的项目、文件夹或组织的名称显示在该页面顶部的资源选择器中。资源选择器会显示您当前要管理哪个项目、文件夹或组织的联系人。

  3. 查看方式旁边,选择类别

  4. 点击您要管理其联系人的类别所在的行中的

  5. 管理分配给该类别的联系人:

    • 如需添加新联系人,请点击添加联系人,然后按照本页中所述的相关步骤添加联系人
    • 如需更改将联系人分配到哪个类别,请点击要更改其类别的联系人旁边的 。然后,从通知类别下拉菜单中选择所需的通知类别,然后点击保存

    • 要删除联系人,请点击该联系人的电子邮件地址旁边的

验证电子邮件传送

您可以向每个类别中的联系人发送测试电子邮件,以验证电子邮件账号是否能够收到来自 Google Cloud的电子邮件。

如需向特定类别中的联系人发送测试电子邮件,请执行以下操作:

  1. 在 Google Cloud 控制台中,前往重要联系人页面。

    转到“重要联系人”页面

  2. 确保您的项目、文件夹或组织的名称显示在该页面顶部的资源选择器中。资源选择器会显示您当前要管理其联系人的项目、文件夹或组织。

  3. 查看方式旁边,选择类别

  4. 点击您要向其联系人发送测试电子邮件的类别所在行中的

  5. 选中您要向其发送电子邮件的联系人旁边的复选框。

  6. 点击发送。系统会向所选联系人发送测试电子邮件。

  7. 与每位联系人沟通,确保他们收到来自 gcp-essential-contacts-noreply@google.com 的测试电子邮件。

使用 Terraform 管理联系人

您可以使用 Terraform 管理通知联系人。联系人在 Terraform 语言中具有以下格式:

resource "google_essential_contacts_contact" "contact" {
  parent = "RESOURCE_TYPE/RESOURCE_ID"
  email = "EMAIL"
  language_tag = "LANGUAGE"
  notification_category_subscriptions = NOTIFICATION_CATEGORIES
}

创建联系人时,请替换以下值:

  • RESOURCE_TYPE:要为其列出联系人的资源类型。使用值 projectsfoldersorganizations
  • RESOURCE_ID:您的 Google Cloud 项目、组织或文件夹 ID。项目 ID 是字母数字字符串,例如 my-project。文件夹和组织 ID 是数字,例如 123456789012
  • EMAIL:您的联系人的电子邮件地址。创建联系人后,您便无法更改此字段。
  • LANGUAGE:可选。联系人首选通知语言的语言代码。您可以添加任何支持的语言的语言代码。
  • NOTIFICATION_CATEGORIES:您希望联系人接收其相关信息的一组通知类别。例如 ["BILLING", "LEGAL"]

    此数组可以包含以下任一值:ALLBILLINGLEGALPRODUCT_UPDATESSECURITYSUSPENSIONTECHNICAL

    如需查看每个类别的建议联系人列表,请参阅本页中的识别联系人

如需添加、修改或移除联系人,请在 Terraform 配置文件中添加、修改或移除联系人资源。

如需了解详情,请参阅 Terraform 重要联系人文档

后续步骤