我试过了
gcloud sql instances patch YOUR_INSTANCE_NAME --authorized-networks my-ip
Run Code Online (Sandbox Code Playgroud)
但是此命令会从访问控制列表中删除所有IP地址,并仅添加我的IP地址.如何添加我的IP地址以保留以前的IP地址?
正如James所说,可以使用Developers Console轻松完成.使用命令行是可行的,尽管有点棘手.通过"云SDK"搜索显示,似乎无法简单地检索授权网络.
但是,您可以使用describe将返回Cloud SQL实例的所有设置的命令.从这里开始,可以使用一些相当脆弱的命令系列来获得您正在寻找的东西.开始:
首先,获取完整的Cloud SQL实例描述:
gcloud sql instances describe <instance-name>
Run Code Online (Sandbox Code Playgroud)
其次,管道结果通过grep检索后面出现的授权网络的IP地址-.如果您愿意,可以在其他地方找到其他IP地址正则表达式.
| grep -E "\-\s[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+"
Run Code Online (Sandbox Code Playgroud)
第三,管道结果通过cut分开每一行-并保持后一半.
| cut -d '-' -f 2
Run Code Online (Sandbox Code Playgroud)
第四,管道结果cut再次通过分割空白空间上的每一行来移除第一个空白区域
| cut -d ' ' -f 2
Run Code Online (Sandbox Code Playgroud)
然后,管道结果通过tr逗号替换新行
| tr '\n' ','
Run Code Online (Sandbox Code Playgroud)
最后,管道结果通过head删除尾随逗号
| head -c -1
Run Code Online (Sandbox Code Playgroud)
您生成的命令应该是这样的:
gcloud sql instances describe <instance-name> | grep -E "\-\s[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+" | cut -d '-' -f 2 | cut -d ' ' -f 2 | tr '\n' ',' | head -c -1
Run Code Online (Sandbox Code Playgroud)
这是一个非常脆弱的解决方法.此外,它公开证书密钥,上面的特定正则表达式与IPv6地址不匹配或使用CDR表示法匹配子网.这个简单的操作肯定保证功能请求.我强烈建议在Google App Engine公共问题跟踪器上提交一个.
| 归档时间: |
|
| 查看次数: |
602 次 |
| 最近记录: |