8장. 애플리케이션 인증 정보
애플리케이션 인증 정보를 사용하여 구성 파일에 사용자 계정 자격 증명을 포함하는 것을 방지할 수 있습니다. 대신 사용자는 단일 프로젝트에 대한 위임된 액세스를 수신하고 고유한 시크릿을 보유한 애플리케이션 자격 증명을 생성합니다. 사용자는 위임된 권한을 해당 프로젝트의 단일 역할로 제한할 수도 있습니다. 이를 통해 인증된 서비스가 모든 프로젝트와 역할이 아닌 하나의 프로젝트와 역할에 대해서만 액세스할 수 있는 최소 권한 원칙을 채택할 수 있습니다.
이 방법론을 사용하여 사용자 자격 증명을 공개하지 않고 API를 사용할 수 있으며 애플리케이션은 포함된 사용자 인증 정보 없이도 Keystone에 인증할 수 있습니다.
애플리케이션 인증 정보를 사용하여 토큰을 생성하고 애플리케이션의 keystone_authtoken 설정을 구성할 수 있습니다. 이러한 사용 사례는 다음 섹션에 설명되어 있습니다.
애플리케이션 자격 증명은 생성한 사용자 계정에 따라 달라지므로 해당 계정이 삭제된 경우 종료되거나 관련 역할에 대한 액세스 권한이 끊어집니다.
8.1. 애플리케이션 인증 정보를 사용하여 토큰 생성 링크 복사링크가 클립보드에 복사되었습니다!
애플리케이션 인증 정보는 대시보드에서 셀프 서비스 기능으로 사용자가 사용할 수 있습니다. 이 예제에서는 사용자가 애플리케이션 인증 정보를 생성한 다음 이를 사용하여 토큰을 생성하는 방법을 보여줍니다.
테스트 프로젝트를 생성하고 사용자 계정을 테스트합니다.
AppCreds라는 프로젝트를 생성합니다.openstack project create AppCreds
$ openstack project create AppCredsCopy to Clipboard Copied! Toggle word wrap Toggle overflow AppCredsUser라는 사용자를 생성합니다.openstack user create --project AppCreds --password-prompt AppCredsUser
$ openstack user create --project AppCreds --password-prompt AppCredsUserCopy to Clipboard Copied! Toggle word wrap Toggle overflow AppCreds프로젝트의멤버역할에AppCredsUser액세스 권한을 부여합니다.openstack role add --user AppCredsUser --project AppCreds member
$ openstack role add --user AppCredsUser --project AppCreds memberCopy to Clipboard Copied! Toggle word wrap Toggle overflow
대시보드에
AppCredsUser로 로그인하고 애플리케이션 인증 정보를 만듭니다.개요ID애플리케이션 인증 정보+ 애플리케이션 인증 정보 생성.참고애플리케이션 자격 증명이라는 팝업 창을 닫은 후clouds.yaml파일 내용을 다시 다운로드할 수 없는지 확인합니다.CLI를 사용하여
/home/stack/.config/openstack/clouds.yaml이라는 파일을 생성하고clouds.yaml파일의 내용을 붙여넣습니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow 참고이러한 값은 배포에 따라 다릅니다.
애플리케이션 자격 증명을 사용하여 토큰을 생성합니다. 다음 명령을 사용할 때 특정 사용자로 소싱해서는 안 되며
clouds.yaml파일과 동일한 디렉터리에 있어야 합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow
init()과 유사한 오류가 발생하면 'application_credential_secret'이라는 키워드 인수가 예기치 않은 경우 이전 인증 정보로 계속 제공될 수 있습니다. 새로운 환경의 경우 sudo su - stack 을 실행합니다.