IdentityServer4,IResourceStore.GetAllResources()
IdentityServer4, IResourceStore.GetAllResources()
我正在考虑构建一个 class 实现 IdentityServer IResourceStore
接口。我的目标是提供自定义存储库中定义的 IdentityResource
和 ApiResource
集合。
理想情况下,我会收到对这些资源的请求并用与查询相关的子集进行响应。简而言之:你只得到你所要求的。
GetAllResources()
方法让我怀疑:IdentityServer 是否真的要求我从我的存储库中提取我的整套身份和 API 资源并使其可用?在这一点上,我不知道这些集合会增长到多大,也不知道从存储库中提取它们的成本。
简单地使用 null 或空的资源列表进行响应会产生什么后果?
-S
它在IResourceStoreExtensions
class 的GetAllEnabledResourcesAsync
方法中使用,DiscoveryEndpoint
又使用它。因此,如果您不实施此方法,Discovery 端点将无法显示任何范围或声明。
不执行我的意思是 return 一些空列表或其他东西,而不是抛出 NotImplementedException
或 return null...那会破坏一切。
我正在考虑构建一个 class 实现 IdentityServer IResourceStore
接口。我的目标是提供自定义存储库中定义的 IdentityResource
和 ApiResource
集合。
理想情况下,我会收到对这些资源的请求并用与查询相关的子集进行响应。简而言之:你只得到你所要求的。
GetAllResources()
方法让我怀疑:IdentityServer 是否真的要求我从我的存储库中提取我的整套身份和 API 资源并使其可用?在这一点上,我不知道这些集合会增长到多大,也不知道从存储库中提取它们的成本。
简单地使用 null 或空的资源列表进行响应会产生什么后果?
-S
它在IResourceStoreExtensions
class 的GetAllEnabledResourcesAsync
方法中使用,DiscoveryEndpoint
又使用它。因此,如果您不实施此方法,Discovery 端点将无法显示任何范围或声明。
不执行我的意思是 return 一些空列表或其他东西,而不是抛出 NotImplementedException
或 return null...那会破坏一切。