En esta página se explica el ajuste de segmento de prevención de acceso público y la restricción de la política de organización de prevención de acceso público relacionada. Si usa el ajuste o la restricción, se limitan las entidades (como los usuarios anónimos de Internet) a las que se puede conceder acceso a sus datos. Para obtener una descripción general de las opciones de control de acceso, consulta Descripción general del control de acceso.
Información general
La prevención del acceso público protege los segmentos y objetos de Cloud Storage para que no se expongan públicamente por error. Si aplicas la prevención del acceso público, nadie podrá hacer públicos los datos de los segmentos aplicables mediante políticas de gestión de identidades y accesos o listas de control de acceso. Hay dos formas de aplicar la prevención del acceso público:
Puedes aplicar la prevención de acceso público en segmentos concretos.
Si tu segmento está incluido en una organización, puedes aplicar la medida para impedir el acceso público mediante la restricción de la política de organización
storage.publicAccessPrevention
a nivel de proyecto, carpeta u organización.
¿Deberías usar la prevención de acceso público?
Usa la prevención de acceso público si sabes que tus datos nunca deben exponerse en Internet. Para ofrecer la máxima seguridad a tus recursos, aplica la prevención del acceso público en el nivel más alto posible de tu organización.
No debes usar la prevención de acceso público si necesitas que el segmento sea público para casos prácticos como el alojamiento de sitios web estáticos. Para crear excepciones en el caso de los segmentos de organizaciones que, de lo contrario, aplican medidas para impedir el acceso público, inhabilita esta opción en el proyecto específico que contenga el segmento.
Comportamiento cuando se aplica
Los recursos sujetos a la prevención de acceso público tienen el siguiente comportamiento:
Las solicitudes a cubos y objetos autorizadas mediante
allUsers
yallAuthenticatedUsers
fallan con un código de estado HTTP401
o403
.Las políticas de gestión de identidades y accesos y las listas de control de acceso que conceden acceso a
allUsers
yallAuthenticatedUsers
se mantienen, pero se anulan mediante la prevención de acceso público.Las solicitudes para crear segmentos u objetos con
allUsers
yallAuthenticatedUsers
en sus políticas de gestión de identidades y accesos o LCAs fallan, con la siguiente excepción:- Si un segmento tiene una LCA de objeto predeterminada que contiene
allUsers
, las solicitudes para crear objetos en ese segmento se completarán correctamente. Las LCA de estos objetos contienenallUsers
, peroallUsers
se anula mediante la prevención de acceso público.
- Si un segmento tiene una LCA de objeto predeterminada que contiene
Las solicitudes para añadir
allUsers
yallAuthenticatedUsers
a una política de gestión de identidades y accesos o a una LCA fallan con412 Precondition Failed
.
Herencia
Aunque un segmento no tenga la opción de impedir el acceso público habilitada en su configuración, puede heredar esta opción si la restricción de la política de organización storage.publicAccessPrevention
está definida en el proyecto, la carpeta o la organización en los que se encuentra el segmento. Por este motivo, el estado del contenedor solo puede ser enforced
o inherited
.
Si los metadatos de prevención de acceso público de un segmento se definen como
enforced
, se aplica la prevención de acceso público al segmento.Si los metadatos de prevención de acceso público de un segmento se definen como
inherited
, la prevención de acceso público se determina mediante la restricción de la política de organizaciónstorage.publicAccessPrevention
:Si
storage.publicAccessPrevention
tiene el valorTrue
en el proyecto que contiene el segmento, se aplicará la prevención de acceso público al segmento.Si
storage.publicAccessPrevention
tiene el valorFalse
en el proyecto que contiene el segmento, la medida para impedir el acceso público no se aplica al segmento.Si no se define
storage.publicAccessPrevention
en el proyecto que contiene el segmento, la prevención del acceso público se determina mediante el valor destorage.publicAccessPrevention
definido en la carpeta (si la hay) que contiene el proyecto.Del mismo modo, si la carpeta que contiene el segmento tampoco define ningún valor para
storage.publicAccessPrevention
, la prevención del acceso público se determina mediante el valor destorage.publicAccessPrevention
definido por la organización que contiene el proyecto.Si
storage.publicAccessPrevention
no se define para ningún recurso, la prevención del acceso público no se aplicará al segmento.
Comportamiento si está inhabilitada
Cuando la prevención del acceso público ya no se aplica a un recurso, ocurre lo siguiente:
Las políticas de gestión de identidades y accesos y las listas de control de acceso que conceden acceso a
allUsers
yallAuthenticatedUsers
se aplican y hacen que los datos sean accesibles para el público.Las solicitudes para crear políticas de gestión de identidades y accesos o listas de control de acceso que permitan acceder a
allUsers
yallAuthenticatedUsers
se completan correctamente.Un objeto creado con la prevención de acceso público sin ACL públicas puede ser accesible para el público si se ha creado en un segmento de acceso público.
Puedes inhabilitar la medida para impedir el acceso público a un proyecto, una carpeta o una organización en cualquier momento. Los segmentos con el ajuste enforced
seguirán teniendo habilitada la prevención del acceso público, aunque la inhabilite en un proyecto, una carpeta o una organización que contenga el segmento.
Cuestiones importantes
Cuando aplicas la prevención del acceso público a los recursos, se bloquean todas las autorizaciones y las nuevas incorporaciones de
allUsers
yallAuthenticatedUsers
. Esto puede afectar a tus segmentos de las siguientes formas:Si una aplicación depende de
allUsers
yallAuthenticatedUsers
para acceder a tus datos o crear recursos públicos, habilitar la prevención del acceso público puede hacer que la aplicación deje de funcionar. Para obtener información sobre cómo identificar los recursos públicos de los que pueden depender otras aplicaciones, despliega el siguiente contenido:Cómo identificar recursos públicos
Antes de aplicar la medida para evitar el acceso público, te recomendamos que hagas un inventario de tus recursos públicos para asegurarte de que no afectas a otras cargas de trabajo que dependan de que tus datos sean públicos. Puede localizar los contenedores, los objetos y las carpetas gestionadas que son públicos mediante los siguientes métodos:
- Para identificar las cargas de trabajo que podrían acceder a tus datos públicos, configura registros de uso, que pueden proporcionar información sobre las solicitudes de acceso a datos realizadas a recursos públicos.
-
Para determinar si un bucket puede ser accesible para el público, consulta las políticas de gestión de identidades y accesos del bucket. Las políticas que asignan roles a la entidad principal
allUsers
oallAuthenticatedUsers
pueden hacer que el segmento sea accesible al público. Como alternativa a obtener la política de gestión de identidades y accesos de cada uno de los contenedores, puedes usar Cloud Asset Inventory para ver las políticas de todos los contenedores de un proyecto, una carpeta o una organización.Si hay carpetas gestionadas en tu contenedor, también puedes consultar las políticas de gestión de identidades y accesos de las carpetas gestionadas para identificar qué carpetas gestionadas pueden ser accesibles públicamente.
- Para determinar si los objetos individuales pueden ser accesibles públicamente, comprueba si el objeto tiene LCA.
Las ACLs que conceden acceso al principal
allUsers
oallAuthenticatedUsers
hacen que el objeto sea potencialmente accesible al público.
Registros de auditoría de Cloud no monitoriza el acceso a objetos públicos. Si los registros de acceso a datos están habilitados cuando aplicas la medida para impedir el acceso público, es posible que se genere un mayor número de registros, que se tendrán en cuenta para calcular tu cuota de ingesta de registros y que pueden generar cargos de Cloud Audit Logs. Este aumento puede deberse a que el acceso que antes era público y no se registraba puede asociarse a autorizaciones específicas, que sí se registran.
La prevención del acceso público no afecta a las URLs firmadas, que dan acceso limitado en el tiempo y de alcance reducido a cualquier persona que las utilice.
Los proyectos que no estén asociados a una organización no pueden usar políticas de organización. Los segmentos de este tipo de proyectos deben usar la configuración a nivel de segmento.
La prevención del acceso público es altamente coherente para la lectura después de la actualización, pero la aplicación puede tardar hasta 10 minutos en surtir efecto.
Una vez que se aplique la medida, es posible que tus objetos sigan siendo accesibles públicamente a través de una caché de Internet durante un tiempo, en función del
Cache-Control
ajuste de los objetos. Por ejemplo, si elCache-Control:max-age
de un objeto se define con el valor predeterminado de 3600 segundos, el objeto puede permanecer en una caché de Internet durante ese periodo.
Siguientes pasos
- Consulta cómo usar la prevención de acceso público.
- Consulta más información sobre las políticas de la organización.