open-paas-paycenter

所属分类:云计算
开发工具:Java
文件大小:26252KB
下载次数:0
上传日期:2018-02-26 02:32:06
上 传 者sh-1993
说明:  打开paas支付中心,,
(open-paas-paycenter,,)

文件列表:
open-paas-paycenter-dev (0, 2018-02-11)
open-paas-paycenter-dev\.classpath (108, 2018-02-11)
open-paas-paycenter-dev\build.gradle (5540, 2018-02-11)
open-paas-paycenter-dev\gradle.properties (48, 2018-02-11)
open-paas-paycenter-dev\lib (0, 2018-02-11)
open-paas-paycenter-dev\lib\QRCode.jar (1099539, 2018-02-11)
open-paas-paycenter-dev\lib\alipay-sdk-java20151021120052.jar (629382, 2018-02-11)
open-paas-paycenter-dev\lib\alipay-trade-sdk.jar (76212, 2018-02-11)
open-paas-paycenter-dev\lib\ehking-sdk-core-1.0.0.jar (668393, 2018-02-11)
open-paas-paycenter-dev\lib\zx-java-sdk-1.0.0.jar (33513, 2018-02-11)
open-paas-paycenter-dev\pay-order-service (0, 2018-02-11)
open-paas-paycenter-dev\pay-order-service\.classpath (743, 2018-02-11)
open-paas-paycenter-dev\pay-order-service\.mymetadata (334, 2018-02-11)
open-paas-paycenter-dev\pay-order-service\.project (1936, 2018-02-11)
open-paas-paycenter-dev\pay-order-service\.settings (0, 2018-02-11)
open-paas-paycenter-dev\pay-order-service\.settings\.jsdtscope (508, 2018-02-11)
open-paas-paycenter-dev\pay-order-service\.settings\com.genuitec.eclipse.j2eedt.core.prefs (1034, 2018-02-11)
open-paas-paycenter-dev\pay-order-service\.settings\org.eclipse.core.resources.prefs (122, 2018-02-11)
open-paas-paycenter-dev\pay-order-service\.settings\org.eclipse.jdt.core.prefs (430, 2018-02-11)
open-paas-paycenter-dev\pay-order-service\.settings\org.eclipse.m2e.core.prefs (90, 2018-02-11)
open-paas-paycenter-dev\pay-order-service\.settings\org.eclipse.wst.common.component (785, 2018-02-11)
open-paas-paycenter-dev\pay-order-service\.settings\org.eclipse.wst.common.project.facet.core.xml (252, 2018-02-11)
open-paas-paycenter-dev\pay-order-service\.settings\org.eclipse.wst.jsdt.ui.superType.container (49, 2018-02-11)
open-paas-paycenter-dev\pay-order-service\.settings\org.eclipse.wst.jsdt.ui.superType.name (6, 2018-02-11)
open-paas-paycenter-dev\pay-order-service\pom.xml (19551, 2018-02-11)
open-paas-paycenter-dev\pay-order-service\src (0, 2018-02-11)
open-paas-paycenter-dev\pay-order-service\src\main (0, 2018-02-11)
open-paas-paycenter-dev\pay-order-service\src\main\java (0, 2018-02-11)
open-paas-paycenter-dev\pay-order-service\src\main\java\cn (0, 2018-02-11)
open-paas-paycenter-dev\pay-order-service\src\main\java\cn\com (0, 2018-02-11)
open-paas-paycenter-dev\pay-order-service\src\main\java\cn\com\open (0, 2018-02-11)
open-paas-paycenter-dev\pay-order-service\src\main\java\cn\com\open\pay (0, 2018-02-11)
open-paas-paycenter-dev\pay-order-service\src\main\java\cn\com\open\pay\order (0, 2018-02-11)
open-paas-paycenter-dev\pay-order-service\src\main\java\cn\com\open\pay\order\service (0, 2018-02-11)
open-paas-paycenter-dev\pay-order-service\src\main\java\cn\com\open\pay\order\service\datasource (0, 2018-02-11)
open-paas-paycenter-dev\pay-order-service\src\main\java\cn\com\open\pay\order\service\datasource\DataSourceAdvice.java (1926, 2018-02-11)
open-paas-paycenter-dev\pay-order-service\src\main\java\cn\com\open\pay\order\service\datasource\DataSourceSwitcher.java (840, 2018-02-11)
open-paas-paycenter-dev\pay-order-service\src\main\java\cn\com\open\pay\order\service\datasource\DynamicDataSource.java (478, 2018-02-11)
... ...

#spring-oauth-server Spring与Oauth2的整合示例 项目用Maven管理 使用的技术与版本号
  1. Spring (3.1.1.RELEASE)
  2. Spring Security (3.1.0.RELEASE)
  3. MyBatis (3.2.1)
  4. spring-security-oauth2 (1.0.5.RELEASE)
  5. Log4j (1.2.14)

Oauth客户端项目请访问 spring-oauth-client


