文档章节

【OAuth2学习之路】Spring Security OAuth官网文档翻译

666B
 666B
发布于 2014/09/09 23:21
字数 1097
阅读 3393
收藏 25

    现将开发文档翻译出来,因为看英文实在是比较吃力的。

    首先看下官方的指南Developers Guide,OAuth的两个版都都有。本文看的是OAuth2的开发指南。

    翻译如下:

Spring Security OAuth2开发指南(OAuth 2 Developers Guide)

目录

        1、入门(Introduction)

        2、OAuth2.0提供端(OAuth 2.0 Provider)

        3、OAuth2.0提供端的实现(OAuth 2.0 Provider Implementation)

        4、授权服务器的配置(Authorization Server Configuration)

            4.1、配置客户端详情(Configuring Client Details)

            4.2、管理Tokens(Managing Tokens)

            4.3、授权类型(Grant Types)

            4.4、配置端点URL(Configuring the Endpoint URLs)

        5、自定义错误处理(Customizing the Error Handling)

        6、资源服务器配置(Resource Server Configuration)

            6.1、配置一个理解oauth表达式处理程序(Configuring An OAuth-Aware Expression Handler)

        7、OAuth2.0的客户端(OAuth 2.0 Client)

            7.1、配置受保护的资源(Protected Resource Configuration)

            7.2、客户端的配置(Client Configuration)

            7.3、访问受保护的资源(Accessing Protected Resources)

            7.4、持久化客户端的Tokens(Persisting Tokens in a Client)

        8、为客户端定制的外部OAuth2提供者(Customizations for Clients of External OAuth2 Providers)

正文

