Table of Contents |
---|
개요
보안을 강화하려면 OAuth 2.0 으로 인증하고 권한을 부여하고 TLS / HTTPS를 사용하도록 CloudHub를 구성합니다 .
OAuth 2.0 구성
Info |
---|
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 생성
Code Block openssl rand -base64 256 | tr -d '\n'
환경 변수 설정
Code Block export TOKEN_SECRET=<mysecret>
OAuth provider에 대한 Configurations 설정
CloudHub에서 OAuth 2.0 인증을 사용하려면 사용하려는 OAuth 2.0 인증 공급자에 특정한 구성 옵션을 설정해야 합니다.
Info |
---|
먼저 Opensssl을 통한 Token Secret 생성을 해야 합니다. |
GitHub 인증 구성
GitHub에서 새로운 OAuth Application을 등록하는 단계에 따라 Client ID 및 Client Secret를 발급받습니다.
GitHub Application 등록 페이지에서 아래와 같이 값을 입력합니다.
1단계 : GitHub의 Register a new OAuth application 접속
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 환경 변수 설정
Code Block |
---|
export GH_CLIENT_ID=<client-id-from-github> export GH_CLIENT_SECRET=<client-secret-from-github> |
또는 Command Line 환경 변수 설정
Code Block |
---|
--github-client-id=<client-id-from-github> --github-client-secret=<client-secret-from-github> |
Info |
---|
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 및 서비스 접속 후 프로젝트 생성
2단계 : OAuth 동의 화면 등록
3단계 : 사용자 인증 정보 등록 후 생성 버튼 클릭
Google Client ID, Client Secret 가 생성됩니다.
4단계 : Google에서 제공한 자격 증명으로 CloudHub 환경 변수 설정
Code Block |
---|
export GOOGLE_CLIENT_ID=<client-id-from-google> export GOOGLE_CLIENT_SECRET=<client-secret-from-google> export PUBLIC_URL=http://localhost |
또는 Command Line 환경 변수 설정
Code Block |
---|
--google-client-id=<client-id-from-google> --google-client-secret=<client-secret-from-google> --public-url=http://localhost |
Info |
---|
Google 특정 OAuth 2.0 인증 옵션 --google-client-id= OAuth 2.0 지원에 필요한 Google Client ID 값입니다. 환경 변수: $GOOGLE_CLIENT_ID --google-client-secret= OAuth 2.0 지원에 필요한 Google Client Secret 값입니다. 환경 변수: $GOOGLE_CLIENT_SECRET --google-domains= |
Auth0 인증 구성
Auth0 계정 설정
1단계 : OAuth0 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 환경 변수 설정
Code Block |
---|
export AUTH0_DOMAIN=<domain-from-auth0> export AUTH0_CLIENT_ID=<client-id-from-auth0> export AUTH0_CLIENT_SECRET=<client-secret-from-auth0> export PUBLIC_URL=http://localhost |
또는 Command Line 환경 변수 설정
Code Block |
---|
--auth0-domain=<domain-from-auth0> --auth0-client-id=<client-id-from-auth0> --auth0-client-secret=<client-secret-from-auth0> --public-url=http://localhost |
Info |
---|
Auth0 관련 OAuth 2.0 인증 옵션 자세한 정보는 Auth0 인증 구성을 참조합니다. --auth0-domain= Auth0 클라이언트의 하위 도메인 Auth0 클라이언트의 구성 페이지에서 사용 가능합니다. 예 : https://myauth0client.auth0.com 환경 변수: $AUTH0_DOMAIN --auth0-client-id= OAuth 2.0 지원에 필요한 Auth0 Client ID 값입니다. 환경 변수: $AUTH0_CLIENT_ID --auth0-client-secret= OAuth 2.0 지원에 필요한 Auth0 Client Secret 값입니다 환경 변수: $AUTH0_CLIENT_SECRET |