代码之家  ›  专栏  ›  技术社区  ›  Sathya

如何使用Azure PostgreSQL在Keyclope中强制SSL

  •  1
  • Sathya  · 技术社区  · 7 年前

    我正在尝试使用docker容器将Keyclope配置为与PostgreSQL一起运行(使用Azure Database for PostgreSQL)。我能够按照Keyclope文档中的指示完成此操作 here .

    我面临的问题是,Azure Database for PostgreSQL在默认情况下将此选项“强制SSL连接”设置为“启用”,而Keyclope服务器不使用此选项。它在服务器启动时引发以下错误。

    ERROR [org.jboss.msc.service.fail] (ServerService Thread Pool -- 49) MSC000001: Failed to start service jboss.undertow.deployment.default-server.default-host./auth:
    Caused by: org.postgresql.util.PSQLException: FATAL: SSL connection is required. Please specify SSL options and retry.
    

    如果禁用“强制SSL连接”选项,则效果良好。

    我想知道如何指定此选项以使用KeyClope。

    我使用自定义Dockerfile下载和引导Keyclope服务器,并将数据源参数作为环境变量传递给 docker run 命令我试过了 this approach 当我将它指向我的PostgreSQL数据源时,它运行得很好,没有任何修改。但当我将其更改为与自己的Dockerfile兼容时,它会给出相同的错误。

    提前谢谢。

    2 回复  |  直到 7 年前
        1
  •  1
  •   Sathya    7 年前

    这就是我所做的。

    我忽略了jboss共享的最新Dockerfile(可用 here )并在我的需求版本中采用了我需要的行。早些时候,我正试图按照Keyclope文档的建议,自行添加postgreSQL配置。由于它现在受到开箱即用的支持,我将Dockerfile更改为与jboss Dockerfile for Keyclope兼容。

    我还介绍了新的env。变量通过声明 ssl=true 按照指导 here

        2
  •  0
  •   rachel-msft    6 年前
    FATAL: SSL connection is required. Please specify SSL options and retry.
    

    我见过当客户端IP地址未包含在PostgreSQL server的防火墙规则中时会发生这种情况。尝试在门户的连接安全页面或Azure CLI中使用确认防火墙已为您的IP打开 az postgres server firewall-rule list --resource-group --server-name