Restringe las versiones de TLS
En esta página, se describe cómo puedes evitar el acceso a los recursos de Google Cloud negando las solicitudes realizadas con la seguridad de la capa de transporte (TLS) 1.0 o 1.1.
Descripción general
Google Cloud admite varias versiones del protocolo TLS. Para cumplir con los requisitos de cumplimiento, te recomendamos que deniegues las solicitudes de enlace de clientes que usen versiones anteriores de TLS. Para ello, puedes usar la restricción de la política de la organización gcp.restrictTLSVersion
.
La restricción gcp.restrictTLSVersion
se puede aplicar a organizaciones, carpetas o proyectos en la jerarquía de recursos.
La restricción usa una lista de entidades denegadas, que rechaza los valores explícitos y permite todos los demás. Se producirá un error si intentas usar una lista de entidades permitidas.
Debido al comportamiento de la evaluación de la jerarquía de la política de la organización, la restricción de la versión de TLS se aplica al nodo de recursos especificado y a todos sus elementos secundarios. Por ejemplo, si rechazas la versión 1.0 de TLS para una organización, también se denegará en todas las carpetas y proyectos (secundarios) que descienden de esa organización.
Para anular la restricción de versión de TLS heredada, actualiza la política de la organización en un recurso secundario. Por ejemplo, si la política de tu organización niega TLS 1.0 a nivel de la organización, puedes quitar la restricción para una carpeta secundaria configurando una política de organización independiente en esa carpeta. Si la carpeta tiene recursos secundarios, la política de la carpeta también se aplicará a cada recurso secundario debido a la herencia de políticas.
Antes de comenzar
- Para establecer, cambiar o borrar una política de la organización, primero debes tener el rol de Identity and Access Management (IAM) de Administrador de políticas de la organización (
roles/orgpolicy.policyAdmin
).
Cómo restringir una versión de TLS
Para restringir una o más versiones de TLS, completa los siguientes pasos:
Console
Abre la página Políticas de la organización en la consola de Google Cloud.
Selecciona el selector de proyectos en la parte superior de la página.
En el selector de proyectos, selecciona el recurso para el que deseas configurar la política de la organización.
Selecciona la restricción Restringe la versión de TLS de la lista en la página Políticas de la organización.
Para actualizar la política de la organización para este recurso, haz clic en Editar.
En la página Editar, selecciona Personalizar.
En Aplicación de la política, selecciona una opción de aplicación:
Para combinar y evaluar las políticas de la organización, selecciona Combinar con superior. Para obtener más información sobre la herencia y la jerarquía de recursos, consulta Comprende la evaluación de jerarquías.
Para anular las políticas heredadas de un recurso superior, selecciona Reemplazar.
Haz clic en Agregar regla.
En Valores de la política, el valor predeterminado se establece en Rechazar todo. En su lugar, selecciona Personalizado.
En Tipo de política, selecciona Rechazar.
En Valores personalizados, ingresa una versión de TLS para denegar. Los siguientes valores son valores personalizados válidos:
TLS_VERSION_1
para TLS 1.0TLS_VERSION_1_1
para TLS 1.1
Si restringes más de una versión de TLS, haz clic en Agregar valor y, luego, ingresa el valor en el campo adicional.
Para finalizar y aplicar la política de la organización, haz clic en Guardar (Save).
gcloud
Usa el comando gcloud org-policies set-policy
para establecer una política de organización en el recurso:
gcloud org-policies set-policy POLICY_PATH
POLICY_PATH es la ruta de acceso completa al archivo de políticas de tu organización, que debería verse de la siguiente manera si usas el formato YAML:
name: RESOURCE_TYPE/RESOURCE_ID/policies/gcp.restrictTLSVersion
spec:
rules:
- values:
deniedValues:
- TLS_VERSION_1
- TLS_VERSION_1_1
Reemplaza por lo siguiente:
RESOURCE_TYPE
esorganizations
,folders
oprojects
.RESOURCE_ID
es el ID de la organización, el ID de la carpeta, el ID del proyecto o el número del proyecto, según el tipo de recurso especificado enRESOURCE_TYPE
.
Ejecuta el siguiente comando para verificar que se haya aplicado tu política:
gcloud org-policies describe gcp.restrictTLSVersion --RESOURCE_TYPE=RESOURCE_ID --effective
Reemplaza por lo siguiente:
RESOURCE_TYPE
esorganization
,folder
oproject
.RESOURCE_ID
es el ID de la organización, el ID de la carpeta, el ID del proyecto o el número del proyecto, según el tipo de recurso especificado enRESOURCE_TYPE
.
Prueba la política
La restricción de la política de restricción de la versión de TLS se puede probar en cualquier servicio dentro del alcance. En el siguiente ejemplo de comando curl, se valida la restricción de versión de TLS para un bucket de Cloud Storage.
curl -X GET -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://storage.googleapis.com/storage/v1/b/GCS_BUCKET_NAME/o" \ --tlsvTLS_VERSION --tls-max TLS_VERSION --ciphers DEFAULT@SECLEVEL=0
No hay espacio entre --tlsv
y el valor. Por ejemplo: --tlsv1.1
.
Reemplaza por lo siguiente:
GCS_BUCKET_NAME
es el nombre de un bucket de Cloud Storage en tu proyecto, comomybucketname
.TLS_VERSION
es una versión de TLS, como1.0
o1.1
, que se deniega en la política configurada.
En el siguiente ejemplo de solicitud curl
, se muestra GCS_BUCKET_NAME configurado como mybucketname
y TLS_VERSION configurado como 1.1
:
curl -X GET -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://storage.googleapis.com/storage/v1/b/mybucketname/o" \ --tlsv1.1 --tls-max 1.1 --ciphers DEFAULT@SECLEVEL=0
Si la política de la organización está configurada para restringir TLS_VERSION_X
, fallará cualquier intento de acceder a recursos con TLS_VERSION_X
en el proyecto restringido por políticas en este comando de ejemplo. Se muestra un mensaje de error que describe el motivo de esta falla.
Request is disallowed by organization's constraints/gcp.restrictTLSVersion constraint for 'projects/PROJECT_NUMBER' to use service 'SERVICE_NAME.googleapis.com' by violated TLS version `TLS_VERSION_X`
En esta salida, se incluyen los siguientes valores:
PROJECT_NUMBER
: Es el número de proyecto que aloja el recurso al que se hace referencia en el comando anterior.SERVICE_NAME
: Es el nombre del servicio dentro del alcance bloqueado por la política de restricción de TLS.
Servicios compatibles
La restricción de versión de TLS es compatible con cualquier API de recurso Google Cloud que tenga un encabezado firmado por Google Front End (GFE).
Servicios no admitidos
La restricción de la política de la organización de restricción de la versión de TLS no se aplica a los siguientes servicios:
- App Engine (
*.appspot.com
) - Funciones de Cloud Run (
*.cloudfunctions.net
) - Cloud Run (
*.run.app
) - Private Service Connect
- Dominios personalizados
Para restringir las versiones de TLS para estos servicios, usa Cloud Load Balancing junto con las políticas de SSL. También puedes
usar la restricción constraints/compute.requireSslPolicy
predefinida
junto con restricciones personalizadas para las políticas de SSL para
aplicar restricciones de versión de TLS y conjunto de algoritmos de cifrado para tus balanceadores de cargas.
¿Qué sigue?
- Obtén información sobre los productos compatibles para cada paquete de control.