Los usuarios deben autorizar proyectos de secuencia 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 necesita permiso. 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 alcances de OAuth.
Para la mayoría de las secuencias de comandos, Apps Script detecta de forma automática los permisos que necesitas; puedes ver los alcances que una secuencia de comandos usa en cualquier momento. También puedes configurar permisos de forma explícita en tu manifiesto mediante strings de URL. A veces, se requiere la configuración explícita de 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 le presenta al usuario descripciones legibles de los alcances necesarios. Por ejemplo, si tu secuencia de comandos necesita acceso de solo lectura a tus hojas de cálculo, el manifiesto puede tener el alcance https://www.googleapis.com/auth/spreadsheets.readonly
. Durante el flujo de autorización, una secuencia de comandos con este alcance le pide al usuario que permita que esta aplicación "ve tus Google Spreadsheets".
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
Puedes ver los alcances que requiere el proyecto de la secuencia de comandos de la siguiente manera:
- Abre el proyecto de la secuencia de comandos.
- A la izquierda, haz clic en Descripción general .
- 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 llamadas a funciones que los requieran. Para la mayoría de las secuencias de comandos, esto es suficiente y te permite ahorrar tiempo, pero para los complementos y las aplicaciones web publicados debes tener un control más directo de los alcances.
A veces, Apps Script asigna automáticamente alcances muy permisivos a los proyectos. Esto puede implicar que la secuencia de comandos solicite 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 de forma explícita los permisos que usa el proyecto de secuencia de comandos, edita su 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:
- Abre el proyecto de la secuencia de comandos.
- A la izquierda, haz clic en Configuración del proyecto .
- Seleccione la casilla de verificación Mostrar el archivo de manifiesto "appsscript.json" en el editor.
- A la izquierda, haz clic en Editor .
- A la izquierda, haz clic en el archivo
appsscript.json
. - Ubica el campo de nivel superior etiquetado como
oauthScopes
. Si no lo tienes, puedes agregarlo. - En el campo
oauthScopes
, se especifica un arreglo de strings. Para configurar 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" ], ... }
- 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 permisos que permiten el acceso a los datos del usuario, el proyecto debe someterse a la verificación del cliente de OAuth para que puedas publicarlos de forma pública como una aplicación web o un complemento. Si deseas obtener más información, consulta las siguientes guías:
- Verificación de clientes de OAuth para Apps Script
- Apps sin verificar
- Preguntas frecuentes sobre la verificación de OAuth
- Servicio de las API de Google: Política de Datos del Usuario
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 antes de publicarse.
Revisa la lista completa de permisos restringidos antes de intentar publicar. Si tu app usa alguno de ellos, debes cumplir con los requisitos adicionales para permisos específicos de la API antes de realizar la publicación.