Soluciona problemas

401: Sin autorización

Problema: Las solicitudes que se envían directamente a un depósito público o mediante Cloud CDN fallan con un error HTTP 401: Unauthorized y una respuesta Authentication Required.

Solución: Verifica que tu cliente, o cualquier proxy intermedio, no agregue un encabezado Authorization a las solicitudes a Cloud Storage. Cualquier solicitud con un encabezado Authorization, incluso si está vacía, se valida como si fuera un intento de autenticación.

403: Cuenta inhabilitada

Problema: Intenté crear un depósito, pero obtuve un error 403 Account Disabled.

Solución: Este error indica que aún no has activado la facturación para el proyecto asociado. Si quieres conocer los pasos para habilitar la facturación, consulta la sección Habilita la facturación para un proyecto.

Si la facturación está activada y sigues recibiendo este mensaje de error, puedes comunicarte con el servicio de asistencia con el ID del proyecto y una descripción de tu problema.

403: Acceso denegado

Problema: Intenté enumerar los objetos en mi depósito, pero se generó un error 403 Access Denied o un mensaje similar a Anonymous caller does not have storage.objects.list access.

Solución: Comprueba que tus credenciales sean correctas. Por ejemplo, si usas gsutil, verifica que las credenciales almacenadas en el archivo .boto sean correctas. Además, confirma que gsutil use el archivo .boto previsto. Para ello, usa el comando gsutil version -l y revisa la entrada config path(s).

Si suponemos que usas las credenciales correctas, ¿se están enrutando tus solicitudes a través de un proxy con HTTP (en lugar de HTTPS)? En caso afirmativo, revisa si tu proxy está configurado para quitar el encabezado Authorization de estas solicitudes. Si es así, asegúrate de usar HTTPS en lugar de HTTP para tus solicitudes.

409: Conflicto

Problema: Intenté crear un depósito, pero recibí el siguiente error:

409 Conflict. Sorry, that name is not available. Please try a different one.

