2.3. roxctl CLI를 사용하여 인증
인증의 경우 API 토큰, 관리자 암호 또는 roxctl 중앙 로그인
명령을 사용할 수 있습니다.
API 토큰을 효과적으로 사용하려면 다음 지침을 따르십시오.
- 연속 통합(CI)이 있는 프로덕션 환경에서 API 토큰을 사용합니다. 각 토큰에는 특정 액세스 권한이 할당되어 수행할 수 있는 작업을 제어할 수 있습니다. 또한 API 토큰에는 브라우저 기반 로그인과 같은 대화형 프로세스가 필요하지 않으므로 자동화된 프로세스에 적합합니다. 이 토큰에는 TTL(Time-to-live) 값이 1년이며 원활한 통합 및 운영 효율성을 위한 유효 기간을 더 연장할 수 있습니다.
- 테스트 목적으로만 관리자 암호를 사용하십시오. 프로덕션 환경에서 사용하지 마십시오.
-
로컬 대화형 용도로만
roxctl 중앙 로그인
명령을 사용합니다.
2.3.1. API 토큰 생성
프로세스
-
RHACS 포털에서 플랫폼 구성
통합으로 이동합니다. - 인증 토큰 범주로 스크롤한 다음 API 토큰 을 클릭합니다.
- 토큰 생성을 클릭합니다.
- 토큰 이름을 입력하고 필요한 액세스 수준(예: 지속적 통합 또는 센서생성자)을 제공하는 역할을 선택합니다.
생성 을 클릭합니다.
중요생성된 토큰을 복사하여 안전하게 저장합니다. 다시는 볼 수 없습니다.
2.3.2. API 토큰 내보내기 및 저장
프로세스
인증 토큰을 생성한 후 다음 명령을 입력하여
ROX_API_TOKEN
변수로 내보냅니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow export ROX_API_TOKEN=<api_token>
$ export ROX_API_TOKEN=<api_token>
(선택 사항): 토큰을 파일에 저장하고 다음 명령을 입력하여
--token-file
옵션과 함께 사용할 수도 있습니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow roxctl central debug dump --token-file <token_file>
$ roxctl central debug dump --token-file <token_file>
다음 지침을 참조하십시오.
-
-password
(-p
)와--token-file
옵션을 동시에 사용할 수 없습니다. -
ROX_API_TOKEN
변수를 이미 설정하고--token-file
옵션을 지정한 경우roxctl
CLI는 인증에 지정된 토큰 파일을 사용합니다. -
ROX_API_TOKEN
변수를 이미 설정하고--password
옵션을 지정한 경우roxctl
CLI는 인증에 지정된 암호를 사용합니다.
2.3.3. 인증 공급자를 사용하여 roxctl로 인증
Central에서 인증 공급자를 구성하고 roxctl
CLI를 사용하여 로그인 프로세스를 시작할 수 있습니다. ROX_ENDPOINT
변수를 설정하고 roxctl central login
명령을 사용하여 로그인 프로세스를 시작하고, 브라우저 창에서 인증 공급자를 선택한 다음, 다음 절차에 설명된 대로 roxctl
CLI에서 토큰 정보를 검색합니다.
사전 요구 사항
- 선택한 OIDC(OpenID Connect)와 조각 또는 쿼리 모드와 같은 인증 공급자를 선택했습니다.
프로세스
다음 명령을 실행하여
ROX_ENDPOINT
변수를 중앙 호스트 이름 및 포트로 설정합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow export ROX_ENDPOINT=<central_hostname:port>
export ROX_ENDPOINT=<central_hostname:port>
다음 명령을 실행하여 Central에 대한 로그인 프로세스를 시작합니다.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow roxctl central login
$ roxctl central login
-
roxctl
CLI 내에서 URL이 출력되어 사용할 인증 공급자를 선택할 수 있는 브라우저 창으로 리디렉션됩니다. 인증 공급자로 로그인합니다.
성공적으로 로그인한 후 브라우저 창에 인증이 성공했음을 나타내며 브라우저 창을 닫을 수 있습니다.
roxctl
CLI는 액세스 토큰, 액세스 토큰 만료 시간, 발행된 경우 새로 고침 토큰과 같은 세부 정보, 이러한 값이 로컬에 저장됨을 알리는 등 토큰 정보를 표시합니다.출력 예
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Please complete the authorization flow in the browser with an auth provider of your choice. If no browser window opens, please click on the following URL: http://127.0.0.1:xxxxx/login INFO: Received the following after the authorization flow from Central: INFO: Access token: <redacted> INFO: Access token expiration: 2023-04-19 13:58:43 +0000 UTC INFO: Refresh token: <redacted> INFO: Storing these values under $HOME/.roxctl/login…
Please complete the authorization flow in the browser with an auth provider of your choice. If no browser window opens, please click on the following URL: http://127.0.0.1:xxxxx/login INFO: Received the following after the authorization flow from Central: INFO: Access token: <redacted>
1 INFO: Access token expiration: 2023-04-19 13:58:43 +0000 UTC
2 INFO: Refresh token: <redacted>
3 INFO: Storing these values under $HOME/.roxctl/login…
4 중요환경을 설정하여 구성이 저장된 디렉터리를 확인합니다. 기본적으로 구성은
$HOME/.roxctl/roxctl-config
디렉터리에 저장됩니다.-
$ROX_CONFIG_DIR
환경 변수를 설정하면 구성이$ROX_CONFIG_DIR/roxctl-config
디렉터리에 저장됩니다. 이 옵션은 가장 높은 우선 순위를 갖습니다. -
$XDG_RUNTIME_DIR
환경 변수를 설정하고$ROX_CONFIG_DIR
변수가 설정되지 않은 경우 구성은$XDG_RUNTIME_DIR /roxctl-config
디렉터리에 저장됩니다. -
$ROX_CONFIG_DIR
또는$XDG_RUNTIME_DIR
환경 변수를 설정하지 않으면 구성이$HOME/.roxctl/roxctl-config
디렉터리에 저장됩니다.
-