Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
L
loginservice
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
lanmw
loginservice
Commits
fdccd9c0
Commit
fdccd9c0
authored
Sep 26, 2024
by
xieshaohua
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
jdk17升级
parent
f2d7c69d
Show whitespace changes
Inline
Side-by-side
Showing
23 changed files
with
375 additions
and
156 deletions
+375
-156
pom.xml
pom.xml
+39
-19
LoginManagement.java
src/main/java/com/keymobile/login/api/LoginManagement.java
+6
-4
PeopleCenterApi.java
src/main/java/com/keymobile/login/api/PeopleCenterApi.java
+11
-11
OpenAPIConfig.java
src/main/java/com/keymobile/login/conf/OpenAPIConfig.java
+21
-0
RESTAuthenticationEntryPoint.java
...om/keymobile/login/conf/RESTAuthenticationEntryPoint.java
+3
-3
RESTAuthenticationFailureHandler.java
...eymobile/login/conf/RESTAuthenticationFailureHandler.java
+3
-3
RESTAuthenticationSuccessHandler.java
...eymobile/login/conf/RESTAuthenticationSuccessHandler.java
+3
-3
RESTLogoutSuccessHandler.java
...va/com/keymobile/login/conf/RESTLogoutSuccessHandler.java
+4
-7
SecurityConfig.java
src/main/java/com/keymobile/login/conf/SecurityConfig.java
+47
-47
SecurityNewConfig.java
...main/java/com/keymobile/login/conf/SecurityNewConfig.java
+91
-0
Swagger2Config.java
src/main/java/com/keymobile/login/conf/Swagger2Config.java
+37
-37
SsoOrganMcclRepository.java
...m/keymobile/login/persistence/SsoOrganMcclRepository.java
+1
-1
SsoOrganRepository.java
...a/com/keymobile/login/persistence/SsoOrganRepository.java
+1
-1
SsoUserMcclRepository.java
...om/keymobile/login/persistence/SsoUserMcclRepository.java
+1
-1
SsoUserRepository.java
...va/com/keymobile/login/persistence/SsoUserRepository.java
+1
-1
SsoOrganAbstract.java
...m/keymobile/login/persistence/model/SsoOrganAbstract.java
+1
-1
SsoOrganMcclAbstract.java
...ymobile/login/persistence/model/SsoOrganMcclAbstract.java
+4
-4
SsoUserAbstract.java
...om/keymobile/login/persistence/model/SsoUserAbstract.java
+1
-1
SsoUserMcclAbstract.java
...eymobile/login/persistence/model/SsoUserMcclAbstract.java
+4
-4
CustomizedUserDetailServiceImpl.java
...mobile/login/service/CustomizedUserDetailServiceImpl.java
+14
-0
application-mcd.yml
src/main/resources/application-mcd.yml
+6
-7
application-prd.yml
src/main/resources/application-prd.yml
+74
-0
bootstrap.yml
src/main/resources/bootstrap.yml
+2
-1
No files found.
pom.xml
View file @
fdccd9c0
...
@@ -7,19 +7,34 @@
...
@@ -7,19 +7,34 @@
<artifactId>
loginService
</artifactId>
<artifactId>
loginService
</artifactId>
<version>
3.0.1
</version>
<version>
3.0.1
</version>
<packaging>
jar
</packaging>
<packaging>
jar
</packaging>
<parent>
<parent>
<groupId>
org.springframework.boot
</groupId>
<groupId>
com.keymobile
</groupId>
<artifactId>
spring-boot-starter-parent
</artifactId>
<artifactId>
parent
</artifactId>
<version>
2.0.4.RELEASE
</version>
<version>
product-v1-1.0.0-beta1
</version>
<relativePath/>
</parent>
</parent>
<!-- <parent>-->
<!-- <groupId>org.springframework.boot</groupId>-->
<!-- <artifactId>spring-boot-starter-parent</artifactId>-->
<!-- <version>2.0.4.RELEASE</version>-->
<!-- <relativePath/>-->
<!-- </parent>-->
<!-- <properties>-->
<!-- <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>-->
<!-- <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>-->
<!-- <java.version>1.8</java.version>-->
<!-- <spring-cloud.version>Finchley.RELEASE</spring-cloud.version>-->
<!-- </properties>-->
<properties>
<properties>
<auth.version>
product-v1-1.0.0-beta1
</auth.version>
<config.version>
product-v1-1.0.0-beta1
</config.version>
<crypto.version>
product-v1-1.0.0-beta1
</crypto.version>
<project.build.sourceEncoding>
UTF-8
</project.build.sourceEncoding>
<project.build.sourceEncoding>
UTF-8
</project.build.sourceEncoding>
<project.reporting.outputEncoding>
UTF-8
</project.reporting.outputEncoding>
<project.reporting.outputEncoding>
UTF-8
</project.reporting.outputEncoding>
<
java.version>
1.8
</java
.version>
<
openapi.version>
2.6.0
</openapi
.version>
<spring-cloud.version>
Finchley.RELEASE
</spring-cloud.version>
</properties>
</properties>
<dependencies>
<dependencies>
...
@@ -53,15 +68,21 @@
...
@@ -53,15 +68,21 @@
<version>
3.7
</version>
<version>
3.7
</version>
</dependency>
</dependency>
<dependency>
<dependency>
<groupId>
io.springfox
</groupId>
<groupId>
org.springdoc
</groupId>
<artifactId>
springfox-swagger2
</artifactId>
<artifactId>
springdoc-openapi-starter-webmvc-ui
</artifactId>
<version>
2.5.0
</version>
<version>
${openapi.version}
</version>
</dependency>
<dependency>
<groupId>
io.springfox
</groupId>
<artifactId>
springfox-swagger-ui
</artifactId>
<version>
2.2.2
</version>
</dependency>
</dependency>
<!-- <dependency>-->
<!-- <groupId>io.springfox</groupId>-->
<!-- <artifactId>springfox-swagger2</artifactId>-->
<!-- <version>2.5.0</version>-->
<!-- </dependency>-->
<!-- <dependency>-->
<!-- <groupId>io.springfox</groupId>-->
<!-- <artifactId>springfox-swagger-ui</artifactId>-->
<!-- <version>2.2.2</version>-->
<!-- </dependency>-->
<dependency>
<dependency>
<groupId>
org.springframework.boot
</groupId>
<groupId>
org.springframework.boot
</groupId>
<artifactId>
spring-boot-configuration-processor
</artifactId>
<artifactId>
spring-boot-configuration-processor
</artifactId>
...
@@ -107,7 +128,6 @@
...
@@ -107,7 +128,6 @@
<dependency>
<dependency>
<groupId>
mysql
</groupId>
<groupId>
mysql
</groupId>
<artifactId>
mysql-connector-java
</artifactId>
<artifactId>
mysql-connector-java
</artifactId>
<version>
5.1.6
</version>
</dependency>
</dependency>
<dependency>
<dependency>
<groupId>
org.springframework.cloud
</groupId>
<groupId>
org.springframework.cloud
</groupId>
...
@@ -144,18 +164,18 @@
...
@@ -144,18 +164,18 @@
<dependency>
<dependency>
<groupId>
com.keymobile.auth
</groupId>
<groupId>
com.keymobile.auth
</groupId>
<artifactId>
security
</artifactId>
<artifactId>
security
</artifactId>
<version>
3.0.9-release
</version>
<version>
${auth.version}
</version>
</dependency>
</dependency>
<dependency>
<dependency>
<groupId>
com.keymobile
</groupId>
<groupId>
com.keymobile
</groupId>
<artifactId>
config
</artifactId>
<artifactId>
config
</artifactId>
<version>
1.1.5-release
</version>
<version>
${config.version}
</version>
</dependency>
</dependency>
<dependency>
<dependency>
<groupId>
com.keymobile
</groupId>
<groupId>
com.keymobile
</groupId>
<artifactId>
crypto
</artifactId>
<artifactId>
crypto
</artifactId>
<version>
1.1.5-release
</version>
<version>
${crypto.version}
</version>
</dependency>
</dependency>
<dependency>
<dependency>
...
...
src/main/java/com/keymobile/login/api/LoginManagement.java
View file @
fdccd9c0
...
@@ -30,10 +30,10 @@ import org.springframework.web.bind.annotation.*;
...
@@ -30,10 +30,10 @@ import org.springframework.web.bind.annotation.*;
import
org.springframework.web.util.UriComponentsBuilder
;
import
org.springframework.web.util.UriComponentsBuilder
;
import
javax.net.ssl.SSLContext
;
import
javax.net.ssl.SSLContext
;
import
ja
vax
.servlet.http.Cookie
;
import
ja
karta
.servlet.http.Cookie
;
import
ja
vax
.servlet.http.HttpServletRequest
;
import
ja
karta
.servlet.http.HttpServletRequest
;
import
ja
vax
.servlet.http.HttpServletResponse
;
import
ja
karta
.servlet.http.HttpServletResponse
;
import
ja
vax
.servlet.http.HttpSession
;
import
ja
karta
.servlet.http.HttpSession
;
import
java.security.cert.CertificateException
;
import
java.security.cert.CertificateException
;
import
java.security.cert.X509Certificate
;
import
java.security.cert.X509Certificate
;
...
@@ -203,6 +203,8 @@ public class LoginManagement {
...
@@ -203,6 +203,8 @@ public class LoginManagement {
@RequestMapping
(
value
=
"/test"
,
method
=
{
RequestMethod
.
POST
,
RequestMethod
.
GET
})
@RequestMapping
(
value
=
"/test"
,
method
=
{
RequestMethod
.
POST
,
RequestMethod
.
GET
})
public
String
test
(
HttpServletRequest
request
)
{
public
String
test
(
HttpServletRequest
request
)
{
UserDetails
userDetails
=
customizedUserDetailService
.
loadUserByUsername
(
"root"
);
Cookie
[]
cookies
=
request
.
getCookies
();
Cookie
[]
cookies
=
request
.
getCookies
();
if
(
cookies
!=
null
)
{
if
(
cookies
!=
null
)
{
log
.
info
(
"---------cookies------------"
);
log
.
info
(
"---------cookies------------"
);
...
...
src/main/java/com/keymobile/login/api/PeopleCenterApi.java
View file @
fdccd9c0
...
@@ -9,8 +9,8 @@ import com.keymobile.login.persistence.model.SsoOrganMcclAbstract;
...
@@ -9,8 +9,8 @@ import com.keymobile.login.persistence.model.SsoOrganMcclAbstract;
import
com.keymobile.login.persistence.model.SsoUserAbstract
;
import
com.keymobile.login.persistence.model.SsoUserAbstract
;
import
com.keymobile.login.persistence.model.SsoUserMcclAbstract
;
import
com.keymobile.login.persistence.model.SsoUserMcclAbstract
;
import
com.keymobile.login.util.HttpsUtil
;
import
com.keymobile.login.util.HttpsUtil
;
import
io.swagger.
annotations.Api
;
import
io.swagger.
v3.oas.annotations.Parameter
;
import
io.swagger.
annotations.ApiParam
;
import
io.swagger.
v3.oas.annotations.tags.Tag
;
import
org.apache.commons.lang.StringUtils
;
import
org.apache.commons.lang.StringUtils
;
import
org.slf4j.Logger
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.slf4j.LoggerFactory
;
...
@@ -23,8 +23,8 @@ import org.springframework.scheduling.annotation.Async;
...
@@ -23,8 +23,8 @@ import org.springframework.scheduling.annotation.Async;
import
org.springframework.scheduling.annotation.Scheduled
;
import
org.springframework.scheduling.annotation.Scheduled
;
import
org.springframework.web.bind.annotation.*
;
import
org.springframework.web.bind.annotation.*
;
import
ja
vax
.persistence.criteria.Predicate
;
import
ja
karta
.persistence.criteria.Predicate
;
import
ja
vax
.servlet.http.HttpServletRequest
;
import
ja
karta
.servlet.http.HttpServletRequest
;
import
javax.sql.DataSource
;
import
javax.sql.DataSource
;
import
java.sql.Connection
;
import
java.sql.Connection
;
import
java.sql.SQLException
;
import
java.sql.SQLException
;
...
@@ -40,7 +40,7 @@ import java.util.concurrent.TimeUnit;
...
@@ -40,7 +40,7 @@ import java.util.concurrent.TimeUnit;
*/
*/
@RestController
@RestController
@RequestMapping
(
value
=
"/peopleCenter"
)
@RequestMapping
(
value
=
"/peopleCenter"
)
@
Api
(
value
=
"用户中心"
,
tags
=
{
"用户中心"
}
)
@
Tag
(
name
=
"用户中心"
)
public
class
PeopleCenterApi
{
public
class
PeopleCenterApi
{
private
static
final
Logger
log
=
LoggerFactory
.
getLogger
(
LoginManagement
.
class
);
private
static
final
Logger
log
=
LoggerFactory
.
getLogger
(
LoginManagement
.
class
);
...
@@ -128,8 +128,8 @@ public class PeopleCenterApi {
...
@@ -128,8 +128,8 @@ public class PeopleCenterApi {
@RequestParam
(
required
=
false
)
String
organizationid
,
@RequestParam
(
required
=
false
)
String
organizationid
,
@RequestParam
(
required
=
false
,
defaultValue
=
"true"
)
Boolean
isalllevel
,
@RequestParam
(
required
=
false
,
defaultValue
=
"true"
)
Boolean
isalllevel
,
@RequestParam
(
required
=
false
)
String
organizationname
,
@RequestParam
(
required
=
false
)
String
organizationname
,
@
ApiParam
(
"排序字段"
)
@RequestParam
(
required
=
false
)
String
sortingType
,
@
Parameter
(
name
=
"排序字段"
)
@RequestParam
(
required
=
false
)
String
sortingType
,
@
ApiParam
(
"排序规则 ASC DESC"
)
@RequestParam
(
required
=
false
)
String
sortingRule
,
@
Parameter
(
name
=
"排序规则 ASC DESC"
)
@RequestParam
(
required
=
false
)
String
sortingRule
,
@RequestParam
(
required
=
false
,
defaultValue
=
"1"
)
Integer
pageNo
,
@RequestParam
(
required
=
false
,
defaultValue
=
"1"
)
Integer
pageNo
,
@RequestParam
(
required
=
false
,
defaultValue
=
"10"
)
Integer
pageSize
)
{
@RequestParam
(
required
=
false
,
defaultValue
=
"10"
)
Integer
pageSize
)
{
...
@@ -159,8 +159,8 @@ public class PeopleCenterApi {
...
@@ -159,8 +159,8 @@ public class PeopleCenterApi {
@RequestParam
(
required
=
false
)
String
organizationid
,
@RequestParam
(
required
=
false
)
String
organizationid
,
@RequestParam
(
required
=
false
,
defaultValue
=
"true"
)
Boolean
isalllevel
,
@RequestParam
(
required
=
false
,
defaultValue
=
"true"
)
Boolean
isalllevel
,
@RequestParam
(
required
=
false
)
String
organizationname
,
@RequestParam
(
required
=
false
)
String
organizationname
,
@
ApiParam
(
"排序字段"
)
@RequestParam
(
required
=
false
)
String
sortingType
,
@
Parameter
(
name
=
"排序字段"
)
@RequestParam
(
required
=
false
)
String
sortingType
,
@
ApiParam
(
"排序规则 ASC DESC"
)
@RequestParam
(
required
=
false
)
String
sortingRule
)
{
@
Parameter
(
name
=
"排序规则 ASC DESC"
)
@RequestParam
(
required
=
false
)
String
sortingRule
)
{
String
sortField
=
""
;
String
sortField
=
""
;
if
(
StringUtils
.
isNotBlank
(
sortingType
))
{
if
(
StringUtils
.
isNotBlank
(
sortingType
))
{
...
@@ -188,8 +188,8 @@ public class PeopleCenterApi {
...
@@ -188,8 +188,8 @@ public class PeopleCenterApi {
@RequestParam
(
required
=
false
)
String
organizationid
,
@RequestParam
(
required
=
false
)
String
organizationid
,
@RequestParam
(
required
=
false
,
defaultValue
=
"true"
)
Boolean
isalllevel
,
@RequestParam
(
required
=
false
,
defaultValue
=
"true"
)
Boolean
isalllevel
,
@RequestParam
(
required
=
false
)
String
organizationname
,
@RequestParam
(
required
=
false
)
String
organizationname
,
@
ApiParam
(
"排序字段"
)
@RequestParam
(
required
=
false
)
String
sortingType
,
@
Parameter
(
name
=
"排序字段"
)
@RequestParam
(
required
=
false
)
String
sortingType
,
@
ApiParam
(
"排序规则 ASC DESC"
)
@RequestParam
(
required
=
false
)
String
sortingRule
)
{
@
Parameter
(
name
=
"排序规则 ASC DESC"
)
@RequestParam
(
required
=
false
)
String
sortingRule
)
{
String
sortField
=
""
;
String
sortField
=
""
;
if
(
StringUtils
.
isNotBlank
(
sortingType
))
{
if
(
StringUtils
.
isNotBlank
(
sortingType
))
{
...
...
src/main/java/com/keymobile/login/conf/OpenAPIConfig.java
0 → 100644
View file @
fdccd9c0
package
com
.
keymobile
.
login
.
conf
;
import
io.swagger.v3.oas.models.OpenAPI
;
import
io.swagger.v3.oas.models.info.Info
;
import
org.springframework.context.annotation.Bean
;
import
org.springframework.context.annotation.Configuration
;
import
org.springframework.context.annotation.Profile
;
@Configuration
@Profile
(
"!prod"
)
public
class
OpenAPIConfig
{
@Bean
public
OpenAPI
openAPI
()
{
Info
info
=
new
Info
()
.
title
(
"标准管理 API文档"
)
.
version
(
"1.0"
)
.
description
(
"标准管理 API文档"
);
return
new
OpenAPI
().
info
(
info
);
}
}
src/main/java/com/keymobile/login/conf/RESTAuthenticationEntryPoint.java
View file @
fdccd9c0
...
@@ -4,9 +4,9 @@ import org.springframework.security.core.AuthenticationException;
...
@@ -4,9 +4,9 @@ import org.springframework.security.core.AuthenticationException;
import
org.springframework.security.web.AuthenticationEntryPoint
;
import
org.springframework.security.web.AuthenticationEntryPoint
;
import
org.springframework.stereotype.Component
;
import
org.springframework.stereotype.Component
;
import
ja
vax
.servlet.ServletException
;
import
ja
karta
.servlet.ServletException
;
import
ja
vax
.servlet.http.HttpServletRequest
;
import
ja
karta
.servlet.http.HttpServletRequest
;
import
ja
vax
.servlet.http.HttpServletResponse
;
import
ja
karta
.servlet.http.HttpServletResponse
;
import
java.io.IOException
;
import
java.io.IOException
;
@Component
@Component
...
...
src/main/java/com/keymobile/login/conf/RESTAuthenticationFailureHandler.java
View file @
fdccd9c0
...
@@ -4,9 +4,9 @@ import org.springframework.security.core.AuthenticationException;
...
@@ -4,9 +4,9 @@ import org.springframework.security.core.AuthenticationException;
import
org.springframework.security.web.authentication.SimpleUrlAuthenticationFailureHandler
;
import
org.springframework.security.web.authentication.SimpleUrlAuthenticationFailureHandler
;
import
org.springframework.stereotype.Component
;
import
org.springframework.stereotype.Component
;
import
ja
vax
.servlet.ServletException
;
import
ja
karta
.servlet.ServletException
;
import
ja
vax
.servlet.http.HttpServletRequest
;
import
ja
karta
.servlet.http.HttpServletRequest
;
import
ja
vax
.servlet.http.HttpServletResponse
;
import
ja
karta
.servlet.http.HttpServletResponse
;
import
java.io.IOException
;
import
java.io.IOException
;
@Component
@Component
...
...
src/main/java/com/keymobile/login/conf/RESTAuthenticationSuccessHandler.java
View file @
fdccd9c0
...
@@ -6,9 +6,9 @@ import org.springframework.security.core.userdetails.UserDetails;
...
@@ -6,9 +6,9 @@ import org.springframework.security.core.userdetails.UserDetails;
import
org.springframework.security.web.authentication.SimpleUrlAuthenticationSuccessHandler
;
import
org.springframework.security.web.authentication.SimpleUrlAuthenticationSuccessHandler
;
import
org.springframework.stereotype.Component
;
import
org.springframework.stereotype.Component
;
import
ja
vax
.servlet.ServletException
;
import
ja
karta
.servlet.ServletException
;
import
ja
vax
.servlet.http.HttpServletRequest
;
import
ja
karta
.servlet.http.HttpServletRequest
;
import
ja
vax
.servlet.http.HttpServletResponse
;
import
ja
karta
.servlet.http.HttpServletResponse
;
import
java.io.IOException
;
import
java.io.IOException
;
import
java.io.PrintWriter
;
import
java.io.PrintWriter
;
...
...
src/main/java/com/keymobile/login/conf/RESTLogoutSuccessHandler.java
View file @
fdccd9c0
package
com
.
keymobile
.
login
.
conf
;
package
com
.
keymobile
.
login
.
conf
;
import
jakarta.servlet.ServletException
;
import
jakarta.servlet.http.HttpServletRequest
;
import
jakarta.servlet.http.HttpServletResponse
;
import
org.springframework.http.HttpStatus
;
import
org.springframework.http.HttpStatus
;
import
org.springframework.security.core.Authentication
;
import
org.springframework.security.core.Authentication
;
import
org.springframework.security.web.authentication.logout.LogoutSuccessHandler
;
import
org.springframework.security.web.authentication.logout.LogoutSuccessHandler
;
import
org.springframework.stereotype.Component
;
import
org.springframework.stereotype.Component
;
import
javax.servlet.ServletException
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
java.io.IOException
;
import
java.io.IOException
;
@Component
@Component
public
class
RESTLogoutSuccessHandler
implements
LogoutSuccessHandler
{
public
class
RESTLogoutSuccessHandler
implements
LogoutSuccessHandler
{
@Override
@Override
public
void
onLogoutSuccess
(
HttpServletRequest
request
,
public
void
onLogoutSuccess
(
HttpServletRequest
request
,
HttpServletResponse
response
,
Authentication
authentication
)
throws
IOException
,
ServletException
{
HttpServletResponse
response
,
Authentication
authentication
)
throws
IOException
,
ServletException
{
response
.
setStatus
(
HttpStatus
.
OK
.
value
());
response
.
setStatus
(
HttpStatus
.
OK
.
value
());
response
.
getWriter
().
flush
();
response
.
getWriter
().
flush
();
}
}
...
...
src/main/java/com/keymobile/login/conf/SecurityConfig.java
View file @
fdccd9c0
package
com
.
keymobile
.
login
.
conf
;
//
package com.keymobile.login.conf;
//
import
com.keymobile.auth.common.security.CustomizedUserDetailService
;
//
import com.keymobile.auth.common.security.CustomizedUserDetailService;
import
org.springframework.beans.factory.annotation.Autowired
;
//
import org.springframework.beans.factory.annotation.Autowired;
//
import
org.springframework.context.annotation.ComponentScan
;
//
import org.springframework.context.annotation.ComponentScan;
import
org.springframework.context.annotation.Configuration
;
//
import org.springframework.context.annotation.Configuration;
import
org.springframework.security.config.annotation.authentication.builders.AuthenticationManagerBuilder
;
//
import org.springframework.security.config.annotation.authentication.builders.AuthenticationManagerBuilder;
import
org.springframework.security.config.annotation.web.builders.HttpSecurity
;
//
import org.springframework.security.config.annotation.web.builders.HttpSecurity;
import
org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter
;
//
import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter;
import
org.springframework.security.crypto.password.NoOpPasswordEncoder
;
//
import org.springframework.security.crypto.password.NoOpPasswordEncoder;
//
//
@Configuration
//
@Configuration
@ComponentScan
(
"com.keymobile.auth.common.security"
)
//
@ComponentScan("com.keymobile.auth.common.security")
public
class
SecurityConfig
extends
WebSecurityConfigurerAdapter
{
//
public class SecurityConfig extends WebSecurityConfigurerAdapter {
//
@Autowired
//
@Autowired
private
CustomizedUserDetailService
customUserDetailService
;
//
private CustomizedUserDetailService customUserDetailService;
@Autowired
//
@Autowired
private
RESTAuthenticationEntryPoint
authenticationEntryPoint
;
//
private RESTAuthenticationEntryPoint authenticationEntryPoint;
@Autowired
//
@Autowired
private
RESTAuthenticationFailureHandler
authenticationFailureHandler
;
//
private RESTAuthenticationFailureHandler authenticationFailureHandler;
@Autowired
//
@Autowired
private
RESTAuthenticationSuccessHandler
authenticationSuccessHandler
;
//
private RESTAuthenticationSuccessHandler authenticationSuccessHandler;
@Autowired
//
@Autowired
private
RESTLogoutSuccessHandler
logoutSuccessHandler
;
//
private RESTLogoutSuccessHandler logoutSuccessHandler;
//
@Autowired
//
@Autowired
public
void
configure
(
AuthenticationManagerBuilder
auth
)
throws
Exception
{
//
public void configure(AuthenticationManagerBuilder auth) throws Exception {
auth
.
userDetailsService
(
customUserDetailService
).
passwordEncoder
(
NoOpPasswordEncoder
.
getInstance
());
//
auth.userDetailsService(customUserDetailService).passwordEncoder(NoOpPasswordEncoder.getInstance());
}
//
}
//
@Override
//
@Override
protected
void
configure
(
HttpSecurity
http
)
throws
Exception
{
//
protected void configure(HttpSecurity http) throws Exception {
http
.
authorizeRequests
().
anyRequest
().
permitAll
();
//
http.authorizeRequests().anyRequest().permitAll();
http
.
csrf
().
disable
();
//
http.csrf().disable();
http
.
exceptionHandling
().
authenticationEntryPoint
(
authenticationEntryPoint
);
//
http.exceptionHandling().authenticationEntryPoint(authenticationEntryPoint);
http
.
formLogin
().
successHandler
(
authenticationSuccessHandler
);
//
http.formLogin().successHandler(authenticationSuccessHandler);
http
.
formLogin
().
failureHandler
(
authenticationFailureHandler
);
//
http.formLogin().failureHandler(authenticationFailureHandler);
http
.
formLogin
().
loginPage
(
"/login"
);
//
http.formLogin().loginPage("/login");
http
.
formLogin
().
loginProcessingUrl
(
"/signin"
);
//
http.formLogin().loginProcessingUrl("/signin");
http
.
logout
().
logoutUrl
(
"/signout"
);
//
http.logout().logoutUrl("/signout");
http
.
logout
().
logoutSuccessHandler
(
logoutSuccessHandler
);
//
http.logout().logoutSuccessHandler(logoutSuccessHandler);
}
//
}
//
}
//
}
src/main/java/com/keymobile/login/conf/SecurityNewConfig.java
0 → 100644
View file @
fdccd9c0
package
com
.
keymobile
.
login
.
conf
;
import
com.keymobile.auth.common.security.CustomizedUserDetailService
;
import
org.apache.commons.codec.digest.DigestUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Value
;
import
org.springframework.context.annotation.Bean
;
import
org.springframework.context.annotation.ComponentScan
;
import
org.springframework.context.annotation.Configuration
;
import
org.springframework.security.config.annotation.method.configuration.EnableGlobalMethodSecurity
;
import
org.springframework.security.config.annotation.web.builders.HttpSecurity
;
import
org.springframework.security.config.annotation.web.configuration.EnableWebSecurity
;
import
org.springframework.security.crypto.password.NoOpPasswordEncoder
;
import
org.springframework.security.crypto.password.PasswordEncoder
;
import
org.springframework.security.provisioning.UserDetailsManager
;
import
org.springframework.security.web.SecurityFilterChain
;
import
javax.sql.DataSource
;
/**
* SecurityConfig.
* @author mahx
* @version 1.0
* @date 2019/12/27 16:55
*/
@Configuration
@EnableWebSecurity
@EnableGlobalMethodSecurity
(
prePostEnabled
=
true
)
@ComponentScan
(
"com.keymobile.auth.common.security"
)
public
class
SecurityNewConfig
{
@Value
(
"${security.permit}"
)
private
boolean
permit
;
@Autowired
private
CustomizedUserDetailService
customUserDetailService
;
@Autowired
private
RESTAuthenticationEntryPoint
authenticationEntryPoint
;
@Autowired
private
RESTAuthenticationFailureHandler
authenticationFailureHandler
;
@Autowired
private
RESTAuthenticationSuccessHandler
authenticationSuccessHandler
;
@Autowired
private
RESTLogoutSuccessHandler
logoutSuccessHandler
;
@Bean
public
UserDetailsManager
users
(
DataSource
dataSource
)
{
return
new
CustomizedUserDetailService
(
dataSource
);
}
@Bean
public
PasswordEncoder
passwordEncoder
()
{
return
NoOpPasswordEncoder
.
getInstance
();
}
@Bean
protected
SecurityFilterChain
securityFilterChain
(
HttpSecurity
http
)
throws
Exception
{
if
(
permit
)
{
http
.
httpBasic
().
and
().
authorizeHttpRequests
().
anyRequest
().
permitAll
();
}
else
{
http
.
httpBasic
().
and
().
authorizeHttpRequests
().
requestMatchers
(
"/actuator/**"
).
permitAll
()
.
and
().
authorizeHttpRequests
().
anyRequest
().
authenticated
();
}
http
.
exceptionHandling
().
authenticationEntryPoint
(
authenticationEntryPoint
);
http
.
formLogin
().
successHandler
(
authenticationSuccessHandler
);
http
.
formLogin
().
failureHandler
(
authenticationFailureHandler
);
http
.
formLogin
().
loginPage
(
"/login"
);
http
.
formLogin
().
loginProcessingUrl
(
"/signin"
);
http
.
logout
().
logoutUrl
(
"/signout"
);
http
.
logout
().
logoutSuccessHandler
(
logoutSuccessHandler
);
http
.
csrf
().
disable
();
return
http
.
build
();
}
class
SHA1PasswordEncoder
implements
PasswordEncoder
{
@Override
public
String
encode
(
CharSequence
charSequence
)
{
return
DigestUtils
.
sha1Hex
(
charSequence
.
toString
());
}
@Override
public
boolean
matches
(
CharSequence
charSequence
,
String
s
)
{
return
DigestUtils
.
sha1Hex
(
charSequence
.
toString
()).
equals
(
s
);
}
}
}
src/main/java/com/keymobile/login/conf/Swagger2Config.java
View file @
fdccd9c0
package
com
.
keymobile
.
login
.
conf
;
//
package com.keymobile.login.conf;
//
import
org.springframework.context.annotation.Bean
;
//
import org.springframework.context.annotation.Bean;
import
org.springframework.context.annotation.Configuration
;
//
import org.springframework.context.annotation.Configuration;
import
springfox.documentation.builders.ApiInfoBuilder
;
//
import springfox.documentation.builders.ApiInfoBuilder;
import
springfox.documentation.builders.PathSelectors
;
//
import springfox.documentation.builders.PathSelectors;
import
springfox.documentation.builders.RequestHandlerSelectors
;
//
import springfox.documentation.builders.RequestHandlerSelectors;
import
springfox.documentation.service.ApiInfo
;
//
import springfox.documentation.service.ApiInfo;
import
springfox.documentation.spi.DocumentationType
;
//
import springfox.documentation.spi.DocumentationType;
import
springfox.documentation.spring.web.plugins.Docket
;
//
import springfox.documentation.spring.web.plugins.Docket;
import
springfox.documentation.swagger2.annotations.EnableSwagger2
;
//
import springfox.documentation.swagger2.annotations.EnableSwagger2;
//
@Configuration
//
@Configuration
@EnableSwagger2
//
@EnableSwagger2
public
class
Swagger2Config
{
//
public class Swagger2Config {
//
@Bean
//
@Bean
public
Docket
createRestApi
()
{
//
public Docket createRestApi() {
return
new
Docket
(
DocumentationType
.
SWAGGER_2
)
//
return new Docket(DocumentationType.SWAGGER_2)
.
apiInfo
(
apiInfo
())
//
.apiInfo(apiInfo())
.
select
()
//
.select()
.
apis
(
RequestHandlerSelectors
.
basePackage
(
"com.keymobile.login.api"
))
//
.apis(RequestHandlerSelectors.basePackage("com.keymobile.login.api"))
.
paths
(
PathSelectors
.
any
())
//
.paths(PathSelectors.any())
.
build
();
//
.build();
}
//
}
//
private
ApiInfo
apiInfo
()
{
//
private ApiInfo apiInfo() {
return
new
ApiInfoBuilder
()
//
return new ApiInfoBuilder()
.
title
(
"DATA MODEL RESTful APIs"
)
//
.title("DATA MODEL RESTful APIs")
.
description
(
"Spring Boot Swagger2"
)
//
.description("Spring Boot Swagger2")
.
termsOfServiceUrl
(
"http://www.keymobile.com.cn/"
)
//
.termsOfServiceUrl("http://www.keymobile.com.cn/")
.
contact
(
"keymobile"
)
//
.contact("keymobile")
.
version
(
"1.0"
)
//
.version("1.0")
.
build
();
//
.build();
}
//
}
//
}
//
}
src/main/java/com/keymobile/login/persistence/SsoOrganMcclRepository.java
View file @
fdccd9c0
...
@@ -3,7 +3,7 @@ package com.keymobile.login.persistence;
...
@@ -3,7 +3,7 @@ package com.keymobile.login.persistence;
import
com.keymobile.login.persistence.model.SsoOrganMcclAbstract
;
import
com.keymobile.login.persistence.model.SsoOrganMcclAbstract
;
import
org.springframework.data.repository.CrudRepository
;
import
org.springframework.data.repository.CrudRepository
;
import
ja
vax
.transaction.Transactional
;
import
ja
karta
.transaction.Transactional
;
import
java.util.List
;
import
java.util.List
;
@Transactional
@Transactional
...
...
src/main/java/com/keymobile/login/persistence/SsoOrganRepository.java
View file @
fdccd9c0
...
@@ -4,7 +4,7 @@ import com.keymobile.login.persistence.model.SsoOrganAbstract;
...
@@ -4,7 +4,7 @@ import com.keymobile.login.persistence.model.SsoOrganAbstract;
import
com.keymobile.login.persistence.model.SsoUserAbstract
;
import
com.keymobile.login.persistence.model.SsoUserAbstract
;
import
org.springframework.data.repository.CrudRepository
;
import
org.springframework.data.repository.CrudRepository
;
import
ja
vax
.transaction.Transactional
;
import
ja
karta
.transaction.Transactional
;
import
java.util.List
;
import
java.util.List
;
@Transactional
@Transactional
...
...
src/main/java/com/keymobile/login/persistence/SsoUserMcclRepository.java
View file @
fdccd9c0
...
@@ -8,7 +8,7 @@ import org.springframework.data.domain.Sort;
...
@@ -8,7 +8,7 @@ import org.springframework.data.domain.Sort;
import
org.springframework.data.jpa.domain.Specification
;
import
org.springframework.data.jpa.domain.Specification
;
import
org.springframework.data.repository.CrudRepository
;
import
org.springframework.data.repository.CrudRepository
;
import
ja
vax
.transaction.Transactional
;
import
ja
karta
.transaction.Transactional
;
import
java.util.List
;
import
java.util.List
;
@Transactional
@Transactional
...
...
src/main/java/com/keymobile/login/persistence/SsoUserRepository.java
View file @
fdccd9c0
...
@@ -5,7 +5,7 @@ import org.springframework.data.domain.Sort;
...
@@ -5,7 +5,7 @@ import org.springframework.data.domain.Sort;
import
org.springframework.data.jpa.domain.Specification
;
import
org.springframework.data.jpa.domain.Specification
;
import
org.springframework.data.repository.CrudRepository
;
import
org.springframework.data.repository.CrudRepository
;
import
ja
vax
.transaction.Transactional
;
import
ja
karta
.transaction.Transactional
;
import
java.util.List
;
import
java.util.List
;
@Transactional
@Transactional
...
...
src/main/java/com/keymobile/login/persistence/model/SsoOrganAbstract.java
View file @
fdccd9c0
package
com
.
keymobile
.
login
.
persistence
.
model
;
package
com
.
keymobile
.
login
.
persistence
.
model
;
import
ja
vax
.persistence.*
;
import
ja
karta
.persistence.*
;
/**
/**
* @author xiesh
* @author xiesh
...
...
src/main/java/com/keymobile/login/persistence/model/SsoOrganMcclAbstract.java
View file @
fdccd9c0
package
com
.
keymobile
.
login
.
persistence
.
model
;
package
com
.
keymobile
.
login
.
persistence
.
model
;
import
ja
vax
.persistence.Entity
;
import
ja
karta
.persistence.Entity
;
import
ja
vax
.persistence.Id
;
import
ja
karta
.persistence.Id
;
import
ja
vax
.persistence.Table
;
import
ja
karta
.persistence.Table
;
import
ja
vax
.persistence.Transient
;
import
ja
karta
.persistence.Transient
;
import
java.util.ArrayList
;
import
java.util.ArrayList
;
import
java.util.List
;
import
java.util.List
;
...
...
src/main/java/com/keymobile/login/persistence/model/SsoUserAbstract.java
View file @
fdccd9c0
package
com
.
keymobile
.
login
.
persistence
.
model
;
package
com
.
keymobile
.
login
.
persistence
.
model
;
import
ja
vax
.persistence.*
;
import
ja
karta
.persistence.*
;
@Entity
@Entity
...
...
src/main/java/com/keymobile/login/persistence/model/SsoUserMcclAbstract.java
View file @
fdccd9c0
package
com
.
keymobile
.
login
.
persistence
.
model
;
package
com
.
keymobile
.
login
.
persistence
.
model
;
import
ja
vax
.persistence.Entity
;
import
ja
karta
.persistence.Entity
;
import
ja
vax
.persistence.Id
;
import
ja
karta
.persistence.Id
;
import
ja
vax
.persistence.Table
;
import
ja
karta
.persistence.Table
;
import
ja
vax
.persistence.Transient
;
import
ja
karta
.persistence.Transient
;
import
java.util.List
;
import
java.util.List
;
...
...
src/main/java/com/keymobile/login/service/CustomizedUserDetailServiceImpl.java
0 → 100644
View file @
fdccd9c0
package
com
.
keymobile
.
login
.
service
;
import
com.keymobile.auth.common.security.CustomizedUserDetailService
;
import
org.springframework.stereotype.Service
;
import
javax.sql.DataSource
;
@Service
public
class
CustomizedUserDetailServiceImpl
extends
CustomizedUserDetailService
{
public
CustomizedUserDetailServiceImpl
(
DataSource
dataSource
)
{
super
(
dataSource
);
}
}
src/main/resources/application-mcd.yml
View file @
fdccd9c0
...
@@ -27,13 +27,12 @@ spring:
...
@@ -27,13 +27,12 @@ spring:
url
:
jdbc:mysql://10.126.158.214:22698/dgrcb?autoReconnect=true&useUnicode=true&characterEncoding=UTF-8
url
:
jdbc:mysql://10.126.158.214:22698/dgrcb?autoReconnect=true&useUnicode=true&characterEncoding=UTF-8
username
:
poc
username
:
poc
password
:
Km@38497130
password
:
Km@38497130
driver-class-name
:
com.mysql.cj.jdbc.Driver
jpa
:
jpa
:
hibernate
:
hibernate
:
ddl-auto
:
update
ddl-auto
:
update
# show-sql: true
show-sql
:
true
properties
:
hibernate
:
dialect
:
org.hibernate.dialect.MySQL5InnoDBDialect
ribbon
:
ribbon
:
ReadTimeout
:
60000
ReadTimeout
:
60000
ConnectTimeout
:
60000
ConnectTimeout
:
60000
...
@@ -69,6 +68,6 @@ Mcd:
...
@@ -69,6 +68,6 @@ Mcd:
peopleCenter
:
peopleCenter
:
sysSecret
:
3522f512-6549-4b38-8d1d-03161d5f2148
sysSecret
:
3522f512-6549-4b38-8d1d-03161d5f2148
sysId
:
169623376
sysId
:
169623376
tokenUrl
:
http://mcd-biz-gateway-sit.mcdchina.net/token/getToken
tokenUrl
:
http
s
://mcd-biz-gateway-sit.mcdchina.net/token/getToken
userUrl
:
http://mcd-biz-gateway-sit.mcdchina.net/people-center/people-query/employee/list
userUrl
:
http
s
://mcd-biz-gateway-sit.mcdchina.net/people-center/people-query/employee/list
organUrl
:
http://mcd-biz-gateway-sit.mcdchina.net/people-center/people-query/organization/page
organUrl
:
http
s
://mcd-biz-gateway-sit.mcdchina.net/people-center/people-query/organization/page
src/main/resources/application-prd.yml
0 → 100644
View file @
fdccd9c0
server
:
port
:
9764
eureka
:
client
:
registerWithEureka
:
true
region
:
default
registryFetchIntervalSeconds
:
5
serviceUrl
:
defaultZone
:
http://10.126.158.215:8081/eureka/
enabled
:
false
spring
:
session
:
store-type
:
redis
redis
:
namespace
:
dgrcb
redis
:
host
:
10.126.158.214
port
:
6379
password
:
letmein
datasource
:
continue-on-error
:
true
hikari
:
maximum-pool-size
:
5
initialization-mode
:
always
url
:
jdbc:mysql://10.126.158.214:22698/dgrcb?autoReconnect=true&useUnicode=true&characterEncoding=UTF-8
username
:
poc
password
:
Km@38497130
jpa
:
hibernate
:
ddl-auto
:
update
# show-sql: true
properties
:
hibernate
:
dialect
:
org.hibernate.dialect.MySQL5InnoDBDialect
ribbon
:
ReadTimeout
:
60000
ConnectTimeout
:
60000
OkToRetryOnAllOperations
:
true
MaxAutoRetries
:
3
logging
:
level
:
# 设置Hibernate的日志级别
org.hibernate
:
ERROR
feign
:
client
:
config
:
default
:
connectTimeout
:
60000
ReadTimeout
:
60000
security
:
authUser
:
root
authPwd
:
pwd
permit
:
true
allowRootLogin
:
true
Mcd
:
sso
:
url
:
https://boss.sit.mcd.com.cn/api/inner/boss-api/foundation/sso/authenticate
header
:
McD-BOSS;PC
redirectUrl
:
http://10.126.147.58/center-home/menu/index
deepSso
:
url
:
https://boss.sit.mcd.com.cn/api/inner/boss-api/foundation/user/whoami
peopleCenter
:
sysSecret
:
3f9f4b81-c3b4-49e1-94a0-bb3dfbd9f732
sysId
:
158937373
tokenUrl
:
https://mcd-biz-gateway.mcdchina.net/token/getToken
userUrl
:
https://mcd-biz-gateway.mcdchina.net/people-center/people-query/employee/list
organUrl
:
https://mcd-biz-gateway.mcdchina.net/people-center/people-query/organization/page
src/main/resources/bootstrap.yml
View file @
fdccd9c0
...
@@ -2,7 +2,7 @@ spring:
...
@@ -2,7 +2,7 @@ spring:
application
:
application
:
name
:
auth
name
:
auth
profiles
:
profiles
:
active
:
local
active
:
mcd
cloud
:
cloud
:
config
:
config
:
uri
:
uri
:
\ No newline at end of file
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment