권한은 대부분의 응용 프로그램에서 중요하지만 보이지 않는 부분입니다. 권한은 누가 어떤 데이터에 액세스할 수 있는지 정의합니다.Using a physical security analogy, authentication is about앞문으로 들어갈 수 있는 사람은,권한은 대략누가 어떤 방에 열쇠를 가지고 있는지.
역사적으로 개발 팀은 애플리케이션 코드에 권한 논리를 구축했습니다.그러나 권한 논리를 구축하고 유지하는 것은 마음을 끄는 작업이되었으며 시간이 지남에 따라 아무도 잘못된 사람에게 민감한 정보에 대한 액세스를주기를 두려워하여 코드를 만지고 싶지 않습니다.이 문제는 많은 데이터를 사용하여 훈련해야하는 LLM 채팅봇의 폭발에 의해 강화됩니다.이 문제는 최종 사용자에게 노출되어서는 안됩니다.
최근에는 소프트웨어 개발의이 중요한 구성 요소를 해결하기 위해 개발자 도구의 새로운 작물이 등장했습니다. Twilio가 SMS 또는 지불을위한 Stripe를 위해 한 것처럼 Oso와 같은 공급 업체는 해결을 목표로합니다.
Types of Authorization
허가의 종류여러 가지 일반적인 권한 패턴이 있습니다.일반적으로 조직은
Google Docs 예를 들어 확장해 보자 사용자가 문서의 전체 폴더를 만듭니다.시청자폴더에 액세스하려면, you should have시청자이제 우리는 관계 기반 액세스 제어 (또는 ReBAC)를 구현해야 하며, 이는 역할을 필요로 할뿐만 아니라 리소스 간의 관계에 따라 권한을 구성할 필요가 있음을 의미합니다.Now we need to implement relationship based access control (or ReBAC), which means that not only do you need roles, but you also need to organize permissions based on the relationship between resources.
그런 다음 공개 문서 대 개인 문서를 정의, 시간 제한 액세스 (이 사람은 비즈니스가 끝날 때까지 문서에 편집자 액세스 할 수 있습니다) 또는 조건부 액세스 (귀하의 역할이 그렇지 않더라도 민감한 HR 문서에 액세스할 수 없습니다)와 같은 추가 요구 사항을 도입할 수 있습니다.
Securing LLM Chatbots
LLM Chatbots 보안이러한 전통적인 허가 패턴 외에도, 폭발
다음은 최종 사용자에게 응답을 반환하기 전에 권한 검사를 포함하는 권한이 있는 RAG 채팅봇에 대한 데이터 흐름의 예입니다: Below is an example of the data flow for an authorized RAG chatbot, which incorporates permission checks before returning a response to the end user:
Who is using authorization as a service?
누가 서비스로서 권한을 사용합니까?새로운 판매자 제안