問題タブ [arangojs]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - arangojs で TLS 証明書機関を構成する
開発環境用の TLSv1.2 証明書を生成するために、独自の認証局を作成しました。私のCAには、ルート証明書、ルートによって署名された中間証明書、および中間証明書によって署名された多数の「リーフ」証明書があります。このリーフ証明書の 1 つを使用して、arangodb サーバーに安全に接続します。ブラウザーにルート/中間証明書をインストールした後、web インターフェイスに正常にアクセスしてデータベースと対話できるため、arangod プロセスは正常に実行されているようです。
https://github.com/arangodb/arangojs#new-databaseで説明されているように、arangojs javascript ドライバーを使用して nodejs API サーバーをデータベースに接続しようとすると、問題が発生します。
自己署名 HTTPS 証明書をサポートする必要がある場合は、次のように、証明書を agentOptions に追加する必要がある場合があります。
agentOption 構成は、自己署名証明書を使用し、次の場合に機能します。
しかし、自分の CA 署名付き証明書を使用すると失敗し、次の場合:
また、次のようないくつかの他の ca 設定を試しました。 [interm + root]証明書バッファを渡します(上記のように、順序を交換しました)が、これはどれも機能していないようです。私は常に arangojs から非常に長いエラー メッセージを受け取りますが、最初は UNABLE_TO_VERIFY_LEAF_SIGNATURE
調べてみると、node-ssl-root-cas npm モジュールへの参照が見つかりましたが、自分の CA を使用しているため、なぜそれを使用する必要があるのかわかりません (私も試してみましたが、どちらも機能しませんでした)。
私の問題はhttps://github.com/arangodb/arangojs/issues/39に似ているようですが、解決策は上記のドキュメントと 1:1 で同期しているようで、まだ機能しませんでした。
結局のところ、これは arangojs の agantOptions の微妙な構成の問題だと思います。誰かが私に正しい設定を教えてもらえますか?