我有两个不同的SPA客户A和B。 A和B的用户来自不同的来源,A的用户经过外部身份验证,B的用户来自AzureAD。
他们都使用IdentityServer进行身份验证并获得具有不同声明的JWT。
两个客户端都应该能够使用相同的API服务。 API服务具有要求特定声明将具有的策略。不同的策略适用于不同的API。
因此,客户端A的用户可以访问某些API,而客户端B的用户可以访问其他API(最终可能是一些常见的API)。
但是,如果先登录到客户端A,然后再登录到客户端B,则它们已经在IdSrv上设置了auth cookie,因此Authorize端点只是将它们通过客户端A的身份验证发送回JWT。
我可以让不同的客户端对IdentityServer使用不同的身份验证cookie吗?
基本上,我希望单个IdSrv实例充当两个不同的实例。
我可以有两个域(a.idsrv.example.com和b.idsrv.example.com)指向同一服务(idsrv.example.com)并获得cookie隔离,但是还有其他方法吗?