私は、BluemixでホストされているMySQL Composeサービスで完全にクラッシュするためにMySQL Workbenchを使用して成功しています。クラウドでホストされているMySQLにSpringBootを接続するSSLが必要です
私は、Apache Derbyを使用してローカルノートパソコンにSpringBootを使用して簡単なマイクロサービスを構築しました。成功しました。
私の次のステップは、BluemixでホストされているMySQL Composeを使用することでした。
私は「PKIXパスの構築に失敗しました:....」application.propertiesを編集し、このエラー に走っ 「SunCertPathBuilderException:ターゲットを要求するために有効な証明書パスを見つけることができません」
application.properties file
spring.jpa.hibernate.ddl-auto=create
spring.jpa.database-platform=org.hibernate.dialect.MySQLDialect
spring.datasource.url=jdbc:mysql://somedomain:port/compose?useSSL=true?requireSSL=true
spring.datasource.username=myname
spring.datasource.password=mypassword
Bluemixが私を提供jsonのこれらの資格情報:
{
"db_type": "mysql",
"name": "bmix-dal-yp-xxxxxxx-",
"uri_cli": "mysql -u myname -p --host somedomain.com --port 5555 --ssl-mode=REQUIRED",
"ca_certificate_base64": "LS0tLS1CRUd......",
"deployment_id": "58fexxxxxxxxxxx",
"uri": "mysql://myname:[email protected]:55555/compose"
}
私のapplication.propertiesのどこかにca証明書を使用する予定ですか?
デフォルトでspringBootで動作する埋め込みTomcatサーバーでsslを有効にする必要がありますか?
SpringBootアプリケーションを、クラウドプロバイダに接続するように設定するにはどうすればいいですか?
Caused by: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
質問:「ca_certificate_base64」を私に提供し、それを「truststore」というファイルにデコードし、リソースフォルダ(SpringBootプロジェクト)に配置しますか? – xpagesbeast
私は答えを更新しました。どのように乗り越えているか教えてください。これがうまくいかない場合は、gsubでsslを使用しないで動作する最小限の例を作成して、sslを追加して修正プログラムの動作を確認することができます。 –
jdbcをsslを使用しないように変更しました。私はラップトップからクラウドデータベース(springBootプロジェクト)を完全にクラッシュできるようになりました...成功私はキーストアを作成するために書いたすべての手順に従いましたが、 JAVA_OPTS環境変数。 Tomcatが環境変数でロードするように編集する必要があるspring application.propertiesがあるか、または自分のO/S(ラップトップ)に環境変数 "global"を作成する必要がありますか?私はUbuntu Linuxワークステーションを使用しています。 – xpagesbeast