👏
GASでAPIキーをxxx.gasに直接実装しない方法
XXX.gas
に記載しない
スクリプトプロパティを使うことで、- 設定 > スクリプトプロパティを追加します。
XXX.gas
から呼び出す
- プログラムから参照します。
PropertiesService.getScriptProperties().getProperty("キー名")
function myFunction() {
API_KEY = PropertiesService.getScriptProperties().getProperty("API_KEY");
console.log(API_KEY)
}
GitHub
などでコード管理でキーが保存されない
メリット1: - clasp を使ってソースコードを管理する場合、GitHubなどにキーが保存されず安全です。
key
は取得できない
メリット2: スプシの実体を操作できる権限がなければ、- 企業内であれば、企業内部のGoogle権限を持っている方のみが
key
を見る可能性があります - GASを触れる練度が必要なので一般ユーザーは基本的に見ることはないと割り切ることになります
- 値を別ファイルやKVSなどに保存しても、
console.log
で簡単に取得できてしまうため、秘匿性ではスクリプトプロパティを上回ることはなく同等と考えます
最後に
KEYの管理は開発する上で重要事項です。皆様の事故防止に繋がれば幸いです。
Discussion