2.4.5 Swift와 Keystone 관계
Swift에는 SwAuth를 이용하는 인증 방법과 Keystone을 이용하는 인증 방법이 있습니다. 최근에는 Keystone을 이용해서 주로 인증하며, Keystone에는 프로젝트, 사용자, 롤이 있습니다. 다음과 같이 연동됩니다.
• 관리자(admin, swiftoperator)는 사용자와 컨테이너를 생성, 삭제할 수 있습니다.
• 관리자는 오브젝트도 올리기, 내려받기, 삭제를 할 수 있습니다.
• 일반 사용자(member)는 사용자와 컨테이너를 생성할 수 없습니다.
• 일반 사용자는 관리자가 미리 생성해서 권한을 준 컨테이너만 사용할 수 있습니다.
• 일반 사용자는 관리자가 설정한 권한으로 오브젝트 목록을 확인할 수 있습니다.
• 일반 사용자는 관리자가 설정한 권한으로 데이터를 올리고 내릴 수 있습니다.
• 특정 사용자에게 관리자(admin) 권한을 부여하려면 리셀러어드민(ResellerAdmin) 롤을 주어야 합니다.
• 해당 사용자는 관리자가 할 수 있는 기능을 모두 사용할 수 있습니다.
▲ 그림 2-26 Swift와 Keystone 관계
Swift 기능 |
Operator 롤 |
Reseller 롤 |
일반 사용자(member) |
컨테이너 내 오브젝트 조회 |
◯ |
◯ |
읽기 권한을 부여 받은 경우만 |
컨테이너 생성, 삭제 |
◯ |
◯ |
× |
오브젝트 올리기, 내려받기 |
◯ |
◯ |
쓰기 권한을 부여 받은 경우만 |
컨테이너 ACL 적용 |
◯ |
◯ |
× |