【发布时间】:2022-12-12 07:33:21
【问题描述】:
我无法通过 TLS 和 monger 连接到 AWS DocumentDB 数据库。 我从 AWS 下载了 PEM 文件并将其添加到新的密钥库文件中
keytool -import -alias documentdb_certs -storepass SomePassword -keystore documentdb_certs -file ./rds-combined-ca-bundle.pem
我用 monger: (:require [monger.core :as mg])
我尝试了不同的方法通过 project.clj 文件传递证书信息,例如
:jvm-opts ["-Djavax.net.ssl.trustStore=<my path>/clojure/resources/aws-cert/documentdb_certs"
"-Djavax.net.ssl.trustStorePassword=<password>"
]
或者
:injections [
(.. System (setProperty "javax.net.ssl.trustStore" "<my path>/clojure/resources/aws-cert/documentdb_certs"))
(.. System (setProperty "javax.net.ssl.trustStorePassword" "MyPassWord"))
]
我正在尝试建立如下连接
(defn simple-aggregate-function
"just trying"
([conn]
(let [db (mg/get-db conn "db_name")
collection "collection_name"]
(mc/aggregate db collection
[
{"match" {:createdDate {"$gte" "2022-03-01", "$lt" "2022-03-06"}}},
{"$sort" {:_id 1}}
]
:cursor {:batch-size 50}
))))
(def connection-uri-template2 "mongodb://%s:%s@%s:27017/%s?retryWrites=false&replicaSet=rs0&authSource=admin&tls=true")
(def connection-uri2 (format connection-uri-template2 user-name password db-server database))
(let [uri connection-uri2 {:keys [conn]} (mg/connect-via-uri uri)]
(do
(println connection-uri2)
(def result (simple-aggregate-function conn))
(println result)
)
(mg/disconnect conn))
我在运行应用程序时超时。
我无法在我的在线搜索中找到任何有用的信息。我想知道是否有人有工作配置的示例,或者可以概述通过 Monger 和 TLS 成功连接到 DocumentDB 的步骤
【问题讨论】:
标签: mongodb ssl clojure aws-documentdb