From c98f81f0455fcd49a1ddaefad6b77bdf5e6b9839 Mon Sep 17 00:00:00 2001 From: winLsy <18332763730@163.com> Date: Tue, 16 Jan 2018 15:12:15 +0800 Subject: [PATCH] =?UTF-8?q?=E5=88=9B=E5=BB=BA=E7=AC=AC=E4=B8=89=E6=96=B9?= =?UTF-8?q?=E6=8E=88=E6=9D=83=E6=95=B0=E6=8D=AE=E8=A1=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- all/sql/OAuth2.sql | 19 +++++++++++++++++++ .../security/core/social/SocialConfig.java | 10 ++++++++-- .../social/qq/connet/QQConnectionFactory.java | 6 +++--- 3 files changed, 30 insertions(+), 5 deletions(-) create mode 100644 all/sql/OAuth2.sql diff --git a/all/sql/OAuth2.sql b/all/sql/OAuth2.sql new file mode 100644 index 0000000..a6a7c05 --- /dev/null +++ b/all/sql/OAuth2.sql @@ -0,0 +1,19 @@ +-- This SQL contains a "create table" that can be used to create a table that JdbcUsersConnectionRepository can persist +-- connection in. It is, however, not to be assumed to be production-ready, all-purpose SQL. It is merely representative +-- of the kind of table that JdbcUsersConnectionRepository works with. The table and column names, as well as the general +-- column types, are what is important. Specific column types and sizes that work may vary across database vendors and +-- the required sizes may vary across API providers. +USE micro; +create table upms_UserConnection (userId varchar(255) not null, + providerId varchar(255) not null, + providerUserId varchar(255), + rank int not null, + displayName varchar(255), + profileUrl varchar(512), + imageUrl varchar(512), + accessToken varchar(512) not null, + secret varchar(512), + refreshToken varchar(512), + expireTime bigint, + primary key (userId, providerId, providerUserId)); +create unique index UserConnectionRank on upms_UserConnection(userId, providerId, rank); \ No newline at end of file diff --git a/boot-starter/boot-starter-security/boot-starter-security-core/src/main/java/com/micro/fast/security/core/social/SocialConfig.java b/boot-starter/boot-starter-security/boot-starter-security-core/src/main/java/com/micro/fast/security/core/social/SocialConfig.java index 34ec430..437ba6b 100644 --- a/boot-starter/boot-starter-security/boot-starter-security-core/src/main/java/com/micro/fast/security/core/social/SocialConfig.java +++ b/boot-starter/boot-starter-security/boot-starter-security-core/src/main/java/com/micro/fast/security/core/social/SocialConfig.java @@ -19,6 +19,9 @@ import javax.sql.DataSource; @EnableSocial public class SocialConfig extends SocialConfigurerAdapter{ + /** + * 使用的数据源 + */ @Autowired @Qualifier("dynamicDataSource") private DataSource dataSource; @@ -30,7 +33,10 @@ public class SocialConfig extends SocialConfigurerAdapter{ */ @Override public UsersConnectionRepository getUsersConnectionRepository(ConnectionFactoryLocator connectionFactoryLocator) { - //第三参数是加解密的策略,这里指定是不做加解密操作 - return new JdbcUsersConnectionRepository(dataSource,connectionFactoryLocator, Encryptors.noOpText()); + //第三参数是加解密的策略,这里指定是不做加解密操作。对插入到数据库中的信息进行加解密 + JdbcUsersConnectionRepository jdbcUsersConnectionRepository = new JdbcUsersConnectionRepository(dataSource, connectionFactoryLocator, Encryptors.noOpText()); + //使用OAuth2.sql创建如果数据表自定义前缀的话在这里声明 + jdbcUsersConnectionRepository.setTablePrefix("upms_"); + return jdbcUsersConnectionRepository; } } diff --git a/boot-starter/boot-starter-security/boot-starter-security-core/src/main/java/com/micro/fast/security/core/social/qq/connet/QQConnectionFactory.java b/boot-starter/boot-starter-security/boot-starter-security-core/src/main/java/com/micro/fast/security/core/social/qq/connet/QQConnectionFactory.java index 318b218..f80bc3a 100644 --- a/boot-starter/boot-starter-security/boot-starter-security-core/src/main/java/com/micro/fast/security/core/social/qq/connet/QQConnectionFactory.java +++ b/boot-starter/boot-starter-security/boot-starter-security-core/src/main/java/com/micro/fast/security/core/social/qq/connet/QQConnectionFactory.java @@ -10,9 +10,9 @@ import org.springframework.social.connect.support.OAuth2ConnectionFactory; public class QQConnectionFactory extends OAuth2ConnectionFactory { /** * 使用连接工厂创建连接 - * @param providerId - * @param appId - * @param appSecret + * @param providerId 服务提供商的唯一标识 + * @param appId 应用系统登录第三方授权的用户名 + * @param appSecret 应用系统登录第三方授权的密码 */ public QQConnectionFactory(String providerId ,String appId,String appSecret) {