Aumentando a segurança no script de aplicativos

Ao criar projetos de script do Google Apps, especialmente os complementos, obter confiança do usuário é tão crucial quanto a funcionalidade que você fornece. Uma parte essencial da construção de que a confiança está solicitando apenas as permissões que seu script precisa absolutamente. É aqui que entra a anotação @onlyCurrentDoc, um recurso simples, mas poderoso, para melhorar a segurança dos seus scripts. O problema com os escopos amplos por padrão, o Script do Apps faz um bom trabalho ao determinar os escopos de OAuth necessários, digitalizando seu código (escopos de autorização). No entanto, às vezes pode ser zeloso, solicitando escopos amplos que concedam acesso a todos os arquivos de um usuário de um determinado tipo (por exemplo, todas as folhas do Google). Para um usuário, ver um prompt solicitando permissão para “visualizar e gerenciar todas as suas planilhas do Google” pode ser alarmante, especialmente se o seu complemento for destinado apenas a funcionar na folha que eles abriram atualmente. É aqui que você pode e deve ser mais específico. Apresentando @onlyCurrentDoc A anotação @onlyCurrentDoc é um pedaço do JSDOC que você adiciona a um comentário no nível do arquivo em seu script. Ele informa ao Script do Apps para restringir seu acesso apenas ao documento, planilha ou formação de que o script está atualmente vinculado (autorização para serviços do Google). A documentação oficial explica da seguinte maneira: se você estiver criando um complemento ou outro script que usa o serviço de planilha, o serviço de documentação, o serviço desliza ou o serviço de formulários, você pode forçar a caixa de diálogo de autorização para solicitar apenas acesso a arquivos nos quais o complemento ou o script é usado, em vez de todas as planilhas, documentos ou formulários de um usuário. Para isso, inclua a seguinte anotação JSDOC em um comentário no nível do arquivo: / ** * @onlyCurrentDoc * / Ao adicionar este comentário simples, você altera o escopo de autorização de um para um amplo para um muito mais específico e amigável. De Broad to Specific: O Escopo Currentonly quando você usa @onLyCurrentDoc, o escopo OAuth solicitado pelo seu script altera. Por exemplo: torna -se .CurrentoNly Torna -se .Currentonly .Currentonly Isso diz ao usuário que seu script só terá acesso ao arquivo atual, que é uma mensagem muito mais tranquilizadora. Prática recomendada: escopos explícitos em appsscript.json Enquanto o @onlyCurrentDoc é um ótimo começo, a melhor prática para aplicativos publicados é definir explicitamente seus escopos no arquivo de manifesto appssscript.json (escopos de autorização). Isso oferece controle total e torna claro as permissões do seu script. Aqui está um exemplo de como você declararia o escopo Currentonly em seu manifesto: {“Timebone”: “America/New_york”, “Dependências”: {}, “ExceptionLogging”: “Stackdriver”, “RuntTimeVersion”: “V8”, “Oauthscopes”: [
“.currentonly”,

]
} Digite o modo de saída de tela cheia do modo de tela completa A exceção rara: @NotonLyCurrentDoc Em alguns casos raros, você pode ter um script que inclui uma biblioteca que usa @onlyCurrentDoc, mas seu script principal precisa de acesso mais amplo. Nesta situação, você pode usar a anotação @NotonLyCurrentDoc para substituir a restrição da biblioteca (autorização dos serviços do Google). Como afirma a documentação: uma anotação oposta, @NotonLyCurrentDoc, está disponível se o seu script incluir uma biblioteca que declara @onlyCurrentDoc, mas o script mestre realmente requer acesso a mais do que o arquivo atual. Conclusão usando @onlycurrentDoc e os escopos de currentonly correspondentes é uma maneira simples e eficaz de melhorar a segurança dos projetos de script de seus aplicativos e criar confiança com seus usuários. É uma prática recomendada fundamental para qualquer script que funcione em um único documento e é especialmente importante para qualquer complemento que você pretenda publicar. Recursos adicionais

Fonte

Você pode ter perdido