1、入门(Introduction)

    这是支持OAuth2.0的用户指南。对于OAuth1.0,一切都是不同的,所以看它的用户指南

    本用户指南分为两个部分,第一部分是OAuth2.0提供端(OAuth 2.0 Provider),第二部分是OAuth2.0的客户端(OAuth 2.0 Client

2、OAuth2.0提供端(OAuth 2.0 Provider)


    OAuth2.0的提供端的用途是负责将受保护的资源暴露出去。配置包括建立一个可以访问受保护的资源的客户端代表。提供端是通过管理和验证可用于访问受保护的资源的OAuth 2令牌来做的。在适当的地方,提供端也必须为用户提供一个用于确认客户端 是否能够访问受保护的资源的接口(也就是一个页面或是一个窗口)。

3、OAuth 2.0提供端的实现(OAuth 2.0 Provider Implementation)


    在OAuth 2提供者其实是分成授权服务和资源服务两个角色的,而这两个角色有时是存在于同一个应用程序中的,通过Spring Security OAuth你可以有选择的将它们分裂到两个应用程序中,也可以有选择的给授权服务配置多个资源服务。获取令牌(Tokens)的请求是由Spring MVC的控制器端点来处理的,访问受保护的资源是通过标准的Spring Security请求过滤器来处理的。

    下面列举的端点是Spring Security过滤器链实现OAuth 2授权服务器必须的端点:


  • AuthorizationEndpoint  是用于授权服务请求的。默认的URL是:/oauth/authrize。
  • TokenEndpoint  是用于获取访问令牌(Access Tokens)的请求。默认的URL是:/oauth/token。

        下面过滤器是实现一个OAuth2资源服务器所必须的:


  • OAuth2AuthenticationProcessingFilter 这个过滤器是用于加载请求提供的一个授权了的访问令牌是否有效。

对于所有的OAuth 2.0的提供端,通过使用Spring OAuth专门的@Configuration适配器来简化配置。也可以通过XML命名空间来配置OAuth,XML的schema存在:http://www.springframework.org/schema/security/spring-security-oauth2.xsd。命令空间是http://www.springframework.org/schema/security/oauth2

 4、授权服务器的配置(Authorization Server Configuration)

    当你在配置授权服务器时,你不得不考虑客户端用户获取访问令牌的授权类型(例如:authorization code, user credentials, refresh token)。服务器的配置是用来提供客户端详情服务和令牌服务的实现,同时也是用于启用或禁用全部功能中的某些方面。注意,无论如何,每个客户端配置了具体的权限才能使用一定的授权机制和授权访问。即,只是因为你的提供者被配置为支持“客户端凭证”授权类型,并不意味着一个特定的客户端使用的授权类型。

    @EnableAuthorizationServer注解是用于配置配置OAuth2.0授权服务器,和一些@Bean实现AuthorizationServerConfigurer(有一个空方法)

        先列一个目录,待续…………e


© 著作权归作者所有

666B
粉丝 33
博文 97
码字总数 36608
作品 0
深圳
程序员
私信 提问
spring-oauth-server 0.6 发布

spring-oauth-server 0.6版本发布,该版本主要增加有缓存的支持, 具体的功能更新如下: (150) - 修改OAUTH错误时返回JSON数据 (151) - 数据添加Ehcache缓存支持 (158) - 对配置,代码必要的地...

monkeyk7
2016/10/13
1K
0
Spring Security 官方文档学习路径

Spring 目前有三个层次的项目,Spring Framework层,Spring Boot层和Spring Cloud层。这三个层次的项目里都有Spring Security的东西,在加上安全和权限控制这块是大多数人的一个弱项,导致官...

写bug的攻城狮
2018/10/25
252
0
spring-oauth-server 0.4 发布, Oauth2 与 Spring Security 安全应用整合

在spring-oauth-server 0.4-beta版本从2015-11-18发布一个多月后, 0.4版本正式发布. 在这期间主要测试各项新增功能. spring-oauth-server 是一个整合Oauth2与Spring Security的安全应用项目,...

monkeyk7
2016/01/02
1K
0
Spring Security OAuth Boot 2 Auto-config 2.0.0 发布

Spring Security OAuth Boot 2 Auto-config 2.0.0 已发布,该项目用于提供 Spring Security OAuth 2 与 Spring Boot 2 的集成。 该项目旨在帮助用户在旧版 Spring Security OAuth 2.x 支持和...

局长
2018/03/05
1K
0
spring-oauth-server 0.4-beta 发布, Oauth2 与 Spring Security 安全应用整合

spring-oauth-server 0.4-beta版本发布, spring-oauth-server 是一个整合Oauth2与Spring Security的安全应用项目,是从https://github.com/spring-projects/spring-security-oauth/tree/maste......

monkeyk7
2015/11/18
2.4K
3

没有更多内容

加载失败,请刷新页面

加载更多

mysql-connector-java升级到8.0后保存时间到数据库出现了时差

在一个新项目中用到了新版的mysql jdbc 驱动 <dependency>     <groupId>mysql</groupId>     <artifactId>mysql-connector-java</artifactId>     <version>8.0.18</version> ......

ValSong
29分钟前
4
0
Spring Boot 如何部署到 Linux 中的服务

打包完成后的 Spring Boot 程序如何部署到 Linux 上的服务? 你可以参考官方的有关部署 Spring Boot 为 Linux 服务的文档。 文档链接如下: https://docs.ossez.com/spring-boot-docs/docs/r...

honeymoose
31分钟前
4
0
Spring Boot 2 实战:使用 Spring Boot Admin 监控你的应用

1. 前言 生产上对 Web 应用 的监控是十分必要的。我们可以近乎实时来对应用的健康、性能等其他指标进行监控来及时应对一些突发情况。避免一些故障的发生。对于 Spring Boot 应用来说我们可以...

码农小胖哥
今天
6
0
ZetCode 教程翻译计划正式启动 | ApacheCN

原文:ZetCode 协议:CC BY-NC-SA 4.0 欢迎任何人参与和完善:一个人可以走的很快,但是一群人却可以走的更远。 ApacheCN 学习资源 贡献指南 本项目需要校对,欢迎大家提交 Pull Request。 ...

ApacheCN_飞龙
今天
4
0
CSS定位

CSS定位 relative相对定位 absolute绝对定位 fixed和sticky及zIndex relative相对定位 position特性:css position属性用于指定一个元素在文档中的定位方式。top、right、bottom、left属性则...

studywin
今天
7
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部