Как защитить код приложения Script в электронной таблице Google?
Я написал код для своей электронной таблицы Google с помощью редактора script.
Я хочу поделиться этой таблицей с моими клиентами, но я не хочу делиться написанным мной кодом.
Этот код добавляет в мою электронную таблицу меню, которое содержит полезные функции, которые должны работать/выполняться, когда мои клиенты открывают эту таблицу с условием, которое: они не должны видеть его код.
Это легко с Excel, но с электронной таблицей Google я не знаю., Я много искал в Google, но все они дают представление о том, как делиться электронной таблицей. Например, в режиме "Просмотр", но в этом случае возникает проблема: моя функция меню, которая добавляет меню, является "onOpen" и не запускается, когда мои клиенты открывают ее.
Как реализовать это в Google Spreadsheet?
Ответы
Ответ 1
Короткий ответ
Publish ваш script как дополнение. Имейте в виду, что вы можете сделать это конфиденциальным, совместно с группой Google.
Объяснение
Добавления были добавлены в 2014 году. Это лучше, чем использование библиотеки, потому что из вашего дополнения ничего не будет.
Даже если ваши пользователи-аддоны смогут получить URL-адрес проекта Google Apps script из crx файла из вашего аддона, так как он не будет использоваться совместно, они не смогут получить доступ к этому коду.
Обратите внимание, что невозможно получить доступ к серверному коду Google Apps script с помощью инструментов разработчика Chrome или другого подобного программного обеспечения.
Ссылки
Ответ 2
использовать библиотеку документация объясняет, как ее использовать, и есть несколько интересных post на тему, а также
Ответ 3
Создайте специальный файл библиотеки, содержащий только script для вашего клиента. У вашего клиента должен быть хотя бы доступ на уровне чтения. Поэтому он может видеть ваш script. Удалите ваш script и создайте новый невинный script в этом файле и сохраните его как новую версию. Теперь ваш клиент видит только этот новый script. Поскольку его приложение все еще работает с старой версией вашей библиотеки, оригинальный script будет выполнять свою работу как обычно.