Solución: El nombre del depósito que intentaste usar (p. ej., gs://cats o gs://dogs) ya está en uso. Cloud Storage tiene un espacio de nombres global, por lo que no puedes nombrar un depósito con el mismo nombre que un depósito existente. Elige un nombre que no esté en uso.

Servidores proxy

Problema: Me conecté a través de un servidor proxy, ¿qué debo hacer?

Solución: Para acceder a Cloud Storage a través de un servidor proxy, debes permitir el acceso a estos dominios:

  • accounts.google.com para crear tokens de autenticación OAuth2 a través de gsutil config
  • oauth2.googleapis.com para realizar intercambios de tokens OAuth2
  • *.googleapis.com para solicitudes de almacenamiento

Si tu servidor proxy o tu política de seguridad no admiten listas blancas por dominio y, en su lugar, requieren listas blancas por bloqueo de red IP, es muy recomendable que configures tu servidor proxy para todos los rangos de direcciones IP de Google. Puedes encontrar los rangos de direcciones con una consulta a los datos de WHOIS en ARIN. Como práctica recomendada, debes revisar con frecuencia tu configuración de proxy para asegurarte de que coincida con las direcciones IP de Google.

No se recomienda configurar el proxy con las direcciones IP individuales que se obtienen de las búsquedas únicas de oauth2.googleapis.com y storage.googleapis.com. Debido a que los servicios de Google están expuestos a través de nombres de DNS que se asignan a una gran cantidad de direcciones IP que pueden cambiar con el tiempo, la configuración de tu proxy en una única búsqueda puede llevar a fallas en la conexión a Cloud Storage.

Si tus solicitudes se enrutan a través de un servidor proxy, es posible que debas consultar a tu administrador de red para asegurarte de que el proxy no borre el encabezado Authorization que contiene tus credenciales. Sin el encabezado Authorization, tus solicitudes se rechazan y recibes un error MissingSecurityHeader.

gsutil stat

Problema: Intenté usar el comando gsutil stat para mostrar el estado del objeto de un subdirectorio y recibí un error.

Solución: Cloud Storage usa un espacio de nombres plano para almacenar objetos en depósitos. Cuando usas barras ("/") en los nombres de objetos para hacer como si estuvieran en una estructura jerárquica, el comando gsutil stat trata la barra final como parte del nombre del objeto.

Por ejemplo, si ejecutas el comando gsutil -q stat gs://my-bucket/my-object/, gsutil busca información sobre el objeto my-object/ (con una barra final), en lugar de operar en objetos anidados en my-bucket/my-object/. A menos que realmente tengas un objeto con ese nombre, la operación falla.

Para la lista de subdirectorios, usa gsutil ls en su lugar.

gcloud auth

Problema: Intenté autenticar gsutil con el comando gcloud auth, pero todavía no puedo acceder a mis objetos o depósitos.

Solución: Es posible que tu sistema tenga la versión independiente y la versión del SDK de Cloud de gsutil instaladas en él. Ejecuta el comando gsutil version -l y verifica el valor de using cloud sdk. Si es False, tu sistema usa la versión independiente de gsutil cuando ejecutas los comandos. Puedes quitar esta versión de gsutil de tu sistema o puedes autenticar con el comando gsutil config.

Depósito configurado como un sitio web

Los siguientes son problemas comunes que puedes encontrar en Aloja un sitio web estático.

Entrega mediante HTTPS

Problema: Quiero que mi contenido se entregue a través de HTTPS sin usar un balanceador de cargas.

Solución: Puedes entregar el contenido estático a través de HTTPS mediante URI directos como https://storage.googleapis.com/my-bucket/my-object. Si deseas más opciones para entregar el contenido a través de un dominio personalizado con SSL, puedes realizar lo siguiente:

Verificación del dominio

Problema: No puedo verificar mi dominio.

Solución: Normalmente, el proceso de verificación en Search Console te dirige a subir un archivo a tu dominio, pero es posible que no tengas una forma de hacerlo sin tener primero un depósito asociado, que solo puedes crear después de realizar la verificación del dominio.

En este caso, verifica la propiedad. Para ello usa el método de verificación del proveedor de nombres de dominio. Para lograr esto, consulta los pasos en Verificación de propiedad del dominio. Esta verificación se puede hacer antes de crear el depósito.

Página inaccesible

Problema: Recibo un mensaje de error Access denied de una página web que entrega mi sitio web.

Solución: Comprueba que el objeto se comparte públicamente. Si no es así, consulta Haz públicos los datos a fin de obtener instrucciones para hacerlo.

Si anteriormente subiste y compartiste un objeto, pero luego subiste una versión nueva del mismo, entonces debes compartir el objeto públicamente. Esto se debe a que el permiso público se sobrescribe con la carga nueva.

Descarga de contenido

Problema: Se me pide que descargue el contenido de mi página, en lugar de poder verlo en mi navegador.

Solución: Si especificas un MainPageSuffix como un objeto que no tiene un tipo de contenido web, en lugar de entregar a la página, se solicita a los visitantes del sitio que descarguen el contenido. Para resolver este problema, actualiza la entrada de metadatos tipo de contenido a un valor adecuado, como text/html. Consulta Edita los metadatos de objetos a fin de obtener instrucciones para hacerlo.

Descarga el contenido mediante storage.cloud.google.com

Problema: Descargo mi contenido público de storage.cloud.google.com y recibo un error 403 - Forbidden cuando navego al objeto público

https://storage.cloud.google.com/[BUCKET_NAME]/[OBJECT_NAME]
en el navegador.

Solución: Si usas storage.cloud.google.com para descargar objetos, realizas lo que se llama una descarga del navegador autenticada; siempre se usa autenticación basada en cookies, incluso cuando los objetos son de acceso público a allUsers. Si habilitaste los registros de auditoría de Cloud Storage, una de las restricciones de esa función es la inhabilitación de las descargas autenticadas del navegador; estas descargas generan una respuesta 403 cuando los registros de auditoría se habilitan.

Para evitar este problema, inhabilita los registros de auditoría o usa las llamadas directas a la API, que admiten descargas sin autenticación.

301: Movido permanentemente

Problema: El acceso a una ruta de directorio muestra un objeto vacío y un código de respuesta 301 HTTP.

Solución: Si tu navegador descarga un objeto de cero bytes y obtienes un código de respuesta HTTP 301 cuando accedes a un directorio, como http://www.example.com/dir/, es probable que tu depósito contenga un objeto vacío con ese nombre. Sigue los pasos a continuación para comprobar que este es el caso y solucionar el problema:

  1. Abre el navegador de Cloud Storage en Google Cloud Console.
    Abrir el navegador de Cloud Storage
  2. Haz clic en el botón Activar Cloud Shell en la parte superior de Google Cloud Console.Activar Cloud Shell
  3. Ejecuta gsutil ls -R gs://www.example.com/dir/. Si el resultado incluye http://www.example.com/dir/, tienes un objeto vacío en esa ubicación.
  4. Quita el objeto vacío con el comando: gsutil rm gs://www.example.com/dir/.

Ahora puedes acceder a http://www.example.com/dir/ y hacer que muestre el archivo index.html de ese directorio en lugar del objeto vacío.

Información sobre los errores en el navegador de Cloud Storage

Problema: Cuando uso el navegador de Cloud Storage para realizar una operación, recibo un mensaje de error genérico. Por ejemplo, veo un mensaje de error cuando intento borrar un depósito, pero no veo los detalles del motivo por el cual falló la operación.

Solución: Debes usar las notificaciones de Google Cloud Console a fin de ver información detallada sobre la operación que produjo errores, mediante los siguientes pasos:

  1. Haz clic en el botón Notificaciones en el encabezado de Google Cloud Console.

    Notificaciones

    En un menú desplegable, se muestran las operaciones más recientes que realizó Google Cloud Console.

  2. Haz clic en el elemento del que deseas obtener más información.

    Se abrirá una página que muestra información detallada sobre la operación.

  3. Haz clic en cada fila para expandir la información del error detallada.

    A continuación, se muestra un ejemplo de información de error de una operación de eliminación de depósito con errores, que explica que una política de retención de depósitos impidió la eliminación del depósito.

    Detalles del error de la eliminación del depósito

Próximos pasos