如何使用?

  1. 项目是Maven管理的, 需要本地安装maven(开发用的maven版本号为3.1.0), 还有MySql(开发用的mysql版本号为5.5)
  2. 下载(或clone)项目到本地
  3. 创建MySQL数据库(如数据库名oauth2), 并运行相应的SQL脚本(脚本文件位于others/database目录),
    运行脚本的顺序: initial_db.ddl -> oauth.ddl -> initial_data.ddl
  4. 修改spring-oauth-server.properties(位于src/main/resources目录)中的数据库连接信息(包括username, password等)
  5. 将本地项目导入到IDE(如Intellij IDEA)中,配置Tomcat(或类似的servlet运行服务器), 并启动Tomcat(默认端口为8080);
    注意将项目的 contextPath(根路径) 设置为 'spring-oauth-server'.
    另: 也可通过maven package命令将项目编译为war文件(spring-oauth-server.war), 将war放在Tomcat中并启动(注意: 这种方式需要将spring-oauth-server.properties加入到classpath中并正确配置数据库连接信息).
  6. 参考oauth_test.txt(位于others目录)的内容并测试之(也可在浏览器中访问相应的地址,如: http://localhost:8080/spring-oauth-server).


grant_type
说明Oauth支持的grant_type(授权方式)与功能
  1. authorization_code -- 授权码模式(即先登录获取code,再获取token)
  2. password -- 密码模式(将用户名,密码传过去,直接获取token)
  3. refresh_token -- 刷新access_token
  4. implicit -- 简化模式(在redirect_uri 的Hash传递token; Auth客户端运行在浏览器中,如JS,Flash)
  5. client_credentials -- 客户端模式(无用户,用户向客户端注册,然后客户端以自己的名义向'服务端'获取资源)

帮助与改进
  1. 与该项目相关的博客请访问 http://blog.csdn.net/monkeyking1***7/article/details/16828059

  2. 如果在使用过程中遇到特殊的问题(如:如何将oauth_code存入数据库),请访问项目的 Wiki附件.
    我会把大家反馈的问题解决办法添加在这里.
    若在这两个地方没有找到解决办法的, 欢迎发邮件到shengzhao@shengzhaoli.com一起讨论.

  3. 如果在使用项目的过程中发现任何的BUG或者更好的提议, 建议将其提交到项目的 Issues 中, 我会一直关注并不断改进项目.


功能扩展
  1. oauth_code存入数据库的配置, 请下载文件 oauth_code存入数据库的配置.jpg
  2. 改变token过期的时间的配置, 请下载文件改变token过期的时间的配置.jpg
  3. 自定义 grant_type, 默认情况支持的grant_type包括 [password,authorization_code,refresh_token,implicit], 若不需要其中的某些grant_type, 则可以修改 oauth_client_details 表中的 authorized_grant_types 字段的值;
    若想把整个Oauth服务修改来只支持某些grant_type, 请修改 security.xml文件中的 中的内容,将对应的 grant_type 注释或删掉即可
  4. 如何刷新access_token(refresh_token), 在通过客户端(如移动设备)登录成功后返回的数据如下

    {"access_token":"3420d0e0-ed77-45e1-8370-2b55af0a62e8","token_type":"bearer","refresh_token":"b36f4978-a172-4aa8-af89-60f58abe3ba1","expires_in":43199,"scope":"read write"}
    
                

    若需要刷新获取新的token(一般在 expires_in 有效期时间快到时), 请求的URL类似如下
    http://localhost:8080/oauth/token?client_id=mobile-client&client_secret=mobile&grant_type=refresh_token&refresh_token=b36f4978-a172-4aa8-af89-60f58abe3ba1
    
                

    注意: refresh_token 参数值必须与登录成功后获取的 refresh_token 一致, 且grant_type = refresh_token
    另: 刷新token 需要 ClientDetails 支持 refresh_token 类型的 grant_type (默认是支持的)


开发计划

从 0.3版本开始将项目的所有计划的开发内容列出来, 方便大家跟进, 也欢迎你加入.
项目的开发管理使用开源项目 andaily-developer.

  • Version: 0.3 [developing]
    Date: 2015-05-14

    1. #73 - Upgrade 'spring-security-oauth2' version to '2.0.6.RELEASE' (current: 1.0.5.RELEASE) [CREATED]

    2. #74 - oauth mysql ddl add create_time, default is now()

    3. #75 - Add user information API, for spring-oauth-client project use

      
                          URL: /unity/user_info
      
                          Login: Yes (ROLE_UNITY)
      
                          Data Format: JSON
      
      
      
                          URL: /m/user_info
      
                          Login: Yes (ROLE_MOBILE)
      
                          Data Format: JSON
      
                          

    4. #77 - User add Privilege domain. Addition initial two user: unityuser(ROLE_UNITY),mobileuser("ROLE_MOBILE). If default user, return all privilegs, otherwise return specify privilege(s)

    5. #78 - Initial 'sprint-oauth-client' project(maven), add sub-modules

    6. #91 - User log4j replace logback dependency

    7. #92 - Add database table column description. (添加数据库表的字段说明)

    8. #93 - 将默认的 oauth_code存入数据库(当前是存入内存)

    9. spring-oauth-server project add Bootstrap CSS

    10. #95 - Add 'client-details' management; create/delete, show testing links

  • Version: 0.4 [scheduled]
    Date: ------



数据库表字段说明

在0.3版本中添加了db_table_description.html文件(位于/others目录), 用来说明数据库脚本文件oauth.ddl中各表,各字段的用途及使用场合.
也可在线访问http://andaily.com/spring-oauth-server/db_table_description.html.


更多资源

以下是在学习工作中收集的更多关于Oauth的资源,对深入理解与运用Oauth有帮助


关注更多我的开源项目请访问 http://andaily.com/my_projects.html

若需更多的技术支持请联系 monkeyk@shengzhaoli.com


近期下载者

相关文件


收藏者