限制 TLS 版本
本页面介绍如何通过拒绝使用传输层安全协议 (TLS) 1.0 或 1.1 发出的请求来阻止对 Google Cloud 资源的访问。
概览
Google Cloud 支持多个 TLS 协议版本。为了满足合规性要求,您可能需要拒绝使用旧版 TLS 的客户端的握手请求。
此功能由 gcp.restrictTLSVersion
组织政策限制条件提供。该限制条件可应用于资源层次结构中的组织、文件夹或项目。gcp.restrictTLSVersion
限制条件使用拒绝列表,拒绝拒绝明确的值并允许所有其他值。如果您尝试使用许可名单,则会发生错误。
由于组织政策层次结构评估的行为,TLS 版本限制适用于指定的资源节点及其所有子节点。例如,如果您拒绝某一组织的 TLS 1.0 版,则该组织及其所有子文件夹和项目(子项)也会被拒绝。
您可以通过更新子资源的组织政策来替换继承的 TLS 版本限制。例如,如果您的组织政策在组织级别拒绝 TLS 1.0,则您可以通过为子文件夹设置单独的组织政策来移除限制。如果文件夹包含任何子文件夹,则该文件夹的政策也将因政策继承而应用于每个子资源。
准备工作
- 如需设置、更改或删除组织政策,您必须先获得 Organization Policy Administrator (
roles/orgpolicy.policyAdmin
) Identity and Access Management (IAM) 角色。
限制 TLS 版本
如需限制一个或多个 TLS 版本,请完成以下步骤:
控制台
打开 Google Cloud 控制台中的组织政策页面。
在页面顶部选择项目选择器。
从项目选择器中,选择您要设置组织政策的资源。
从组织政策页面上的列表中选择限制 TLS 版本限制条件。
要为该资源自定义组织政策,请点击修改。
在修改页面,选择自定义。
在强制执行下,选择强制执行选项:
要合并和评估组织政策,请选择与父资源规则合并。如需详细了解继承和资源层次结构,请参阅了解层次结构评估。
如需覆盖从父资源继承的政策,请选择替换。
点击添加规则。
在政策值下,默认值为全部拒绝。改为选择自定义。
在政策类型下,选择拒绝。
在自定义值下,输入要拒绝的 TLS 版本。以下值是有效的自定义值:
TLS_VERSION_1
,适用于 TLS 1.0TLS_VERSION_1_1
,适用于 TLS 1.1
如果您要限制多个 TLS 版本,请点击添加值,然后在附加字段中输入该值。
要完成并应用组织政策,请点击保存。
gcloud
使用 gcloud org-policies set-policy
命令为所需资源设置组织政策:
gcloud org-policies set-policy POLICY_PATH
POLICY_PATH 是组织政策文件的完整路径,如果使用 YAML 格式,则内容应如下所示:
name: RESOURCE_TYPE/RESOURCE_ID/policies/gcp.restrictTLSVersion
spec:
rules:
- values:
deniedValues:
- TLS_VERSION_1
- TLS_VERSION_1_1
替换为以下内容:
RESOURCE_TYPE
是organizations
、folders
或projects
。RESOURCE_ID
是您的组织 ID、文件夹 ID、项目 ID 或项目编号,具体取决于在RESOURCE_TYPE
中指定的资源类型。
运行以下命令以验证是否已应用政策:
gcloud org-policies describe gcp.restrictTLSVersion --RESOURCE_TYPE=RESOURCE_ID --effective
替换为以下内容:
RESOURCE_TYPE
是organization
、folder
或project
。RESOURCE_ID
是您的组织 ID、文件夹 ID、项目 ID 或项目编号,具体取决于在RESOURCE_TYPE
中指定的资源类型。
支持的服务
以下服务支持 TLS 版本限制:
- apigateway.googleapis.com
- appengine.googleapis.com
- artifactregistry.googleapis.com
- assuredworkloads.googleapis.com
- bigquery.googleapis.com
- bigqueryreservation.googleapis.com
- bigtableadmin.googleapis.com
- binaryauthorization.googleapis.com
- cloudasset.googleapis.com
- cloudbuild.googleapis.com
- clouddebugger.googleapis.com
- cloudfunctions.googleapis.com
- cloudkms.googleapis.com
- cloudresourcemanager.googleapis.com
- cloudscheduler.googleapis.com
- cloudsearch.googleapis.com
- cloudtasks.googleapis.com
- cloudtrace.googleapis.com
- composer.googleapis.com
- compute.googleapis.com
- container.googleapis.com
- containeranalysis.googleapis.com
- datacatalog.googleapis.com
- dataflow.googleapis.com
- datafusion.googleapis.com
- datalabeling.googleapis.com
- datamigration.googleapis.com
- dataproc.googleapis.com
- datastore.googleapis.com
- deploymentmanager.googleapis.com
- dialogflow.googleapis.com
- dlp.googleapis.com
- dns.googleapis.com
- domains.googleapis.com
- file.googleapis.com
- firebaserules.googleapis.com
- firestore.googleapis.com
- genomics.googleapis.com
- healthcare.googleapis.com
- iam.googleapis.com
- iamcredentials.googleapis.com
- iap.googleapis.com
- identitytoolkit.googleapis.com
- language.googleapis.com
- lifesciences.googleapis.com
- logging.googleapis.com
- managedidentities.googleapis.com
- memcache.googleapis.com
- metastore.googleapis.com
- ml.googleapis.com
- monitoring.googleapis.com
- networkmanagement.googleapis.com
- notebooks.googleapis.com
- osconfig.googleapis.com
- policytroubleshooter.googleapis.com
- privateca.googleapis.com
- pubsub.googleapis.com
- pubsublite.googleapis.com
- recommender.googleapis.com
- redis.googleapis.com
- run.googleapis.com
- runtimeconfig.googleapis.com
- secretmanager.googleapis.com
- servicecontrol.googleapis.com
- servicedirectory.googleapis.com
- servicenetworking.googleapis.com
- sourcerepo.googleapis.com
- spanner.googleapis.com
- sqladmin.googleapis.com
- storage.googleapis.com
- storagetransfer.googleapis.com
- sts.googleapis.com
- texttospeech.googleapis.com
- tpu.googleapis.com
- videointelligence.googleapis.com
- vision.googleapis.com
- workflowexecutions.googleapis.com
- workflows.googleapis.com