layout: docs-default
服务工厂
IdentityServer3实现了OpenID Connect和OAuth2的诸多特性,大部分特性设计成可以被替换。如果IdentityServer3默认实现不符合你的需要,你可以方便的重写部分特性,甚至可以完全用不同的实现来替换IdentityServer3.事实上,IdentityServer3有大量的扩展点需要托管程序来扩展,比如:保存配置数据,实现用户凭据的验证,管理用户信息等。
扩展点分为三大类:
强制扩展
这些扩展是IdentityServer3正常运行所必须的。
-
UserService
- 实现基于本地用户信息存储,相关的外部用户,声明获取和登出逻辑.
IdentityServer3提供两个标准实现
和
- 实现基于本地用户信息存储,相关的外部用户,声明获取和登出逻辑.
-
ScopeStore
- 实现作用域信息的获取。
-
ClientStore
- 实现客户端配置信息的获取
生产场景必须扩展 (默认使用内存存储实现)
-
AuthorizationCodeStore
- 授权码的保存和获取()
-
TokenHandleStore
- 保存和获取参考令牌()
-
RefreshTokenStore
- 保存和获取更新令牌()
-
ConsentStore
- 保存和获取
同意(consent)
信息 ()
- 保存和获取
-
ViewService
- 获取UI视图,默认使用内嵌的UI ()
可选扩展 (有默认实现,不喜欢就自己写)
-
TokenService
- 创建身份和访问令牌()
-
ClaimsProvider
- 获取身份和访问令牌的声明信息()
-
TokenSigningService
- 创建和签署安全令牌()
-
CustomGrantValidator
- 实现自定义用户授权类型()
-
CustomRequestValidator
- 实现自定义的附加授权验证和令牌申请()
-
RefreshTokenService
- 创建和刷新 更新令牌()
-
ExternalClaimsFilter
- 为外部身份提供服务 过滤和转换声明()
-
CustomTokenValidator
- 实现自定义的附加令牌验证服务()
-
CustomTokenResponseGenerator
- 运行添加附加数据到令牌响应体里面
-
ConsentService
- 实现
授权(consent)
逻辑 ()
- 实现
-
ClientPermissionsService
- 实现
同意(consent)
,参考令牌和更新令牌()
- 实现
-
EventService
- 转发事件给其他日志系统 (e.g. elastic search) ()
-
RedirectUriValidator
- 实现重定向和登出转移URIs的验证()
-
LocalizationService
- 实现本地化显示信息 ()
-
CorsPolicyService
- 实现跨域CORS策略()