mongo/jstests/ssl/ssl_private_key.js

41 lines
1.2 KiB
JavaScript

// Test that clients support "BEGIN PRIVATE KEY" pems with RSA keys
load('jstests/ssl/libs/ssl_helpers.js');
(function() {
"use strict";
const SERVER_CERT = "jstests/libs/server.pem";
const CA_CERT = "jstests/libs/ca.pem";
const CLIENT_CERT = "jstests/libs/client_privatekey.pem";
function authAndTest(port) {
const mongo = runMongoProgram("mongo",
"--host",
"localhost",
"--port",
port,
"--ssl",
"--sslCAFile",
CA_CERT,
"--sslPEMKeyFile",
CLIENT_CERT,
"--eval",
"1");
// runMongoProgram returns 0 on success
assert.eq(0, mongo, "Connection attempt failed");
}
const x509_options = {
sslMode: "requireSSL",
sslPEMKeyFile: SERVER_CERT,
sslCAFile: CA_CERT
};
let mongo = MongoRunner.runMongod(Object.merge(x509_options, {auth: ""}));
authAndTest(mongo.port);
MongoRunner.stopMongod(mongo);
}());