GASからCloudSQLへのアクセスする際の許可設定

571 views
Skip to first unread message

裕貴

unread,
Dec 7, 2015, 3:36:50 AM12/7/15
to GCPUGユーザー会
GAS(Google SpreadSheetのContainer Bound Script)からCloudSQLへのアクセスを検証をしています
GASからCloudSQLへのアクセスする際の許可設定はどこでやるのかどなたかご存知でしょうか?

※最後に「悩み」が書いてあります


★★前置き★★

◆検証内容


下記のような経路でデータを抽出・更新するコードをGASで実装しました

SpreadSheetのカスタムメニュー
Container Bound Script
Standalone Script
JDBC Service
CloudSQL


◆GASの実行ユーザー

ID-A : SpreadSheetとGASを実装したID(Google Apps for workの契約)
ID-B : SpreadSheetの編集とスタンドアロンのGASの閲覧を許可されたID(ID-Aとおなじ契約)
ID-C : SpreadSheetの編集とスタンドアロンのGASの閲覧を許可されたID(Google Apps for workの契約 ID-A、ID-Bとは別契約)

◆GASの実行結果

ID-A →  SELECT、INSER、UPDATEが問題なく実行できる

ID-B、ID-C 
→ Jdbc.getCloudSqlConnectionで
 「データベース接続を確立できませんでした。接続文字列、ユーザー名、パスワードを確認してください。」
 というエラーが発生する

◆CloudSQLに接続するGASの実装箇所

Jdbc.getCloudSqlConnectionのパラメータはurlのみで下記値
  
  jdbc:google:rdbms://プロジェクトID:インスタンス名/DB名

  ※ID-AでGASを実行したときはroot@localhostでDBに接続されてることを「select user()」で確認済み

  ※GASのプロジェクトはCloudSQLのインスタンスと同じにしてある

★★悩み(質問)★★
ID-Aが実装したGASを共有している他のIDも誰でも、実行結果は皆おなじにしたいんですが、どなたかやり方ご存知でしょうか?

--

裕貴

unread,
Dec 10, 2015, 9:37:06 PM12/10/15
to GCPUGユーザー会
自己解決しました


2015年12月7日月曜日 17時36分50秒 UTC+9 裕貴:

sinmetal

unread,
Dec 10, 2015, 10:40:35 PM12/10/15
to GCPUGユーザー会
GASからでも、Cloud SQL v1にinstance nameで接続できることに驚き・・・!
Reply all
Reply to author
Forward
0 new messages