개요
이전 섹션은 Backstage의 다양한 인증 방법을 다루었지만, Backstage는 특정 데이터, API 또는 인터페이스 액션을 인가할 수도 있어요. 즉 Backstage는 시스템의 주어진 사용자에게 어떤 유형의 접근이 허용되는지에 대한 규칙을 시행할 수 있는 능력을 갖는다는 뜻이에요.
출처: 문서
본문
이전 섹션은 Backstage의 다양한 인증 방법을 다루었지만, Backstage는 특정 데이터, API 또는 인터페이스 액션을 인가할 수도 있어요. 즉 Backstage는 시스템의 주어진 사용자에게 어떤 유형의 접근이 허용되는지에 대한 규칙을 시행할 수 있는 능력을 갖는다는 뜻이에요.
기본적으로 Backstage 엔드포인트는 보호되지 않으며 모든 액션은 누구에게나 제공돼요. 그러나 어떤 사용자가 어떤 리소스와 액션에 접근할 수 있는지 구성하는 것은 많은 조직의 일반적인 필요예요. 권한 프레임워크는 통합자가 그 리소스와 액션에 대한 세분화된 권한 설정을 사용해 이를 달성할 수 있게 해줘요.
권한 프레임워크는 몇 가지 핵심 속성을 염두에 두고 설계되었어요.
- 유연성: 프레임워크는 통합자가 많은 다양한 인가 방법을 구성할 수 있게 해줘요. 여기에는 역할 기반 접근 제어(RBAC), 속성 기반 접근 제어(ABAC), 코드로 표현된 맞춤형 로직, 또는 외부 인가 제공자와의 통합 같은 구현이 포함될 수 있어요.
- 사용성: 권한 프레임워크는 모든 움직이는 부품을 기본 제공하여 통합자가 자신이 신경 쓰는 것(권한 정책) 구성에 집중할 수 있게 해줘요. 또한 플러그인 작성자가 Backstage 코어에서 아무 변경도 할 필요 없이 플러그인에 권한 지원을 통합할 수 있게 해줘요.
어떻게 작동하나요?
- 플러그인 작성자는 플러그인의 어떤 리소스를 인가 뒤에 놓을 수 있는지, 사용자가 그 리소스에 대해 수행할 수 있는 액션 유형을 선언해 플러그인에 권한 지원을 추가할 수 있어요.
- 기여자는 인가 방법(예: RBAC)을 구현하고 공유할 수 있어요.
- 통합자는 어떤 사용자가 어떤 리소스에 대해 어떤 액션을 취할 수 있는지 정의하는 정책을 작성하거나 구성할 수 있어요.
- 사용자가 어떤 액션을 수행하기 위한 요청을 트리거해요. 요청은 플러그인이 지정한 권한(이 경우 리소스 읽기 액션)을 사용해 인가 세부 정보를 지정해요.
- 액션은 사용자가 UI와 상호작용해 트리거될 수 있지만, 플러그인 백엔드에 대한 직접 요청일 수도 있어요.
- 플러그인 백엔드는 인가 세부 정보와 함께 권한 프레임워크의 백엔드에 요청을 보내요.
- 권한 프레임워크의 백엔드는 인가 결정을 권한 정책에 위임해요. 정책은 통합자가 코드, 제공된 인가 방법(예: RBAC), 또는 외부 인가 제공자와의 통합을 사용해 지정해요.
- 권한 백엔드에서 플러그인으로 인가 결정이 전송돼요.
- 사용자에게 접근이 부여되거나 오류가 표시돼요. 사용자에 대한 응답을 구현하는 것은 플러그인의 책임이에요.
어떻게 시작하나요?
Backstage 통합자를 위한 "getting started" 권한 문서를 참고하세요.
플러그인 작성자라면, 플러그인에 권한을 통합하는 방법에 대한 플러그인 작성자용 권한 문서를 참고하세요.