Managing CloudHub security
- 1 개요
- 2 OAuth 2.0 구성
- 2.1 Token Secret 생성
- 2.2 OAuth provider에 대한 Configurations 설정
- 2.2.1 GitHub 인증 구성
- 2.2.2 Google 인증 구성
- 2.2.3 Auth0 인증 구성
개요
보안을 강화하려면 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를 구성합니다.
Token Secret 생성
CloudHub의 OAuth 2.0 공급자를 구성하려면 TOKEN_SECRET 환경 변수 (또는 명령어 옵션)를 구성해야 합니다.
CloudHub는 이 Token Secret을 사용하여 모든 Access Token에 대한 JWT 서명을 생성합니다.
Openssl을 통한 Token Secret 생성
openssl rand -base64 256 | tr -d '\n'
환경 변수 설정
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 환경 변수 설정