다양한 영역과 매우 세분화 된 사용 권한이있는 응용 프로그램을 연합하는 중입니다. 여러 영역마다 서버로 다시 통신 할 수있는 연합 WCF 엔드 포인트가 있습니다. 세분화 된 사용 권한으로 인해 모든 사용 권한을 포함하는 단일 토큰은 1MB 이상으로 커질 수 있습니다.발급 된 토큰으로 STS에 인증
요구 사항은 초기 로그인 과정 후에 사용자의 사용자 이름과 암호 자격 증명이 Google 코드베이스에 저장되어서는 안됩니다. 권한을 결합하여 더 작은 집합을 만들 수는 없습니다. 우리는 STS 구현을 위해 Thinktecture.IdentityServer를 사용하고 있습니다.
내 제안 된 솔루션은 STS에서 각 끝점을 자체 영역으로 나누는 것이며 STS는 영역에 대해 지정된 사용 권한 클레임이있는 토큰을 반환합니다. 이 작업을 수행하려면 사용자 이름/암호로 인증 된 인증 영역을 갖고 다른 영역에 대한 인증을위한 자격 증명으로 사용될 수있는 사용자, 임차인 및 하위 그룹 ID가 포함 된 토큰을 반환해야합니다.
영역에 특정한 토큰을 발행하도록 STS를 설정하는 작업이 이미 구현되었습니다. 남은 유일한 요구 사항은 사용자 이름/암호가 코드 기반 내에서 유지되지 않는다는 것입니다.
특정 영역에서 이전에 발급 한 토큰을 제공하여 인증을 허용하도록 STS를 구성 할 수 있습니까? 내가 오지 않은 더 나은 해결책이 있습니까?
나는 이것이 STS A === STS B 일 경우에도 잘 동작 할 것이라고 가정하고 이것을 시도 할 것입니다. 그것이 작동하면 이것을 인정 된 대답으로 표시 할 것입니다. RP에서 권한 저장소를 사용하는 것과 관련하여 데이터 저장소 요구 사항 때문에 현재로서는 실용적이지 않습니다. – psaxton