Alcances de la autorización

Organiza tus páginas con colecciones Guarda y categoriza el contenido según tus preferencias.

Los usuarios deben autorizar proyectos de secuencias de comandos que accedan a sus datos o actúen en su nombre. Cuando un usuario ejecuta una secuencia de comandos que requiere autorización por primera vez, la IU presenta un mensaje para iniciar el flujo de autorización.

Durante este flujo, la IU le indica al usuario lo que la secuencia de comandos desea que haga. Por ejemplo, una secuencia de comandos podría necesitar permiso para leer los mensajes de correo electrónico del usuario o crear eventos en su calendario. El proyecto de secuencia de comandos define estos permisos individuales como permisos de OAuth.

Para la mayoría de las secuencias de comandos, Apps Script detecta automáticamente los alcances que necesitas; puedes ver los alcances que una secuencia de comandos usa en cualquier momento. También puedes establecer alcances de forma explícita en tu manifiesto mediante strings de URL. A veces, se requiere la configuración explícita de los alcances para ciertas aplicaciones como los complementos, ya que las aplicaciones publicadas siempre deben usar los alcances más reducidos posibles.

Durante el flujo de autorización, Apps Script presenta descripciones legibles de los alcances necesarios para el usuario. Por ejemplo, si tu secuencia de comandos necesita acceso de solo lectura a tus hojas de cálculo, el manifiesto puede tener el permiso https://www.googleapis.com/auth/spreadsheets.readonly. Durante el flujo de autorización, una secuencia de comandos con este alcance solicita al usuario que permita a esta aplicación ver las Hojas de cálculo de Google.

Algunos alcances incluyen otros. Por ejemplo, cuando se autoriza, el permiso https://www.googleapis.com/auth/spreadsheets permite el acceso de lectura y escritura a las hojas de cálculo.

Alcances de visualización

Para ver los alcances que tu proyecto de secuencia de comandos necesita actualmente, haz lo siguiente:

  1. Abre el proyecto de secuencia de comandos.
  2. A la izquierda, haz clic en Descripción general .
  3. Consulta los alcances en Alcances de OAuth del proyecto.

Configura permisos explícitos

Apps Script determina automáticamente los permisos que necesita una secuencia de comandos mediante el análisis de su código para detectar llamadas a funciones que las requieran. Para la mayoría de las secuencias de comandos, esto es suficiente y ahorra tiempo, pero en el caso de los complementos y aplicaciones web publicados, debes ejercer un control más directo de los alcances.

A veces, Apps Script asigna automáticamente proyectos con alcances muy permisivos. Esto puede significar que tu secuencia de comandos le pida al usuario más de lo necesario, lo que no es una práctica recomendada. Para las secuencias de comandos publicadas, debes reemplazar los alcances amplios por un conjunto más limitado que cubra las necesidades de la secuencia de comandos y no más.

Para configurar los alcances de tu proyecto de secuencia de comandos de forma explícita, edita el archivo manifest. El campo de manifiesto oauthScopes es un arreglo de todos los alcances que usa el proyecto. Para configurar los alcances de tu proyecto, haz lo siguiente:

  1. Abre el proyecto de secuencia de comandos.
  2. A la izquierda, haz clic en Configuración del proyecto .
  3. Selecciona la casilla de verificación Show "appsscript.json" manifest file in editor.
  4. A la izquierda, haz clic en Editor .
  5. A la izquierda, haz clic en el archivo appsscript.json.
  6. Ubica el campo de nivel superior etiquetado como oauthScopes. Si no está presente, puedes agregarla.
  7. El campo oauthScopes especifica un arreglo de strings. Para establecer los permisos que usa tu proyecto, reemplaza el contenido de este arreglo por los alcances que deseas que use. Por ejemplo:
          {
            ...
            "oauthScopes": [
              "https://www.googleapis.com/auth/spreadsheets.readonly",
              "https://www.googleapis.com/auth/userinfo.email"
            ],
           ...
          }
    
  8. En la parte superior, haz clic en Guardar .

Verificación de OAuth

Algunos alcances de OAuth son sensibles porque permiten el acceso a los datos del usuario de Google. Si tu proyecto de secuencia de comandos usa alcances que permiten el acceso a los datos del usuario, el proyecto debe pasar por la verificación de cliente de OAuth antes de que puedas publicarlo de forma pública como una aplicación web o un complemento. Si deseas obtener más información, consulta las siguientes guías:

Alcances restringidos

Además de los permisos sensibles, algunos se clasifican como restringidos y están sujetos a reglas adicionales que ayudan a proteger los datos del usuario. Si quieres publicar una app web o un complemento que use uno o más alcances restringidos, la app debe cumplir con todas las restricciones especificadas para poder publicarse.

Revisa la lista completa de permisos restringidos antes de intentar publicar. Si tu app usa alguna de ellas, debes cumplir con los requisitos adicionales para alcances específicos de la API antes de publicarla.