2017-07-06 10 views
0

私はHeroku PostgreSQLデータベースを持っています。 Herokuが提供する資格情報(ホスト、データベース、ユーザー名、パスワード)を使用して、PSequelクライアントを使用してローカルマシンから接続できます。 HerokuではSSLが必要なので、「Use SSL」をチェックする必要があります。これにより、追加フィールド(クライアントキー、クライアント証明書、サーバールート証明書)が表示されます。しかし、Herokuはそのような証明書を提供していません。 「SSLを使用」をチェックすることでデータベースに接続できますが、これらの証明書をPSequelに提供することはできません。Heroku PostgreSQL - 証明書なしでSSL接続はどのように行われますか?

これはどのように機能しますか?私は、SSL接続に証明書が必要であるという印象を受けました。証明書がなければ、鍵交換をして暗号化を行うことができますが、話している相手がわからないため、中間者攻撃の脆弱性があります。私の理解によれば、私はHeroku PostgreSQLデータベースにSSLで接続してはいけません。間違っていますか?

以前は、Google Cloud SQL(MySQL)とSequel Proを使用していました。そのセットアップでは、私はクラウドSQL設定でSSLを要求するように設定し、SSLを使って接続するためにSequel Proに提供した証明書(クライアントキー、クライアント証明書、サーバーCA)を私に提供しました。証明書を提供せずに(「SSLを使用して接続」をチェックし、正しいホスト、ユーザー名、パスワードを入力しないで)接続しようとすると、接続できなくなり、代わりに「アクセスが拒否されました」と表示されます。

答えて

0

これはオープンソースではないので、ask PSequelはコードではありません。

通常、PostgreSQLサーバがSSL接続用に設定されている場合、クライアントは接続オプションsslmode =requireを使用してSSL接続を強制することができます。クライアント証明書を持つ必要はありません、認証用ではありません)。

関連する問題