Oauth 2.0 OpenID连接第一方和第三方依赖方体系结构
我正在为Company-X的X1和X2应用程序编写REST-API 为了让用户访问并登录到X1和X2,他们应该拥有一个有效的Company-X帐户,就像您需要google帐户使用gmail和google+一样。简言之,X1和X2本身没有身份验证,它使用Company-X身份提供程序(IP)进行身份验证和会话 在OpenID Connect(OIDC)条款中,X1和X2将是依赖方(RP)。X1是用户代理,X2是服务器。Company-X IP包含授权服务器和资源(受保护的REST-API)Oauth 2.0 OpenID连接第一方和第三方依赖方体系结构,oauth-2.0,openid-connect,Oauth 2.0,Openid Connect,我正在为Company-X的X1和X2应用程序编写REST-API 为了让用户访问并登录到X1和X2,他们应该拥有一个有效的Company-X帐户,就像您需要google帐户使用gmail和google+一样。简言之,X1和X2本身没有身份验证,它使用Company-X身份提供程序(IP)进行身份验证和会话 在OpenID Connect(OIDC)条款中,X1和X2将是依赖方(RP)。X1是用户代理,X2是服务器。Company-X IP包含授权服务器和资源(受保护的REST-API) 我选
- 我选择这些补助金类型对吗?(见图表图例)
- 对于这种情况,这是推荐的体系结构吗?(具有用于登录的集中帐户的第一方应用程序,将来将为第三方应用程序提供IP)
第一点需要考虑的是客户端应用程序运行的环境:
- 基于浏览器->隐式授权
- 服务器端->授权码授予和/或客户端凭据授予
- 本机应用程序->主要是隐式授权,但也可以考虑授权代码授权
客户端凭据 (来源:) 授权码授予 (来源:)
就架构而言从我的角度来看,这似乎是正确的方法。它使用公共标准并满足您的要求,因此我高度怀疑是否有更好的替代方案。认证系统的大问题不是设计阶段,而是实现本身,特别是考虑到使其“工作”需要大约20%的努力,剩下的80%是确保您不会搞砸