为Jdbc.getConnection设置高级参数

时间:2016-01-20 04:20:02

标签: google-apps-script google-cloud-storage

我想使用 Google Apps脚本安全地连接到 SQL Google Cloud Platform 。但是,我不确定如何设置_serverSslCertificate, _clientSslCertificate方法的参数clientSslKeyJdbc.getConnection。我已经下载了证书和密钥文件。

-----BEGIN RSA PRIVATE KEY-----
MIIEpAIBAAKCAQEAlj6vYtt6F8rv254sllmvGogSYwzS0JaB6Yezji6Ab+gmZPLc
dyfNIg4PTe8YCz45RnJ+8VVklTQ4K/MFzsB6nilNMDSFRCAfRmytQkioEFlgzdL+
...
JOyb/68aCqHHStwlpCUTH40Iqh3kneiQ1be2XigxjllMSYkuH/ebZw==
-----END RSA PRIVATE KEY-----

我应该如何将字符串文字分配给_serverSslCertificate?例如......

var serverSslCert = '-----BEGIN RSA PRIVATE KEY-----\n\
MIIEpAIBAAKCAQEAlj6vYtt6F8rv254sllmvGogSYwzS0JaB6Yezji6Ab+gmZPLc\n\
dyfNIg4PTe8YCz45RnJ+8VVklTQ4K/MFzsB6nilNMDSFRCAfRmytQkioEFlgzdL+\n\
...
JOyb/68aCqHHStwlpCUTH40Iqh3kneiQ1be2XigxjllMSYkuH/ebZw==\n\
-----END RSA PRIVATE KEY-----';

1 个答案:

答案 0 :(得分:1)

证书在getConnection的信息参数(url,info)中发送。 https://developers.google.com/apps-script/reference/jdbc/jdbc#getconnectionurl-info

示例:

var serverSslCert = PropertiesService.getScriptProperties().getProperty("serverSslCert");

 var sqlInfo = {_serverSslCertificate: serverSslCert,
                _clientSslCertificate:"...",
                _clientSslKey:"..."
               };

 var conn = Jdbc.getConnection('jdbc:mysql://yoursqlserver.example.com:3306/database_name',
                                sqlInfo);

虽然JDBC服务中有一些特定于Google Cloud SQL的连接方法。

https://developers.google.com/apps-script/reference/jdbc/jdbc#getcloudsqlconnectionurl-info

https://developers.google.com/apps-script/reference/jdbc/jdbc#getconnectionurl-username-password