Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in
Toggle navigation
B
browser-backend
Project
Project
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
Administrator
browser-backend
Commits
abfbeae0
Commit
abfbeae0
authored
Mar 05, 2020
by
renjie
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
browser-backend
parent
d74cb6d2
Show whitespace changes
Inline
Side-by-side
Showing
19 changed files
with
239 additions
and
124 deletions
+239
-124
BrowserBackendApplication.java
...a/com/edgec/browserbackend/BrowserBackendApplication.java
+0
-1
AccountController.java
.../browserbackend/account/controller/AccountController.java
+3
-9
Account.java
...java/com/edgec/browserbackend/account/domain/Account.java
+8
-24
AccountDto.java
...a/com/edgec/browserbackend/account/domain/AccountDto.java
+5
-17
User.java
...in/java/com/edgec/browserbackend/account/domain/User.java
+6
-5
UserService.java
.../com/edgec/browserbackend/account/domain/UserService.java
+0
-48
AccountServiceImpl.java
...owserbackend/account/service/impl/AccountServiceImpl.java
+5
-17
OAuth2AuthorizationConfig.java
...browserbackend/auth/config/OAuth2AuthorizationConfig.java
+2
-0
ResourceServerConfiguration.java
...owserbackend/auth/config/ResourceServerConfiguration.java
+32
-0
WebSecurityConfig.java
...m/edgec/browserbackend/auth/config/WebSecurityConfig.java
+2
-1
TokenController.java
...edgec/browserbackend/auth/controller/TokenController.java
+30
-0
User.java
src/main/java/com/edgec/browserbackend/auth/domain/User.java
+4
-0
UsernameToken.java
...a/com/edgec/browserbackend/auth/domain/UsernameToken.java
+33
-0
UsernameTokenRepository.java
...owserbackend/auth/repository/UsernameTokenRepository.java
+12
-0
UserAuthServiceImpl.java
...browserbackend/auth/service/Impl/UserAuthServiceImpl.java
+2
-1
UsernameTokenServiceImpl.java
...erbackend/auth/service/Impl/UsernameTokenServiceImpl.java
+76
-0
UsernameTokenService.java
...gec/browserbackend/auth/service/UsernameTokenService.java
+14
-0
IpResource.java
...a/com/edgec/browserbackend/browser/domain/IpResource.java
+2
-0
UserShops.java
...va/com/edgec/browserbackend/browser/domain/UserShops.java
+3
-1
No files found.
src/main/java/com/edgec/browserbackend/BrowserBackendApplication.java
View file @
abfbeae0
...
@@ -5,7 +5,6 @@ import org.springframework.boot.autoconfigure.SpringBootApplication;
...
@@ -5,7 +5,6 @@ import org.springframework.boot.autoconfigure.SpringBootApplication;
import
org.springframework.security.oauth2.config.annotation.web.configuration.EnableAuthorizationServer
;
import
org.springframework.security.oauth2.config.annotation.web.configuration.EnableAuthorizationServer
;
@SpringBootApplication
@SpringBootApplication
@EnableAuthorizationServer
public
class
BrowserBackendApplication
{
public
class
BrowserBackendApplication
{
public
static
void
main
(
String
[]
args
)
{
public
static
void
main
(
String
[]
args
)
{
...
...
src/main/java/com/edgec/browserbackend/account/controller/AccountController.java
View file @
abfbeae0
...
@@ -74,9 +74,9 @@ public class AccountController {
...
@@ -74,9 +74,9 @@ public class AccountController {
}
}
@RequestMapping
(
path
=
"/
{name}
"
,
method
=
RequestMethod
.
GET
)
@RequestMapping
(
path
=
"/
information
"
,
method
=
RequestMethod
.
GET
)
public
Account
getAccount
ByName
(
@PathVariable
String
name
)
{
public
Account
getAccount
(
Principal
principal
)
{
return
accountService
.
findByName
(
name
);
return
accountService
.
findByName
(
principal
.
getName
()
);
}
}
@RequestMapping
(
path
=
"/{name}/children/{level}"
,
method
=
RequestMethod
.
GET
)
@RequestMapping
(
path
=
"/{name}/children/{level}"
,
method
=
RequestMethod
.
GET
)
...
@@ -213,7 +213,6 @@ public class AccountController {
...
@@ -213,7 +213,6 @@ public class AccountController {
}
}
@RequestMapping
(
path
=
"/wxpay/checkstatus/{tradno}"
,
method
=
RequestMethod
.
GET
)
@RequestMapping
(
path
=
"/wxpay/checkstatus/{tradno}"
,
method
=
RequestMethod
.
GET
)
@PreAuthorize
(
"#oauth2.hasScope('server')"
)
public
UserPaymentDto
wechatPayCheckStatus
(
@PathVariable
String
tradno
)
{
public
UserPaymentDto
wechatPayCheckStatus
(
@PathVariable
String
tradno
)
{
return
paymentService
.
wxCheckOrderStatus
(
tradno
);
return
paymentService
.
wxCheckOrderStatus
(
tradno
);
}
}
...
@@ -288,20 +287,17 @@ public class AccountController {
...
@@ -288,20 +287,17 @@ public class AccountController {
return
accountService
.
invoiceSize
(
principal
.
getName
());
return
accountService
.
invoiceSize
(
principal
.
getName
());
}
}
@PreAuthorize
(
"#oauth2.hasScope('server')"
)
@RequestMapping
(
path
=
"/cellphone/{cellphone}"
,
method
=
RequestMethod
.
GET
)
@RequestMapping
(
path
=
"/cellphone/{cellphone}"
,
method
=
RequestMethod
.
GET
)
public
AccountDto
getAccountByCellphone
(
@PathVariable
String
cellphone
)
{
public
AccountDto
getAccountByCellphone
(
@PathVariable
String
cellphone
)
{
return
accountService
.
getAccountByCellphone
(
cellphone
);
return
accountService
.
getAccountByCellphone
(
cellphone
);
}
}
@PreAuthorize
(
"#oauth2.hasScope('server')"
)
@RequestMapping
(
path
=
"/fee/{region}/{instanceSpecKey}/{chargeType}"
,
method
=
RequestMethod
.
GET
)
@RequestMapping
(
path
=
"/fee/{region}/{instanceSpecKey}/{chargeType}"
,
method
=
RequestMethod
.
GET
)
@Deprecated
@Deprecated
public
String
queryVpsRate
(
@PathVariable
String
region
,
@PathVariable
String
instanceSpecKey
,
@PathVariable
String
chargeType
)
{
public
String
queryVpsRate
(
@PathVariable
String
region
,
@PathVariable
String
instanceSpecKey
,
@PathVariable
String
chargeType
)
{
return
accountService
.
queryVpsRate
(
region
,
instanceSpecKey
,
chargeType
);
return
accountService
.
queryVpsRate
(
region
,
instanceSpecKey
,
chargeType
);
}
}
@PreAuthorize
(
"#oauth2.hasScope('server')"
)
@RequestMapping
(
path
=
"/charge/rate/{username}"
,
method
=
RequestMethod
.
POST
)
@RequestMapping
(
path
=
"/charge/rate/{username}"
,
method
=
RequestMethod
.
POST
)
public
String
queryUserChargeRate
(
@PathVariable
String
username
,
@RequestBody
IpChargeRequestDto
requestDto
)
{
public
String
queryUserChargeRate
(
@PathVariable
String
username
,
@RequestBody
IpChargeRequestDto
requestDto
)
{
return
accountService
.
queryUserChargeRate
(
username
,
requestDto
);
return
accountService
.
queryUserChargeRate
(
username
,
requestDto
);
...
@@ -361,13 +357,11 @@ public class AccountController {
...
@@ -361,13 +357,11 @@ public class AccountController {
}
}
@RequestMapping
(
path
=
"/preorder/{userName}"
,
method
=
RequestMethod
.
POST
)
@RequestMapping
(
path
=
"/preorder/{userName}"
,
method
=
RequestMethod
.
POST
)
@PreAuthorize
(
"#oauth2.hasScope('server')"
)
public
IpChargeResultDto
preOrderOption
(
@PathVariable
String
userName
,
@RequestBody
IpChargeRequestDto
requestDto
)
{
public
IpChargeResultDto
preOrderOption
(
@PathVariable
String
userName
,
@RequestBody
IpChargeRequestDto
requestDto
)
{
return
accountService
.
preOrder
(
userName
,
requestDto
);
return
accountService
.
preOrder
(
userName
,
requestDto
);
}
}
@RequestMapping
(
path
=
"/preorder/delete/{username}"
,
method
=
RequestMethod
.
POST
)
@RequestMapping
(
path
=
"/preorder/delete/{username}"
,
method
=
RequestMethod
.
POST
)
@PreAuthorize
(
"#oauth2.hasScope('server')"
)
public
String
deletePreOrder
(
@PathVariable
(
"username"
)
String
username
)
{
public
String
deletePreOrder
(
@PathVariable
(
"username"
)
String
username
)
{
return
accountService
.
deletePreOrder
(
username
);
return
accountService
.
deletePreOrder
(
username
);
}
}
...
...
src/main/java/com/edgec/browserbackend/account/domain/Account.java
View file @
abfbeae0
...
@@ -38,21 +38,7 @@ public class Account {
...
@@ -38,21 +38,7 @@ public class Account {
private
boolean
allowedToCreateSubUser
=
false
;
private
boolean
allowedToCreateSubUser
=
false
;
private
boolean
allowedToCreateCloudAccount
=
false
;
private
boolean
hasOperationRight
=
false
;
private
List
<
UserService
>
userServices
=
new
ArrayList
<>();
public
List
<
UserService
>
getUserServices
()
{
return
userServices
;
}
public
void
addUserService
(
UserService
service
)
{
this
.
userServices
.
add
(
service
);
}
public
void
setUserServices
(
List
<
UserService
>
userServices
)
{
this
.
userServices
=
userServices
;
}
public
Date
getSignupDate
()
{
public
Date
getSignupDate
()
{
return
signupDate
;
return
signupDate
;
...
@@ -70,25 +56,17 @@ public class Account {
...
@@ -70,25 +56,17 @@ public class Account {
isPrePaid
=
prePaid
;
isPrePaid
=
prePaid
;
}
}
public
boolean
isAllowedToCreateCloudAccount
()
{
return
allowedToCreateCloudAccount
;
}
public
void
setAllowedToCreateCloudAccount
(
boolean
allowedToCreateCloudAccount
)
{
this
.
allowedToCreateCloudAccount
=
allowedToCreateCloudAccount
;
}
public
Account
()
{
public
Account
()
{
}
}
public
Account
(
AccountDto
account
)
{
public
Account
(
AccountDto
account
)
{
this
.
setName
(
account
.
getName
());
this
.
setName
(
account
.
getName
());
this
.
setAllowedToCreateSubUser
(
account
.
isAllowedToCreateSubUser
());
this
.
setAllowedToCreateSubUser
(
account
.
isAllowedToCreateSubUser
());
this
.
setAllowedToCreateCloudAccount
(
account
.
isAllowedToCreateCloudAccount
());
this
.
setCompanyName
(
account
.
getCompanyName
());
this
.
setCompanyName
(
account
.
getCompanyName
());
this
.
setEmail
(
account
.
getEmail
());
this
.
setEmail
(
account
.
getEmail
());
this
.
setJobTitle
(
account
.
getJobTitle
());
this
.
setJobTitle
(
account
.
getJobTitle
());
this
.
setPhoneNumber
(
account
.
getPhoneNumber
());
this
.
setPhoneNumber
(
account
.
getPhoneNumber
());
this
.
setHasOperationRight
(
account
.
isHasOperationRight
());
}
}
public
String
getEmail
()
{
public
String
getEmail
()
{
...
@@ -182,5 +160,11 @@ public class Account {
...
@@ -182,5 +160,11 @@ public class Account {
this
.
token
=
token
;
this
.
token
=
token
;
}
}
public
boolean
isHasOperationRight
()
{
return
hasOperationRight
;
}
public
void
setHasOperationRight
(
boolean
hasOperationRight
)
{
this
.
hasOperationRight
=
hasOperationRight
;
}
}
}
src/main/java/com/edgec/browserbackend/account/domain/AccountDto.java
View file @
abfbeae0
...
@@ -26,7 +26,7 @@ public class AccountDto {
...
@@ -26,7 +26,7 @@ public class AccountDto {
private
boolean
allowedToCreateSubUser
;
private
boolean
allowedToCreateSubUser
;
private
boolean
allowedToCreateCloudAccount
;
private
boolean
hasOperationRight
=
false
;
private
int
balance
;
private
int
balance
;
...
@@ -43,12 +43,10 @@ public class AccountDto {
...
@@ -43,12 +43,10 @@ public class AccountDto {
public
AccountDto
(
Account
account
)
{
public
AccountDto
(
Account
account
)
{
this
.
setName
(
account
.
getName
());
this
.
setName
(
account
.
getName
());
this
.
setAllowedToCreateSubUser
(
account
.
isAllowedToCreateSubUser
());
this
.
setAllowedToCreateSubUser
(
account
.
isAllowedToCreateSubUser
());
this
.
setAllowedToCreateCloudAccount
(
account
.
isAllowedToCreateCloudAccount
());
this
.
setCompanyName
(
account
.
getCompanyName
());
this
.
setCompanyName
(
account
.
getCompanyName
());
this
.
setEmail
(
account
.
getEmail
());
this
.
setEmail
(
account
.
getEmail
());
this
.
setJobTitle
(
account
.
getJobTitle
());
this
.
setJobTitle
(
account
.
getJobTitle
());
this
.
setPhoneNumber
(
account
.
getPhoneNumber
());
this
.
setPhoneNumber
(
account
.
getPhoneNumber
());
this
.
setUserServices
(
account
.
getUserServices
());
this
.
setParent
(
account
.
getParent
());
this
.
setParent
(
account
.
getParent
());
this
.
setToken
(
account
.
getToken
());
this
.
setToken
(
account
.
getToken
());
}
}
...
@@ -69,22 +67,12 @@ public class AccountDto {
...
@@ -69,22 +67,12 @@ public class AccountDto {
this
.
balance
=
balance
;
this
.
balance
=
balance
;
}
}
private
List
<
UserService
>
userServices
=
new
ArrayList
<>();
public
boolean
isHasOperationRight
()
{
return
hasOperationRight
;
public
List
<
UserService
>
getUserServices
()
{
return
userServices
;
}
public
void
setUserServices
(
List
<
UserService
>
userServices
)
{
this
.
userServices
=
userServices
;
}
public
boolean
isAllowedToCreateCloudAccount
()
{
return
allowedToCreateCloudAccount
;
}
}
public
void
set
AllowedToCreateCloudAccount
(
boolean
allowedToCreateCloudAccoun
t
)
{
public
void
set
HasOperationRight
(
boolean
hasOperationRigh
t
)
{
this
.
allowedToCreateCloudAccount
=
allowedToCreateCloudAccoun
t
;
this
.
hasOperationRight
=
hasOperationRigh
t
;
}
}
public
String
getName
()
{
public
String
getName
()
{
...
...
src/main/java/com/edgec/browserbackend/account/domain/User.java
View file @
abfbeae0
...
@@ -42,7 +42,7 @@ public class User {
...
@@ -42,7 +42,7 @@ public class User {
private
boolean
allowedToCreateSubUser
=
true
;
private
boolean
allowedToCreateSubUser
=
true
;
private
boolean
allowedToCreateCloudAccount
=
tru
e
;
private
boolean
hasOperationRight
=
fals
e
;
private
String
verificationCode
=
UUID
.
randomUUID
().
toString
();
private
String
verificationCode
=
UUID
.
randomUUID
().
toString
();
...
@@ -96,13 +96,14 @@ public class User {
...
@@ -96,13 +96,14 @@ public class User {
allowedToCreateSubUser
=
allowedToCreateSubUser
;
allowedToCreateSubUser
=
allowedToCreateSubUser
;
}
}
public
boolean
is
AllowedToCreateCloudAccoun
t
()
{
public
boolean
is
HasOperationRigh
t
()
{
return
allowedToCreateCloudAccoun
t
;
return
hasOperationRigh
t
;
}
}
public
void
set
AllowedToCreateCloudAccount
(
boolean
allowedToCreateCloudAccoun
t
)
{
public
void
set
HasOperationRight
(
boolean
hasOperationRigh
t
)
{
this
.
allowedToCreateCloudAccount
=
allowedToCreateCloudAccoun
t
;
this
.
hasOperationRight
=
hasOperationRigh
t
;
}
}
public
String
getLockReason
()
{
public
String
getLockReason
()
{
return
lockReason
;
return
lockReason
;
}
}
...
...
src/main/java/com/edgec/browserbackend/account/domain/UserService.java
deleted
100644 → 0
View file @
d74cb6d2
package
com
.
edgec
.
browserbackend
.
account
.
domain
;
import
java.util.Date
;
public
class
UserService
{
private
Services
serviceName
;
private
ServiceType
serviceType
;
private
Date
validTo
;
// 0 - 100 percents
private
int
discount
=
20
;
public
int
getDiscount
()
{
return
discount
;
}
public
void
setDiscount
(
int
discount
)
{
this
.
discount
=
discount
;
}
public
Services
getServiceName
()
{
return
serviceName
;
}
public
void
setServiceName
(
Services
serviceName
)
{
this
.
serviceName
=
serviceName
;
}
public
ServiceType
getServiceType
()
{
return
serviceType
;
}
public
void
setServiceType
(
ServiceType
serviceType
)
{
this
.
serviceType
=
serviceType
;
}
public
Date
getValidTo
()
{
return
validTo
;
}
public
void
setValidTo
(
Date
validTo
)
{
this
.
validTo
=
validTo
;
}
}
src/main/java/com/edgec/browserbackend/account/service/impl/AccountServiceImpl.java
View file @
abfbeae0
...
@@ -493,7 +493,6 @@ public class AccountServiceImpl implements AccountService {
...
@@ -493,7 +493,6 @@ public class AccountServiceImpl implements AccountService {
return
null
;
return
null
;
}
}
if
(
StringUtils
.
isEmpty
(
account
.
getParent
()))
{
if
(
StringUtils
.
isEmpty
(
account
.
getParent
()))
{
account
.
setAllowedToCreateCloudAccount
(
true
);
account
.
setAllowedToCreateSubUser
(
true
);
account
.
setAllowedToCreateSubUser
(
true
);
}
}
return
account
;
return
account
;
...
@@ -565,9 +564,6 @@ public class AccountServiceImpl implements AccountService {
...
@@ -565,9 +564,6 @@ public class AccountServiceImpl implements AccountService {
account
.
setAllowedToCreateSubUser
(
true
);
account
.
setAllowedToCreateSubUser
(
true
);
account
.
setAllowedToCreateCloudAccount
(
true
);
user
.
setEnabled
(
true
);
user
.
setEnabled
(
true
);
userAuthService
.
create
(
new
com
.
edgec
.
browserbackend
.
auth
.
domain
.
User
(
user
));
userAuthService
.
create
(
new
com
.
edgec
.
browserbackend
.
auth
.
domain
.
User
(
user
));
...
@@ -604,20 +600,10 @@ public class AccountServiceImpl implements AccountService {
...
@@ -604,20 +600,10 @@ public class AccountServiceImpl implements AccountService {
if
(
StringUtils
.
isEmpty
(
parentName
))
{
if
(
StringUtils
.
isEmpty
(
parentName
))
{
account
.
setAllowedToCreateSubUser
(
true
);
account
.
setAllowedToCreateSubUser
(
true
);
account
.
setAllowedToCreateCloudAccount
(
true
);
account
.
setHasOperationRight
(
true
);
UserService
intelligroupService
=
new
UserService
();
intelligroupService
.
setServiceName
(
Services
.
INTELLIGROUP
);
intelligroupService
.
setServiceName
(
Services
.
INTELLIGROUP
);
intelligroupService
.
setServiceType
(
ServiceType
.
TRIAL
);
// intelligroupService.setUsername(user.getUsername());
intelligroupService
.
setValidTo
(
Date
.
from
(
ZonedDateTime
.
now
().
plusMonths
(
TRIVAL_MONTHS
).
toInstant
()));
account
.
addUserService
(
intelligroupService
);
}
else
{
}
else
{
account
.
setAllowedToCreateSubUser
(
user
.
isAllowedToCreateSubUser
());
account
.
setAllowedToCreateSubUser
(
user
.
isAllowedToCreateSubUser
());
account
.
set
AllowedToCreateCloudAccount
(
user
.
isAllowedToCreateCloudAccoun
t
());
account
.
set
HasOperationRight
(
user
.
isHasOperationRigh
t
());
}
}
account
.
setParent
(
parentName
);
account
.
setParent
(
parentName
);
...
@@ -721,6 +707,7 @@ public class AccountServiceImpl implements AccountService {
...
@@ -721,6 +707,7 @@ public class AccountServiceImpl implements AccountService {
authUser
.
setPhone
(
user
.
getPhoneNumber
());
authUser
.
setPhone
(
user
.
getPhoneNumber
());
authUser
.
setEmail
(
user
.
getEmail
());
authUser
.
setEmail
(
user
.
getEmail
());
authUser
.
setEnabled
(
true
);
authUser
.
setEnabled
(
true
);
authUser
.
setHasOperationRight
(
user
.
isHasOperationRight
());
userAuthService
.
create
(
new
com
.
edgec
.
browserbackend
.
auth
.
domain
.
User
(
authUser
));
userAuthService
.
create
(
new
com
.
edgec
.
browserbackend
.
auth
.
domain
.
User
(
authUser
));
Account
account
=
new
Account
(
user
);
Account
account
=
new
Account
(
user
);
...
@@ -741,10 +728,10 @@ public class AccountServiceImpl implements AccountService {
...
@@ -741,10 +728,10 @@ public class AccountServiceImpl implements AccountService {
throw
new
ClientRequestException
(
AccountErrorCode
.
UNKNOWN
,
"Invalid Request"
);
throw
new
ClientRequestException
(
AccountErrorCode
.
UNKNOWN
,
"Invalid Request"
);
}
}
childAccount
.
setAllowedToCreateSubUser
(
user
.
isAllowedToCreateSubUser
());
childAccount
.
setAllowedToCreateSubUser
(
user
.
isAllowedToCreateSubUser
());
childAccount
.
setAllowedToCreateCloudAccount
(
user
.
isAllowedToCreateCloudAccount
());
childAccount
.
setPhoneNumber
(
user
.
getPhoneNumber
());
childAccount
.
setPhoneNumber
(
user
.
getPhoneNumber
());
childAccount
.
setJobTitle
(
user
.
getJobTitle
());
childAccount
.
setJobTitle
(
user
.
getJobTitle
());
childAccount
.
setCompanyName
(
user
.
getCompanyName
());
childAccount
.
setCompanyName
(
user
.
getCompanyName
());
childAccount
.
setHasOperationRight
(
user
.
isHasOperationRight
());
repository
.
save
(
childAccount
);
repository
.
save
(
childAccount
);
return
childAccount
;
return
childAccount
;
}
}
...
@@ -765,6 +752,7 @@ public class AccountServiceImpl implements AccountService {
...
@@ -765,6 +752,7 @@ public class AccountServiceImpl implements AccountService {
account
.
setJobTitle
(
update
.
getJobTitle
());
account
.
setJobTitle
(
update
.
getJobTitle
());
// account.setPhoneNumber(update.getPhoneNumber());
// account.setPhoneNumber(update.getPhoneNumber());
account
.
setEmail
(
update
.
getEmail
());
account
.
setEmail
(
update
.
getEmail
());
account
.
setHasOperationRight
(
update
.
isHasOperationRight
());
log
.
debug
(
"account {} changes has been saved"
,
name
);
log
.
debug
(
"account {} changes has been saved"
,
name
);
if
(!
org
.
apache
.
commons
.
lang3
.
StringUtils
.
equalsIgnoreCase
(
preEmail
,
update
.
getEmail
()))
{
if
(!
org
.
apache
.
commons
.
lang3
.
StringUtils
.
equalsIgnoreCase
(
preEmail
,
update
.
getEmail
()))
{
Account
account1
=
repository
.
findByEmail
(
update
.
getEmail
());
Account
account1
=
repository
.
findByEmail
(
update
.
getEmail
());
...
...
src/main/java/com/edgec/browserbackend/auth/config/OAuth2AuthorizationConfig.java
View file @
abfbeae0
...
@@ -10,6 +10,7 @@ import org.springframework.security.authentication.AuthenticationManager;
...
@@ -10,6 +10,7 @@ import org.springframework.security.authentication.AuthenticationManager;
import
org.springframework.security.crypto.password.NoOpPasswordEncoder
;
import
org.springframework.security.crypto.password.NoOpPasswordEncoder
;
import
org.springframework.security.oauth2.config.annotation.configurers.ClientDetailsServiceConfigurer
;
import
org.springframework.security.oauth2.config.annotation.configurers.ClientDetailsServiceConfigurer
;
import
org.springframework.security.oauth2.config.annotation.web.configuration.AuthorizationServerConfigurerAdapter
;
import
org.springframework.security.oauth2.config.annotation.web.configuration.AuthorizationServerConfigurerAdapter
;
import
org.springframework.security.oauth2.config.annotation.web.configuration.EnableAuthorizationServer
;
import
org.springframework.security.oauth2.config.annotation.web.configurers.AuthorizationServerEndpointsConfigurer
;
import
org.springframework.security.oauth2.config.annotation.web.configurers.AuthorizationServerEndpointsConfigurer
;
import
org.springframework.security.oauth2.config.annotation.web.configurers.AuthorizationServerSecurityConfigurer
;
import
org.springframework.security.oauth2.config.annotation.web.configurers.AuthorizationServerSecurityConfigurer
;
import
org.springframework.security.oauth2.provider.token.TokenStore
;
import
org.springframework.security.oauth2.provider.token.TokenStore
;
...
@@ -19,6 +20,7 @@ import org.springframework.security.oauth2.provider.token.store.InMemoryTokenSto
...
@@ -19,6 +20,7 @@ import org.springframework.security.oauth2.provider.token.store.InMemoryTokenSto
* @author cdov
* @author cdov
*/
*/
@Configuration
@Configuration
@EnableAuthorizationServer
public
class
OAuth2AuthorizationConfig
extends
AuthorizationServerConfigurerAdapter
{
public
class
OAuth2AuthorizationConfig
extends
AuthorizationServerConfigurerAdapter
{
private
final
String
NOOP_PASSWORD_ENCODE
=
"{noop}"
;
private
final
String
NOOP_PASSWORD_ENCODE
=
"{noop}"
;
...
...
src/main/java/com/edgec/browserbackend/auth/config/ResourceServerConfiguration.java
0 → 100644
View file @
abfbeae0
package
com
.
edgec
.
browserbackend
.
auth
.
config
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.context.annotation.Bean
;
import
org.springframework.context.annotation.Configuration
;
import
org.springframework.security.config.annotation.web.builders.HttpSecurity
;
import
org.springframework.security.oauth2.config.annotation.web.configuration.EnableResourceServer
;
import
org.springframework.security.oauth2.config.annotation.web.configuration.ResourceServerConfigurerAdapter
;
@Configuration
@EnableResourceServer
public
class
ResourceServerConfiguration
extends
ResourceServerConfigurerAdapter
{
private
Logger
logger
=
LoggerFactory
.
getLogger
(
ResourceServerConfiguration
.
class
);
@Override
public
void
configure
(
HttpSecurity
http
)
throws
Exception
{
logger
.
info
(
"=========================111111111========="
);
http
.
exceptionHandling
()
.
and
()
.
logout
()
.
logoutUrl
(
"/oauth/logout"
)
.
and
()
.
authorizeRequests
()
.
antMatchers
(
"/browser/"
).
permitAll
()
.
antMatchers
(
"/secure/**"
).
authenticated
();
}
}
\ No newline at end of file
src/main/java/com/edgec/browserbackend/auth/config/WebSecurityConfig.java
View file @
abfbeae0
...
@@ -30,7 +30,8 @@ public class WebSecurityConfig extends WebSecurityConfigurerAdapter {
...
@@ -30,7 +30,8 @@ public class WebSecurityConfig extends WebSecurityConfigurerAdapter {
public
void
configure
(
WebSecurity
web
)
throws
Exception
{
public
void
configure
(
WebSecurity
web
)
throws
Exception
{
web
.
ignoring
()
web
.
ignoring
()
.
antMatchers
(
"/users/verify/**"
,
"/users/changepass"
,
"/account/authCode"
,
"/account/signup"
);
.
antMatchers
(
"/users/verify/**"
,
"/users/changepass"
,
"/account/authCode"
,
"/account/signup"
,
"/account/reset*"
,
"/token"
);
}
}
@Override
@Override
...
...
src/main/java/com/edgec/browserbackend/auth/controller/TokenController.java
0 → 100644
View file @
abfbeae0
package
com
.
edgec
.
browserbackend
.
auth
.
controller
;
import
com.edgec.browserbackend.auth.domain.UsernameToken
;
import
com.edgec.browserbackend.auth.service.UsernameTokenService
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RequestMethod
;
import
org.springframework.web.bind.annotation.RequestParam
;
import
org.springframework.web.bind.annotation.RestController
;
import
java.security.Principal
;
import
java.util.List
;
@RestController
public
class
TokenController
{
@Autowired
private
UsernameTokenService
usernameTokenService
;
@RequestMapping
(
path
=
"/token"
,
method
=
RequestMethod
.
GET
)
public
List
<
UsernameToken
>
selectVpsDtoByParent
(
Principal
principal
)
{
return
usernameTokenService
.
selectVpsDtoByParent
(
principal
.
getName
());
}
@RequestMapping
(
path
=
"/token"
,
method
=
RequestMethod
.
POST
)
public
UsernameToken
createToken
(
Principal
principal
,
@RequestParam
(
value
=
"username"
)
String
username
)
{
return
usernameTokenService
.
createUserToken
(
principal
.
getName
(),
username
);
}
}
src/main/java/com/edgec/browserbackend/auth/domain/User.java
View file @
abfbeae0
...
@@ -111,4 +111,8 @@ public class User implements UserDetails {
...
@@ -111,4 +111,8 @@ public class User implements UserDetails {
setVerificationCode
(
user
.
getVerificationCode
());
setVerificationCode
(
user
.
getVerificationCode
());
setEnabled
(
user
.
isEnabled
());
setEnabled
(
user
.
isEnabled
());
}
}
public
User
(){
};
}
}
src/main/java/com/edgec/browserbackend/auth/domain/UsernameToken.java
0 → 100644
View file @
abfbeae0
package
com
.
edgec
.
browserbackend
.
auth
.
domain
;
import
com.fasterxml.jackson.annotation.JsonIgnoreProperties
;
import
org.springframework.data.annotation.Id
;
import
org.springframework.data.mongodb.core.mapping.Document
;
@Document
(
collection
=
"usernametoken"
)
@JsonIgnoreProperties
(
ignoreUnknown
=
true
)
public
class
UsernameToken
{
@Id
private
String
username
;
private
String
token
;
public
String
getUsername
()
{
return
username
;
}
public
void
setUsername
(
String
username
)
{
this
.
username
=
username
;
}
public
String
getToken
()
{
return
token
;
}
public
void
setToken
(
String
token
)
{
this
.
token
=
token
;
}
}
src/main/java/com/edgec/browserbackend/auth/repository/UsernameTokenRepository.java
0 → 100644
View file @
abfbeae0
package
com
.
edgec
.
browserbackend
.
auth
.
repository
;
import
com.edgec.browserbackend.auth.domain.UsernameToken
;
import
org.springframework.data.mongodb.repository.MongoRepository
;
import
org.springframework.stereotype.Repository
;
@Repository
public
interface
UsernameTokenRepository
extends
MongoRepository
<
UsernameToken
,
String
>
{
UsernameToken
findByUsername
(
String
username
);
}
src/main/java/com/edgec/browserbackend/auth/service/UserAuthServiceImpl.java
→
src/main/java/com/edgec/browserbackend/auth/service/
Impl/
UserAuthServiceImpl.java
View file @
abfbeae0
package
com
.
edgec
.
browserbackend
.
auth
.
service
;
package
com
.
edgec
.
browserbackend
.
auth
.
service
.
Impl
;
import
com.edgec.browserbackend.auth.domain.Roles
;
import
com.edgec.browserbackend.auth.domain.Roles
;
import
com.edgec.browserbackend.auth.domain.User
;
import
com.edgec.browserbackend.auth.domain.User
;
...
@@ -6,6 +6,7 @@ import com.edgec.browserbackend.auth.domain.UserPasswordReset;
...
@@ -6,6 +6,7 @@ import com.edgec.browserbackend.auth.domain.UserPasswordReset;
import
com.edgec.browserbackend.auth.exception.AuthErrorCode
;
import
com.edgec.browserbackend.auth.exception.AuthErrorCode
;
import
com.edgec.browserbackend.auth.repository.RolesRepository
;
import
com.edgec.browserbackend.auth.repository.RolesRepository
;
import
com.edgec.browserbackend.auth.repository.UserRepository
;
import
com.edgec.browserbackend.auth.repository.UserRepository
;
import
com.edgec.browserbackend.auth.service.UserAuthService
;
import
com.edgec.browserbackend.common.commons.error.ClientRequestException
;
import
com.edgec.browserbackend.common.commons.error.ClientRequestException
;
import
org.apache.commons.lang3.StringUtils
;
import
org.apache.commons.lang3.StringUtils
;
import
org.slf4j.Logger
;
import
org.slf4j.Logger
;
...
...
src/main/java/com/edgec/browserbackend/auth/service/Impl/UsernameTokenServiceImpl.java
0 → 100644
View file @
abfbeae0
package
com
.
edgec
.
browserbackend
.
auth
.
service
.
Impl
;
import
com.edgec.browserbackend.account.domain.Account
;
import
com.edgec.browserbackend.account.domain.AccountDto
;
import
com.edgec.browserbackend.account.domain.UserDto
;
import
com.edgec.browserbackend.account.service.AccountService
;
import
com.edgec.browserbackend.auth.domain.UsernameToken
;
import
com.edgec.browserbackend.auth.exception.AuthErrorCode
;
import
com.edgec.browserbackend.auth.repository.UsernameTokenRepository
;
import
com.edgec.browserbackend.auth.service.UsernameTokenService
;
import
com.edgec.browserbackend.common.commons.error.ClientRequestException
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
java.util.List
;
import
java.util.Objects
;
import
java.util.UUID
;
import
java.util.stream.Collectors
;
@Service
public
class
UsernameTokenServiceImpl
implements
UsernameTokenService
{
@Autowired
private
UsernameTokenRepository
usernameTokenRepository
;
@Autowired
private
AccountService
accountSecrvice
;
@Override
public
List
<
UsernameToken
>
selectVpsDtoByParent
(
String
username
)
{
List
<
UserDto
>
userDtos
=
accountSecrvice
.
getAllDesendentUsers
(
username
,
0
);
List
<
UsernameToken
>
usernameTokens
=
userDtos
.
stream
().
map
(
userDto
->
{
return
usernameTokenRepository
.
findByUsername
(
userDto
.
getUsername
());
}).
filter
(
Objects:
:
nonNull
).
collect
(
Collectors
.
toList
());
UsernameToken
parentToken
=
usernameTokenRepository
.
findByUsername
(
username
);
if
(
parentToken
!=
null
)
{
usernameTokens
.
add
(
parentToken
);
}
return
usernameTokens
;
}
public
UsernameToken
createUsername
(
String
username
)
{
String
token
=
UUID
.
randomUUID
().
toString
();
UsernameToken
usernameToken
=
new
UsernameToken
();
usernameToken
.
setToken
(
token
);
usernameToken
.
setUsername
(
username
);
usernameTokenRepository
.
save
(
usernameToken
);
return
usernameToken
;
}
@Override
public
UsernameToken
getUserToken
(
String
username
)
{
return
usernameTokenRepository
.
findByUsername
(
username
);
}
public
UsernameToken
createUserToken
(
String
owner
,
String
targetUser
)
{
Account
account
=
accountSecrvice
.
findByName
(
targetUser
);
if
(
owner
.
equals
(
account
.
getParent
())
||
owner
.
equals
(
targetUser
))
{
String
token
=
UUID
.
randomUUID
().
toString
().
replace
(
"-"
,
""
);
UsernameToken
usernameToken
=
new
UsernameToken
();
usernameToken
.
setToken
(
token
);
usernameToken
.
setUsername
(
targetUser
);
usernameTokenRepository
.
save
(
usernameToken
);
return
usernameToken
;
}
throw
new
ClientRequestException
(
AuthErrorCode
.
AUTHORIZATION_ERROR
);
}
}
src/main/java/com/edgec/browserbackend/auth/service/UsernameTokenService.java
0 → 100644
View file @
abfbeae0
package
com
.
edgec
.
browserbackend
.
auth
.
service
;
import
com.edgec.browserbackend.auth.domain.UsernameToken
;
import
java.util.List
;
public
interface
UsernameTokenService
{
List
<
UsernameToken
>
selectVpsDtoByParent
(
String
username
);
UsernameToken
createUserToken
(
String
owner
,
String
targetUser
);
UsernameToken
getUserToken
(
String
username
);
}
src/main/java/com/edgec/browserbackend/browser/domain/IpResource.java
View file @
abfbeae0
package
com
.
edgec
.
browserbackend
.
browser
.
domain
;
package
com
.
edgec
.
browserbackend
.
browser
.
domain
;
import
org.springframework.data.annotation.Id
;
import
org.springframework.data.annotation.Id
;
import
org.springframework.data.mongodb.core.mapping.Document
;
import
java.util.List
;
import
java.util.List
;
@Document
(
collection
=
"ipresource"
)
public
class
IpResource
{
public
class
IpResource
{
@Id
@Id
private
String
id
;
private
String
id
;
...
...
src/main/java/com/edgec/browserbackend/browser/domain/UserShops.java
View file @
abfbeae0
package
com
.
edgec
.
browserbackend
.
browser
.
domain
;
package
com
.
edgec
.
browserbackend
.
browser
.
domain
;
import
org.springframework.data.annotation.Id
;
import
org.springframework.data.annotation.Id
;
import
org.springframework.data.mongodb.core.mapping.Document
;
import
java.util.List
;
import
java.util.List
;
@Document
(
"usershops"
)
public
class
UserShops
{
public
class
UserShops
{
@Id
@Id
private
String
username
;
private
String
username
;
private
List
<
String
>
shops
;
private
List
<
String
>
shop
Id
s
;
}
}
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