【发布时间】:2021-03-23 10:42:26
【问题描述】:
我有一个使用敏感环境变量的包。这些变量是对称密钥加密和解密数据库数据的密码,并且必须使用动态 SQL,所以我必须将密码作为参数传递给组件中的 SQL 语句。在查找中,唯一的方法是如果它们是输入列,但我无法从敏感参数的值派生列,错误是“不允许访问敏感参数“密码”的参数变量的值。验证该变量被正确使用并保护敏感信息。”
我如何实际使用包中的敏感参数?
【问题讨论】:
标签: ssis
我有一个使用敏感环境变量的包。这些变量是对称密钥加密和解密数据库数据的密码,并且必须使用动态 SQL,所以我必须将密码作为参数传递给组件中的 SQL 语句。在查找中,唯一的方法是如果它们是输入列,但我无法从敏感参数的值派生列,错误是“不允许访问敏感参数“密码”的参数变量的值。验证该变量被正确使用并保护敏感信息。”
我如何实际使用包中的敏感参数?
【问题讨论】:
标签: ssis
您可以使用脚本任务检索敏感的环境变量。
http://www.mattmasson.com/2012/01/retrieving-the-value-of-a-sensitive-parameter-in-a-script/
代码示例
string value = Dts.Variables["$Package::tabcmd_password"].GetSensitiveValue().ToString();
这里的 tabcmd_password 是存储敏感信息的变量名。
【讨论】:
string value = Dts.Variables["$Package::tabcmd_password"].GetSensitiveValue().ToString();
这会导致密码存在风险,这不是一个好主意。使用四个表达式设置连接。服务器、初始目录、用户名、密码。
【讨论】: