MicroStrategy ONE

PostgreSQL 및 스토리지 서비스에 대한 SSL 구성

암호화 및 인증에 SSL을 사용하도록 Microstrategy Storage 서비스와 PostgreSQL 데이터베이스 간의 통신을 구성할 수 있습니다. 참조 PostgreSQL 문서 자세한 내용은.

PostgreSQL 서버측 구성

OpenSSL 버전 1.1.0 이상이 설치되어 있어야 합니다.

Platform Analytics 또는 Collaboration Service에 대해 이미 PostgreSQL 서버 측을 구성한 경우 다음으로 건너뛰십시오. 클라이언트측 설정 생성된 것을 사용하여 server.key 그리고 root.crt

  1. 개인 키를 생성하려면 OpenSSL 애플리케이션을 관리자로 실행하세요. 개인 키를 생성할 때 암호를 제공해야 합니다.

    openssl 명령은 OpenSSL 애플리케이션으로 실행되므로 각 줄의 시작 부분에는 포함되지 않습니다. Unix 시스템이나 Windows 명령줄에서 인증서와 키가 생성되는 경우 다음을 포함해야 할 수도 있습니다. openssl 모든 줄 앞에.

    복사
    genrsa -out server.key 1024
  2. 서버 인증서를 생성합니다.

    서버 인증서를 성공적으로 생성하려면 OpenSSL 애플리케이션을 다시 시작해야 할 수도 있습니다.

    -subj 정보를 묻는 메시지를 표시하지 않는 지름길입니다.

    -x509 인증서 요청이 아닌 자체 서명된 인증서를 생성합니다.

    복사
    req -new -key server.key -days 3650 -out server.crt -x509 -subj "/CN=your.domain.com"
  3. 명령 프롬프트나 파일 탐색기를 열고 서버 인증서가 있는 위치로 이동합니다.

  4. 새로 생성된 서버 인증서를 복사하여 인증 기관을 생성합니다.

    복사
    copy server.crt root.crt
  5. 아래에 표시된 줄을 추가합니다. postgres.conf.

    복사
    listen_addresses = '*' # what IP address(es) to listen on;
  6. 아래 코드의 주석을 해제하고 수정하세요.

    복사
    ssl = on
    ssl_ca_file = '\\LOCATION_OF_FILE\\root.crt'
    ssl_cert_file = '\\LOCATION_OF_FILE\\server.crt'
    ssl_key_file = '\\LOCATION_OF_FILE\\server.key'
    ssl_ciphers = 'HIGH:MEDIUM:+3DES:!aNULL' # allowed SSL ciphers
    ssl_prefer_server_ciphers = on
  7. ~ 안에 pg_hba.conf, 아래 코드를 추가하거나 수정하세요.

    호스트 항목을 주석 처리해야 할 수도 있습니다.

    hostssl DB_USERNAME에 SSL을 적용합니다.

    clientcert=1 클라이언트 인증(양방향 인증)을 시행합니다.

    복사
    hostssl   mstr_library   DB_USERNAME   CLIENT_IP/32   cert clientcert=1
  8. 두 파일 모두에 변경 사항을 저장합니다.

  9. 선택하다 시작 > 서비스 PostgreSQL을 다시 시작하거나 MicroStrategy 저장소.

클라이언트측 설정

PostgreSQL 서버 측 구성을 마친 후 클라이언트 측 구성 및 설정을 시작할 수 있습니다. 그러면 Storage 서비스에 대한 인증서와 키가 생성됩니다.

두 쌍의 키와 인증서를 생성해야 합니다. mstr_library 사용자와 mstr_library_application 사용자.

  1. 개인 키와 인증서를 생성합니다. mstr_library 사용자:

    복사
    genrsa -out mstr_library.key 1024
    req -new -key mstr_library.key -out mstr_library.csr -subj "/CN=mstr_library"
    x509 -req -in mstr_library.csr -CA root.crt -CAkey server.key -out mstr_library.crt -CAcreateserial

    오류가 발생하면 주석을 처리해야 할 수도 있습니다. tsa_policy1 ~에 openssl.cnf. openssl을 저장하고 관리자로 다시 시작하십시오.

    복사
    # Policies used by the TSA examples.
    #tsa_policy1 = 1.2.3.4.1
    tsa_policy2 = 1.2.3.4.5.6
    tsa_policy3 = 1.2.3.4.5.7 
  2. 아래 명령을 사용하여 개인 키를 DER 형식으로 변환합니다.

    Storage 서비스에서 사용하는 JDBC PostgreSQL 드라이버에서는 PEM 형식이 아닌 DER 형식의 키 파일이 필요합니다.

    복사
    pkcs8 -topk8 -inform PEM -outform DER -in mstr_library.key -out mstr_library.pk8 -nocrypt
  3. 1, 2단계와 유사하게 개인 키와 인증서를 생성합니다. mstr_library_application 사용자:

    복사
    genrsa -out mstr_library_application.key 1024
    req -new -key mstr_library_application.key -out mstr_library_application.csr -subj "/CN=mstr_library_application"
    x509 -req -in mstr_library_application.csr -CA root.crt -CAkey server.key -out mstr_library_application.crt -CAcreateserial
    pkcs8 -topk8 -inform PEM -outform DER -in mstr_library_application.key -out mstr_library_application.pk8 -nocrypt
  4. 에서 생성된 파일을 복사합니다. Library 서버와 업데이트 configOverride.properties 인증서와 키의 절대 경로를 사용합니다.

    그만큼 configOverride.properties 파일은 다음에서 찾을 수 있습니다:

    Windows: <DEPLOY_LOCATION>\webapps\MicroStrategyLibrary\WEB-INF\classes\config\ConfigOverride.properties

    Linux: <DEPLOY_LOCATION>/webapps/MicroStrategyLibrary/WEB-INF/classes/config/configOverride.properties

    복사
    #postgresql database connection config
    datasource.url=jdbc:postgresql://YOUR_HOST:5432/mstr_library
    datasource.tlsEnabled=true
    datasource.sslMode=require
    datasource.sslRootCert=/LOCATION_OF_FILE/root.crt
    #for Windows: datasource.sslRootCert=Z:\LOCATION_OF_FILE\root.crt

    datasource.username=mstr_library_application
    datasource.password=<any string>
    datasource.sslCert=/LOCATION_OF_FILE/mstr_library_application.crt
    datasource.sslKey=/LOCATION_OF_FILE/mstr_library_application.pk8

    datasource.admin.username=mstr_library
    datasource.admin.password=<any string>
    datasource.admin.sslCert=/LOCATION_OF_FILE/mstr_library.crt
    datasource.admin.sslKey=/LOCATION_OF_FILE/mstr_library.pk8