From 3e4c24d6fe9fe81150116fc1864df32d7df89b19 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20B=C3=BCchele?= Date: Tue, 18 Sep 2018 06:38:28 -0700 Subject: [PATCH] certificateProvider Summary: rename certificate provider Reviewed By: passy Differential Revision: D9871288 fbshipit-source-id: 001a61416af23d89e63374cccc3df256b55eb6d2 --- src/utils/CertificateProvider.js | 6 ++--- xplat/Sonar/ConnectionContextStore.cpp | 36 ++++++++++++++------------ 2 files changed, 23 insertions(+), 19 deletions(-) diff --git a/src/utils/CertificateProvider.js b/src/utils/CertificateProvider.js index afceb9ad2..988a289ce 100644 --- a/src/utils/CertificateProvider.js +++ b/src/utils/CertificateProvider.js @@ -27,11 +27,11 @@ const serverCert = getFilePath('server.crt'); // Device file paths const csrFileName = 'app.csr'; -const deviceCAcertFile = 'sonarCA.crt'; +const deviceCAcertFile = 'flipperCA.crt'; const deviceClientCertFile = 'device.crt'; -const caSubject = '/C=US/ST=CA/L=Menlo Park/O=Sonar/CN=SonarCA'; -const serverSubject = '/C=US/ST=CA/L=Menlo Park/O=Sonar/CN=localhost'; +const caSubject = '/C=US/ST=CA/L=Menlo Park/O=Flipper/CN=FlipperCA'; +const serverSubject = '/C=US/ST=CA/L=Menlo Park/O=Flipper/CN=localhost'; const minCertExpiryWindowSeconds = 24 * 60 * 60; const appNotDebuggableRegex = /debuggable/; const allowedAppNameRegex = /^[a-zA-Z0-9.\-]+$/; diff --git a/xplat/Sonar/ConnectionContextStore.cpp b/xplat/Sonar/ConnectionContextStore.cpp index 6c89cdb8e..d99812807 100644 --- a/xplat/Sonar/ConnectionContextStore.cpp +++ b/xplat/Sonar/ConnectionContextStore.cpp @@ -1,15 +1,15 @@ #include "ConnectionContextStore.h" +#include +#include +#include +#include #include "CertificateUtils.h" #include "Log.h" -#include -#include -#include -#include using namespace facebook::sonar; static constexpr auto CSR_FILE_NAME = "app.csr"; -static constexpr auto SONAR_CA_FILE_NAME = "sonarCA.crt"; +static constexpr auto FLIPPER_CA_FILE_NAME = "flipperCA.crt"; static constexpr auto CLIENT_CERT_FILE_NAME = "device.crt"; static constexpr auto PRIVATE_KEY_FILE = "privateKey.pem"; static constexpr auto CONNECTION_CONFIG_FILE = "connection_config.json"; @@ -18,10 +18,12 @@ bool fileExists(std::string fileName); std::string loadStringFromFile(std::string fileName); void writeStringToFile(std::string content, std::string fileName); -ConnectionContextStore::ConnectionContextStore(DeviceData deviceData): deviceData_(deviceData) {} +ConnectionContextStore::ConnectionContextStore(DeviceData deviceData) + : deviceData_(deviceData) {} bool ConnectionContextStore::hasRequiredFiles() { - std::string caCert = loadStringFromFile(absoluteFilePath(SONAR_CA_FILE_NAME)); + std::string caCert = + loadStringFromFile(absoluteFilePath(FLIPPER_CA_FILE_NAME)); std::string clientCert = loadStringFromFile(absoluteFilePath(CLIENT_CERT_FILE_NAME)); std::string privateKey = @@ -39,7 +41,7 @@ std::string ConnectionContextStore::createCertificateSigningRequest() { deviceData_.appId.c_str(), absoluteFilePath(CSR_FILE_NAME).c_str(), absoluteFilePath(PRIVATE_KEY_FILE).c_str()); - std::string csr = loadStringFromFile(absoluteFilePath(CSR_FILE_NAME)); + std::string csr = loadStringFromFile(absoluteFilePath(CSR_FILE_NAME)); return csr; } @@ -48,7 +50,7 @@ std::shared_ptr ConnectionContextStore::getSSLContext() { std::shared_ptr sslContext = std::make_shared(); sslContext->loadTrustedCertificates( - absoluteFilePath(SONAR_CA_FILE_NAME).c_str()); + absoluteFilePath(FLIPPER_CA_FILE_NAME).c_str()); sslContext->setVerificationOption( folly::SSLContext::SSLVerifyPeerEnum::VERIFY); sslContext->loadCertKeyPairFromFiles( @@ -64,13 +66,15 @@ std::string ConnectionContextStore::getDeviceId() { desktop app. For backwards compatibility, when this isn't present, fall back to the unreliable source. */ - try { - std::string config = loadStringFromFile(absoluteFilePath(CONNECTION_CONFIG_FILE)); - auto maybeDeviceId = folly::parseJson(config)["deviceId"]; - return maybeDeviceId.isString() ? maybeDeviceId.getString() : deviceData_.deviceId; - } catch (std::exception& e) { - return deviceData_.deviceId; - } + try { + std::string config = + loadStringFromFile(absoluteFilePath(CONNECTION_CONFIG_FILE)); + auto maybeDeviceId = folly::parseJson(config)["deviceId"]; + return maybeDeviceId.isString() ? maybeDeviceId.getString() + : deviceData_.deviceId; + } catch (std::exception& e) { + return deviceData_.deviceId; + } } void ConnectionContextStore::storeConnectionConfig(folly::dynamic& config) {