提问者:小点点

使用代理将DataFlow作业连接到Cloud MySQL是否安全(通过os. system)


我正在尝试在DataFlow上创建一个需要云SQL连接的Python作业(我是一个完全的初学者)。我需要在ParDo(Apache Beam)中执行几个MySQL查询。我使用的是PyMySQL,身份验证有问题,所以我尝试了这个答案,显然它有效:

class MyDoFn(beam.DoFn):
 def setup(self):
    os.system("wget https://dl.google.com/cloudsql/cloud_sql_proxy.linux.amd64 -O cloud_sql_proxy")
    os.system("chmod +x cloud_sql_proxy")
    os.system(f"./cloud_sql_proxy -instances={self.sql_args['cloud_sql_connection_name']}=tcp:3306 &")

问题是,我发现这更像是一种变通方法。以这种方式进行身份验证安全吗?我将感谢任何帮助!事先感谢您。


共1个答案

匿名用户

是的,这是使用云SQL连接的安全方式。cloud_sql_proxy使用来自计算引擎实例的身份验证信息来正确验证连接。有关详细信息,请参阅https://cloud.google.com/sql/docs/mysql/sql-proxy#authentication-options。