HTTPS 액세스를 위한 Apigee SSO 구성

Private Cloud용 Edge v. 4.17.09

에지 SSO 설치 및 구성에서는 구성 파일의 다음 속성에 지정된 대로 포트 9099에서 HTTP를 사용하도록 Edge SSO 모듈을 설치하고 구성하는 방법을 설명합니다.

SSO_TOMCAT_PROFILE=DEFAULT

또는 SSO_TOMCAT_PROFILE을 다음 값 중 하나로 설정하여 HTTPS 액세스를 사용 설정할 수 있습니다.

  • SSL_PROXY - 프록시 모드에서 apigee-sso를 구성합니다. 즉, apigee-sso 앞에 부하 분산기를 설치하고 부하 분산기에서 종료된 TLS를 의미합니다. 그런 다음 부하 분산기의 요청에 대해 apigee-sso에 사용되는 포트를 지정합니다.
  • SSL_TERMINATION - 원하는 포트에서 에지 SSO 모듈인 apigee-sso에 대한 TLS 액세스를 사용 설정했습니다. CA에서 서명한 인증서가 포함된 이 모드의 키 저장소를 지정해야 합니다. 자체 서명 인증서는 사용할 수 없습니다.

apigee-sso를 처음 설치하고 구성할 때 HTTPS를 사용 설정하거나 나중에 사용 설정할 수 있습니다.

두 모드 중 하나를 사용하여 apigee-sso에 대한 HTTPS 액세스를 사용 설정하면 HTTP 액세스가 사용 중지됩니다. 즉, HTTP와 HTTPS를 동시에 사용하여 apigee-sso에 액세스할 수 없습니다.

SSL_PROXY 모드 사용 설정

SSL_PROXY 모드에서는 시스템이 Edge SSO 모듈 앞에 부하 분산기를 사용하고 부하 분산기의 TLS를 종료합니다. 다음 그림에서 부하 분산기는 포트 443에서 TLS를 종료한 후 포트 9099의 Edge SSO 모듈로 요청을 전달합니다.

이 구성에서는 부하 분산기와 Edge SSO 모듈 간의 연결을 신뢰하므로 해당 연결에 TLS를 사용할 필요가 없습니다. 하지만 이제 SAML IDP와 같은 외부 항목이 보호되지 않는 포트 9099가 아닌 포트 443에서 Edge SSO 모듈에 액세스해야 합니다.

SSL_PROXY 모드로 에지 SSO 모듈을 구성하는 이유는 에지 SSO 모듈이 인증 프로세스의 일부로 IDP에서 외부에서 사용하는 리디렉션 URL을 자동으로 생성하기 때문입니다. 따라서 이러한 리디렉션 URL에는 Edge SSO 모듈의 내부 포트 9099가 아닌 부하 분산기의 외부 포트 번호(이 예시에서는 443)가 포함되어야 합니다.

참고: 부하 분산기에서 Edge SSO 모듈로의 연결이 HTTP를 사용하므로 SSL_PROXY 모드에 TLS 인증서와 키를 만들 필요가 없습니다.

SSL_PROXY 모드에 대해 에지 SSO 모듈을 구성하려면 다음 안내를 따르세요.

  1. 구성 파일에 다음 설정을 추가합니다.
    # SSL_PROXY 모드를 사용 설정합니다.
    SSO_TOMCAT_PROFILE=SSL_PROXY

    # apigee-sso 포트(일반적으로 1025~65535)를 지정합니다.
    # 일반적으로 포트 1024 이하에는 apigee-sso를 통한 루트 액세스가 필요합니다.
    # 기본값은 9099입니다.
    SSO_TOMCAT_PORT=9099

    # TLS를 종료하기 위한 부하 분산기의 포트 번호를 지정합니다.
    # 이 포트 번호는 apigee-sso가 리디렉션 URL을 자동 생성하는 데 필요합니다.
    SSO_TOMCAT_PROXY_PORT=443
    SSO_PUBLIC_URL_PORT=443

    # apigee-sso의 공개 액세스 스키마를 https로 설정합니다.
    SSO_PUBLIC_URL_SCHEME=https
  2. Edge SSO 모듈을 구성합니다.
    > /opt/apigee/apigee-service/bin/apigee-service apigee-sso setup -f configFile
  3. 이제 부하 분산기의 포트 443에서 HTTPS 요청을 실행하여 Edge SSO에 액세스하도록 IDP 구성을 업데이트합니다. 자세한 내용은 SAML IDP 구성을 참조하세요.
  4. 다음 속성을 설정하여 HTTPS용 Edge UI 구성을 업데이트합니다.
    SSO_PUBLIC_URL_PORT=443
    SSO_PUBLIC_URL_SCHEME=https


    자세한 내용은 Edge UI에서 SAML 사용 설정을 참고하세요.
  5. 개발자 서비스 포털 또는 API BaaS를 설치한 경우 HTTPS를 사용하여 Ede SSO에 액세스하도록 업데이트하세요. 자세한 내용은 다음을 참고하세요.

