Adobe Campaign Classic v7:加载私钥文件时出错:权限被拒绝

了解如何解决在尝试通过FDA将Adobe Campaign Classic v7连接到Snowflake数据库时出现​ 加载私钥文件错误:权限被拒绝 ​错误。 检查私钥加密的格式是否正确,与Snowflake数据库的ODBC连接是否正常工作,以及是否已在服务器上安装OpenSSL。

描述 description

环境

  • 解决方案:Adobe Campaign Classic v7
  • 操作系统: Windows(在内部部署AWS环境中托管)
  • 数据库:使用联合数据访问(FDA)进行密钥对身份验证的Snowflake

问题

尝试使用密钥对身份验证通过FDA将Adobe Campaign Classic v7连接到外部Snowflake数据库时,遇到以下错误消息: 加载私钥文件时出错:权限被拒绝

解决方法 resolution

要解决此问题,请执行以下步骤:

  1. 确保您使用的是较低版本的Snowflake ODBC驱动程序(如2.x.x)或经过专门测试的版本(如2.25.xx)。 要检查您使用的Snowflake ODBC驱动程序的版本,请参阅此Snowflake社区帖子: 如何验证您的Snowflake驱动程序或连接器版本
    将OpenSSL从1.1.1版更新到3.x.x版后,Snowflake ODBC驱动程序3.0.1版及更高版本可能会导致由于支持的加密算法更改而导致问题。当OpenSSL版本从1.1.1更新到3.0.9的3.0.1版时,不再支持以前的OpenSSL库版本中弃用的加密算法。 有关更多详细信息,请参阅此Snowflake社区帖子ODBC驱动程序发行说明

    如果您使用的是适当版本的Snowflake ODBC,请尝试执行步骤2。

    1. 生成新的RSA密钥。 用于生成RSA密钥的命令示例:

      openssl genrsa 2048 | openssl pkcs8 -topk8 -inform PEM -out rsa_key.p8
      密钥应使用与您当前设置兼容的OpenSSL版本(例如OpenSSL 1.x)生成。 因此,如果Snowflake ODBC的版本是3.x.x,则OpenSSL的版本也必须是3.x.x;否则,密钥对身份验证将失败。 如果您使用低于3.x.x的版本(如2.x.x),则应该使用更早的OpenSSL版本(如1.x.x)来生成密钥对。

  2. 在Adobe Campaign Classic中更新外部帐户设置,确保在配置用户名/密码组合时选中 Unicode数据 复选框。

  3. 验证在运行Adobe Campaign的服务器上访问和读取私钥文件的权限。 有关步骤,请参阅Snowflake: 密钥对身份验证和密钥对轮换

如果连接Adobe Campaign Classic v7和外部Snowflake数据库的问题持续存在,请考虑在组织内升级或联系Adobe支持,以获取有关FDA与Snowflake数据库集成的工程方面的特定其他疑难解答。

recommendation-more-help
3d58f420-19b5-47a0-a122-5c9dab55ec7f