- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试设置 POSTGRES_USER & POSTGRES_PASSWORD 使用 pg_hba.conf
使用 docker postgres 配置& postgresql.conf
文件:
docker run --name pg \
-e POSTGRES_USER=myUser \
-e POSTGRES_PASSWORD=myPassword \
-e POSTGRES_DB=myDb \
-v $PWD/pg_hba.conf:/etc/postgresql/pg_hba.conf \
-v $PWD/postgresql.conf:/etc/postgresql/postgresql.conf \
--network data-talk \
-d postgres \
-c config_file=/etc/postgresql/postgresql.conf \
-c hba_file=/etc/postgresql/pg_hba.conf
pg_hba.conf
# "local" is for Unix domain socket connections only
local all all scram-sha-256
# IPv4 local connections:
host all all 127.0.0.1/32 scram-sha-256
host all all 172.19.0.0/16 scram-sha-256
# IPv6 local connections:
host all all ::1/128 scram-sha-256
# Allow replication connections from localhost, by a user with the
# replication privilege.
local replication all scram-sha-256
host replication all 127.0.0.1/32 scram-sha-256
host replication all ::1/128 scram-sha-256
postgresql.conf
listen_addresses = '*'
password_encryption = 'scram-sha-256' # md5 or scram-sha-256
Note 1: The PostgreSQL image sets up
trust
authentication locally so you may notice a password is not required when connecting fromlocalhost
(inside the same container). However, a password will be required if connecting from a different host/container.
pg_hba.conf
我以为我可以满足这个要求。我正在使用
172.19.0.0/16
因为这是 docker 网络的子网。
psql: error: could not connect to server: FATAL: password authentication failed for user “myUser”
.
docker run --name pg \
-e POSTGRES_PASSWORD=password \
-v $PWD/pg_hba.conf:/etc/postgresql/pg_hba.conf \
-v $PWD/postgresql.conf:/etc/postgresql/postgresql.conf \
--network data-talk \
-d postgres \
-c config_file=/etc/postgresql/postgresql.conf \
-c hba_file=/etc/postgresql/pg_hba.conf
$ docker exec -it pg sh
psql -U postgres
Password for user postgres:
psql: error: could not connect to server: FATAL: password authentication failed for user "postgres"
最佳答案
关注这里 https://github.com/docker-library/postgres/blob/master/12/docker-entrypoint.sh#L202我假设在第一次运行和设置数据库时,身份验证方法是 md5
, 完成后 pg_hba.conf
文件将其设置为 scram-sha-256
使其无法进行身份验证。
通过设置 POSTGRES_INITDB_ARGS
并传递参数以将初始身份验证方法设置为 scram-sha-256
密码设置为 scram-sha-256
用于数据库的初始化,并且可以正常工作。
docker run --name pg \
-e POSTGRES_USER=myUser \
-e POSTGRES_PASSWORD=myPassword \
-e POSTGRES_DB=myDb \
-e POSTGRES_INITDB_ARGS="--auth-host=scram-sha-256 --auth-local=scram-sha-256" \
-v $PWD/pg_hba.conf:/etc/postgresql/pg_hba.conf \
-v $PWD/postgresql.conf:/etc/postgresql/postgresql.conf \
--network data-talk \
-d postgres \
-c config_file=/etc/postgresql/postgresql.conf \
-c hba_file=/etc/postgresql/pg_hba.conf
POSTGRES_INITDB_ARGS
This optional environment variable can be used to send arguments to
postgres initdb
. The value is a space separated string of arguments as postgres initdb would expect them. This is useful for adding functionality like data page checksums: -e POSTGRES_INITDB_ARGS="--data-checksums"
initdb
关于postgresql - 如何让 postgres docker 容器在任何连接上使用 scram-sha-256 进行初始化?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62415752/
我一直在使用 servlets+jsp、JDBC 和 tomcat 如何作为 servlet 容器编写 java web-app。当我连接到数据库并尝试获取一些数据时,我给出了当前异常:enter i
我需要将用户 postgres 的密码加密从 scram-sha-265 降级到 md5。 我尝试修改 pg_hba.conf 和 postgresql.conf 文件,将密码加密从 scram-sh
注意:我已经阅读了对 this question 的非常好的回答。 ,但它没有回答我的问题。 我正在尝试实现 RFC 5802 指定的 SCRAM-SHA1 身份验证标准, 在 Common Lisp
我试图为我的 kafka 集群添加安全性,我遵循了文档: https://kafka.apache.org/documentation/#security_sasl_scram https://doc
最近,我能够按照以下两个网站上的说明在 Swift IOS 中获得适用于 XMPP 流的 MD5 身份验证(我使用 Apple 的 CommonCrypto C 库的 CC-MD5 函数进行实际散列)
我正在尝试将 PostgreSQL 数据库添加到 DBeaver,并在尝试连接到数据库时收到以下错误。我正在使用 DBeaver 版本 7.2.3.202010191702。收到此消息后,我安装了最新
当我尝试使用 PHP 连接到 Postgresql 服务器时出现错误,并且出现如下错误: Unable to connect to PostgreSQL server: SCRAM authentic
几个月前,我创建了一个小型 Java 库,为客户端和服务器提供功能。昨天,它的一位用户向我询问如何实现 SCRAM 的示例。在客户端(即浏览器)上登录他的网站(他已经使用我的库在服务器端使用 SCRA
我在看这个Change PostgreSQL password encryption from MD5 to SHA问题来弄清楚如何将 Postgres 中的用户密码哈希更改为 MD5 以外的其他内容
系统 Distributor ID: Ubuntu Description: Ubuntu 16.04.5 LTS Release: 16.04 我的docker-compose.yml versio
我在启动 kafka 服务器时遇到错误, 已经设置了 SSL,它对 kafka 3 代理工作正常。 Zookeeper 也设置了 SSL 现在尝试从服务器属性文件中为 kafka 代理设置 SASL_
尝试从远程节点进行转储并收到以下错误: Failed: can't create session: could not connect to server:connection(): auth err
我最近从 MongoDB 2.6 升级到 3.0.4,并将 Mongoose 版本升级到 4.0.0。 现在当我尝试使用 mongoose 连接到 mongo 时: mongoose.connect(
我在使用 typeorm 和 postgres 连接到 nest.js 中的数据库时遇到问题。 我在项目根目录下创建了一个.env文件,内容如下 POSTGRES_HOST=127.0.0.1 POS
我在使用 typeorm 和 postgres 连接到 nest.js 中的数据库时遇到问题。 我在项目根目录下创建了一个.env文件,内容如下 POSTGRES_HOST=127.0.0.1 POS
在 PostgreSQL 10 中,scram-sha-256 设置使用多少次迭代? docs just say Setting this parameter to scram-sha-256 wil
我正在尝试设置 POSTGRES_USER & POSTGRES_PASSWORD 使用 pg_hba.conf 使用 docker postgres 配置& postgresql.conf文件: d
使用 Laravel 5.4 和 Mongodb 3.6 连接数据库时出现错误信息 “SCRAM-SHA-1”身份验证机制需要使用 --enable-ssl 构建的 libmongoc 它在具有相同版
我想向我的kafka集群添加新用户,其方法似乎是在zookeeper数据库中添加SCRAM-SHA-512/256配置,但我只知道如何使用命令行实用程序,如下所示: bin/kafka-configs
我正在尝试在我的本地 Mongo 安装上激活用户授权,但身份验证一直失败。可能是什么问题?我错过了什么吗? 我遵循了“Installing on Windows”和“Enable Client Acc
我是一名优秀的程序员,十分优秀!