spring-oidc
jwks
spring-cloud-gateway
jks
nacos
.\minio.exe server D:\MinIO\Data --console-address ":9100" --address ":9090"
http://localhost:9100/login
youlai-mall Jan 19, 2020 有来科技 https://www.youlai.tech/
youlai-cloud 1.1 Aug 28, 2022 2k 有来科技 上海
dante 1.1 https://www.herodotus.cn/ 码匠君 2021.05.15 Dante Cloud 正式开源 轻喜到家
pi-cloud 1.0 https://www.yuque.com/zengpi/szfuh0/dw9fvl test
gc-framework 1.0 https://github.com/krycai/gc-framework test
ruoyi-vue-pro https://doc.iocoder.cn/ https://www.iocoder.cn/ jdk1.8
yudao-cloud 芋道 https://cloud.iocoder.cn/
pigcloud 0.4 2018-07-21 https://pig4cloud.com/ 佩格科技 jdk1.8
业务流程如下:
客户端向网关发起认证请求。
网关将认证请求直接转发到给认证服务。
认证服务读取请求中的验证信息(例如用户名、密码)进行验证,验证通过后返回Code给网关。
网关将携带Code的应答返回给客户端。
客户端向网关请求回调接口,请求中携带Code。
网关请求认证服务颁发Token,请求中携带Code、Client ID、Client Secret。
认证服务验证合法性,并返回ID Token。
认证成功,网关将携带ID Token的应答返回给客户端。
客户端向网关发起业务请求,请求中携带ID Token,网关校验请求中是否携带ID Token和合法性。
网关校验客户端的业务请求合法,将请求透传给业务服务。
业务服务进行业务处理后应答。
网关将业务应答返回给客户端。
SELECT COUNT(*) FROM oauth2_registered_client WHERE client_secret = ?
com.mysql.cj.jdbc.ClientPreparedStatement: SELECT COUNT(*) FROM oauth2_registered_client WHERE client_secret = '{noop}secret'
com.mysql.cj.jdbc.ClientPreparedStatement: SELECT id, client_id, client_id_issued_at, client_secret, client_secret_expires_at, client_name, client_authentication_methods, authorization_grant_types, redirect_uris, post_logout_redirect_uris, scopes, client_settings,token_settings FROM oauth2_registered_client WHERE client_id = 'messaging-client'
client初始化:
used to map OAuth2ClientProperties to client registrations.
OAuth2ClientRegistrationRepositoryConfiguration#clientRegistrationRepository
查询授权服务配置地址信息openid-configuration
org.springframework.security.oauth2.client.registration.ClientRegistrations#oidc
Map<String, Object> configuration = rest.exchange(request, typeReference).getBody()
GET
http://localhost:9000/.well-known/openid-configuration
RESULT:
{
"