Managing CloudHub security

 

개요

보안을 강화하려면 OAuth 2.0(https://oauth.net) 으로 인증하고 권한을 부여하고 TLS / HTTPS를 사용하도록 CloudHub를 구성합니다 .

OAuth 2.0 구성

OAuth 2.0을 구성하면 CloudHub 관리 탭이 표시됩니다. 그런 다음 여러 조직과 사용자를 설정할 수 있습니다 .

  • OAuth 2.0 제공자 및 JWT (JSON Web Token)를 사용하여 사용자를 인증하고 role-based access controls를 사용하도록 CloudHub를 구성합니다.

  • OAuth 및 JWT에 대한 자세한 내용은 RFC 6749 및 RFC 7519를 참조합니다 .

Token Secret 생성

  • CloudHub의 OAuth 2.0 공급자를 구성하려면 TOKEN_SECRET 환경 변수 (또는 명령어 옵션)를 구성해야 합니다.

  • CloudHub는 이 Token Secret을 사용하여 모든 Access Token에 대한 JWT 서명을 생성합니다.

  1. Openssl을 통한 Token Secret 생성

    openssl rand -base64 256 | tr -d '\n'
  2. 환경 변수 설정

    export TOKEN_SECRET=<mysecret>

OAuth provider에 대한 Configurations 설정

  • CloudHub에서 OAuth 2.0 인증을 사용하려면 사용하려는 OAuth 2.0 인증 공급자에 특정한 구성 옵션을 설정해야 합니다.

먼저 Opensssl을 통한 Token Secret 생성을 해야 합니다.

GitHub 인증 구성

  • GitHub에서 새로운 OAuth Application을 등록하는 단계에 따라 Client ID 및 Client Secret를 발급받습니다.

  • GitHub Application 등록 페이지에서 아래와 같이 값을 입력합니다.

1단계 : Register a new OAuth application(https://github.com/settings/applications/new) 접속

2단계

  • Application Name 입력

  • Homepage URL : CloudHub URL 입력 (Application을 로컬로 실행할 경우 : http://localhost:8888)

  • Authorization callback : Homepage URL + Callback URL(/oauth/github/callback)
    예) http://localhost:8888/oauth/github/callback

  • “Register application” 클릭
    - Client ID, Client Secret 가 생성됩니다.

3단계 : GitHub에서 제공한 자격 증명으로 CloudHub 환경 변수 설정

export GH_CLIENT_ID=<client-id-from-github> export GH_CLIENT_SECRET=<client-secret-from-github>

또는 Command Line 환경 변수 설정

GitHub 관련 OAuth 2.0 인증 옵션

--github-client-id= | -i

OAuth 2.0 지원을 위한 GitHub Client ID 값입니다.

환경 변수: $GH_CLIENT_ID

--github-client-secret= | -s

OAuth 2.0 지원을 위한 GitHub Client Secret 값입니다.

환경 변수: $GH_CLIENT_SECRET

--github-organization= | -o

Google 인증 구성

  • OAuth 2.0 자격 증명 얻기 단계에 따라 Google Client ID 및 Client Secret을 포함하여 필요한 Google OAuth 2.0 자격 증명을 얻습니다.

  • Google이 사용자를 Application으로 올바르게 Redirect 할 수 있도록 정규화된 도메인 이름을 사용하여 CloudHub에 공개적으로 액세스 할 수 있는지 확인합니다.

  • CloudHub에 액세스하는 데 사용되는 Google OAuth 2.0 자격 증명 및 Public URL에 대한 CloudHub 환경 변수를 설정합니다.

1단계 : Google API 및 서비스(https://console.developers.google.com) 접속 후 프로젝트 생성

2단계 : OAuth 동의 화면 등록

3단계 : 사용자 인증 정보 등록 후 생성 버튼 클릭

  • Google Client ID, Client Secret 가 생성됩니다.

4단계 : Google에서 제공한 자격 증명으로 CloudHub 환경 변수 설정

또는 Command Line 환경 변수 설정

Auth0 인증 구성

Auth0 계정 설정

1단계 : OAuth0 Dashboard(https://manage.auth0.com/dashboard) 접속 후 Applications => Create Application 클릭

2단계 : Name 입력 후 Regular Web Application 선택

3단계 : Project의 사용된 기술 선택 (아무거나 선택해도 무방함)

4단계 : 설정 탭의 Token Endpoint Authentication Method “NONE” 선택

5단계 : Allowed Callback URLs 입력 (Homepage URL + Callback URL(/oauth/auth0/callback))

6단계 : Auth0 에서 제공한 자격 증명으로 CloudHub 환경 변수 설정

또는 Command Line 환경 변수 설정