OAuth协议:Web安全与支付流程解析
1. OpenID与认证授权基础
在Web安全领域,OpenID本身并不涵盖认证功能,因此在代码里采用了基于表单的简单认证方式。通过检查消费者是否通过POST登录表单到匹配 {/userId} 模板的URI来完成认证。一旦消费者完成认证,就进入OpenID的范畴,利用 ServerManager.authResponse() 方法计算认证信息,并借助消费者和JAX - RS管道将其传回Restbucks。
OpenID在互联网上是一种流行的协议,既适用于人类交互的Web场景,也可用于程序化应用。不过,它在Web上存在信任问题,依赖方没有义务接受任意提供商的OpenID URI。但在企业环境中,若强制使用特定的OpenID提供商,信任问题就会迎刃而解。未来,企业安全框架有望支持OpenID,例如微软的Windows Identity Foundation(WIF)已对OpenID提供开源支持。
认证用于确定与服务交互的对象,而授权则决定消费者对服务所暴露资源的操作权限。在企业环境中,用户名和密码通常由目录服务集中管理,授权常基于用户名和密码组合,成功登录系统可获得对部分功能和数据的访问权。然而,在第三方为企业提供服务时,传统的集中共享凭证方式往往不可行或不可取,这时OAuth协议就发挥了作用。
2. OAuth协议概述
OAuth协议允许服务和应用与第三方服务中安全托管的资源进行交互,而无需资源所有者共享其凭证。以Restbucks为例,为解决忙碌的客户在需要咖啡时可能没有现金或卡的问题,它与咖啡代金券提供商合作。客户可使用代金券在Res
超级会员免费看
订阅专栏 解锁全文
825

被折叠的 条评论
为什么被折叠?