SSL_TERMINATION 모드 사용 설정

SSL_TERMINATION 모드의 경우 다음을 수행해야 합니다.

  • TLS 인증서와 키를 생성하여 키 저장소 파일에 저장합니다. 자체 서명 인증서는 사용할 수 없습니다. CA에서 인증서를 생성해야 합니다.
  • apigee-sso.의 구성 설정을 업데이트합니다.

인증서와 키에서 키 저장소 파일을 만들려면 다음 단계를 따르세요.

  1. JKS 파일의 디렉터리를 만듭니다.
    > sudo mkdir -p /opt/apigee/customer/application/apigee-sso/tomcat-ssl/
  2. 새 디렉터리로 변경합니다.
    > cd /opt/apigee/customer/application/apigee-sso/tomcat-ssl/
  3. 인증서와 키가 포함된 JKS 파일을 만듭니다. CA에서 서명한 인증서가 포함된 이 모드의 키 저장소를 지정해야 합니다. 자체 서명 인증서는 사용할 수 없습니다. JKS 파일을 만드는 예시는 Edge 온프레미스용 TLS/SSL 구성을 참조하세요.
  4. 'apigee' 사용자가 소유한 JKS 파일을 만듭니다.
    > sudo chown -R apigee:apigee /opt/apigee/customer/application/apigee-sso/tomcat-ssl

에지 SSO 모듈을 구성하려면 다음 안내를 따르세요.

  1. 구성 파일에 다음 설정을 추가합니다.
    # SSL_TERMINATION 모드를 사용 설정합니다.
    SSO_TOMCAT_PROFILE=SSL_TERMINATION

    # 키 저장소 파일의 경로를 지정합니다.
    SSO_TOMCAT_KEYSTORE_FILEPATH=/opt/apigee/customer/application/apigee-sso/tomcat-ssl/keystore.jks
    SSO_TOMCAT_KEYSTORE_ALIAS=sso

    # 키 저장소를 생성할 때 지정한 비밀번호입니다.
    SSO_TOMCAT_KEYSTORE_PASSWORD=keystorePassword

    # HTTPS 포트 번호를 1025에서 65535 사이로 지정합니다.
    # 일반적으로 포트 1024 이하에는 apigee-sso를 통한 루트 액세스가 필요합니다.
    # 기본값은 9099입니다.
    SSO_TOMCAT_PORT=9443
    SSO_PUBLIC_URL_PORT=9443

    # apigee-sso의 공개 액세스 스키마를 https로 설정합니다.
    SSO_PUBLIC_URL_SCHEME=https
  2. Edge SSO 모듈을 구성합니다.
    > /opt/apigee/apigee-service/bin/apigee-service apigee-sso setup -f configFile
  3. 이제 부하 분산기의 포트 9443에서 HTTPS 요청을 실행하여 Edge SSO에 액세스하도록 IDP 구성을 업데이트합니다. 자세한 내용은 SAML IDP 구성을 참조하세요.
  4. 다음 속성을 설정하여 HTTPS용 Edge UI 구성을 업데이트합니다.
    SSO_PUBLIC_URL_PORT=9443
    SSO_PUBLIC_URL_SCHEME=https


    자세한 내용은 Edge UI에서 SAML 사용 설정을 참고하세요.
  5. 개발자 서비스 포털 또는 API BaaS를 설치한 경우 HTTPS를 사용하여 Ede SSO에 액세스하도록 업데이트하세요. 자세한 내용은 다음을 참고하세요.

SSL_TERMINATION 모드 사용 시 SSO_TOMCAT_PROXY_PORT 설정

부하 분산기의 TLS를 종료하지만 부하 분산기와 Edge SSO 간의 TLS를 사용 설정하는 부하 분산기가 에지 SSO 모듈 앞에 있을 수 있습니다. 위 그림에서 SSL_PROXY 모드의 경우 부하 분산기와 에지 SSO 간 연결에 TLS가 사용된다는 의미입니다.

이 시나리오에서는 위에서 SSL_TERMINATION 모드에서 한 것처럼 에지 SSO에 TLS를 구성합니다. 하지만 부하 분산기가 Edge SSO에서 TLS에 사용하는 TLS 포트 번호와 다른 TLS 포트 번호를 사용하는 경우 구성 파일에 SSO_TOMCAT_PROXY_PORT 속성도 지정해야 합니다. 예를 들면 다음과 같습니다.

  • 부하 분산기가 포트 443에서 TLS를 종료함
  • 에지 SSO가 포트 9443에서 TLS를 종료합니다.

구성 파일에 다음 설정을 포함해야 합니다.

# TLS를 종료하기 위한 부하 분산기의 포트 번호를 지정합니다.
# 이 포트 번호는 apigee-sso가 리디렉션 URL을 생성하는 데 필요합니다.
SSO_TOMCAT_PROXY_PORT=443
SSO_PUBLIC_URL_PORT=443

포트 443에서 HTTPS 요청을 하도록 IDP 및 Edge UI를 구성합니다.