mirror of
https://gitee.com/dromara/MaxKey.git
synced 2025-12-06 17:08:29 +08:00
fix
This commit is contained in:
parent
3bd46aae35
commit
d421ac07ca
@ -149,7 +149,7 @@ public class Navigations extends JpaBaseDomain implements java.io.Serializable
|
||||
return "Navigations [name=" + name + ", url=" + url + ", type=" + type
|
||||
+ ", target=" + target + ", pId=" + pId + ", pName=" + pName
|
||||
+ ", xPath=" + xPath + ", hasChild=" + hasChild
|
||||
+ ", sortOrder=" + sortOrder + ", visible=" + visible
|
||||
+", visible=" + visible
|
||||
+ ", childNavs=" + childNavs + "]";
|
||||
}
|
||||
|
||||
|
||||
@ -106,7 +106,7 @@ public class Applications extends JpaBaseDomain implements Serializable{
|
||||
|
||||
protected Accounts appUser;
|
||||
|
||||
protected int sortOrder;
|
||||
protected int sortIndex;
|
||||
|
||||
protected String description;
|
||||
|
||||
@ -242,8 +242,13 @@ public class Applications extends JpaBaseDomain implements Serializable{
|
||||
}
|
||||
|
||||
|
||||
public int getSortIndex() {
|
||||
return sortIndex;
|
||||
}
|
||||
|
||||
|
||||
public void setSortIndex(int sortIndex) {
|
||||
this.sortIndex = sortIndex;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param icon the icon to set
|
||||
|
||||
@ -64,7 +64,7 @@ public class OAuth20Details extends Applications {
|
||||
this.setIcon(application.getIcon());
|
||||
this.clientId=application.getId();
|
||||
|
||||
this.setSortOrder(application.getSortOrder());
|
||||
this.setSortIndex(application.getSortIndex());
|
||||
this.setVendor(application.getVendor());
|
||||
this.setVendorUrl(application.getVendorUrl());
|
||||
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
package com.connsec.crypto;
|
||||
|
||||
import org.springframework.security.crypto.scrypt.SCryptPasswordEncoder;
|
||||
import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;
|
||||
|
||||
public class SCryptPasswordEncoderTest {
|
||||
|
||||
@ -10,11 +10,12 @@ public class SCryptPasswordEncoderTest {
|
||||
|
||||
public static void main(String[] args) {
|
||||
// TODO Auto-generated method stub
|
||||
SCryptPasswordEncoder pe=new SCryptPasswordEncoder();
|
||||
String c="$e0801$7Holo9EgzBeg5xf/WLZu3/5IQwOyEPDLJPgMXkF9jnekBrbQUMt4CF9O2trkz3zBCnCLpUMR437q/AjQ5TTToA==$oYB8KRSxAsxkKkt5r79W6r6P0wTUcKwGye1ivXRN0Ts="
|
||||
;
|
||||
System.out.println(pe.encode("shimingxy")+"_password");
|
||||
System.out.println(pe.matches("shimingxy"+"_password", c));
|
||||
BCryptPasswordEncoder pe=new BCryptPasswordEncoder();
|
||||
//String c="$e0801$7Holo9EgzBeg5xf/WLZu3/5IQwOyEPDLJPgMXkF9jnekBrbQUMt4CF9O2trkz3zBCnCLpUMR437q/AjQ5TTToA==$oYB8KRSxAsxkKkt5r79W6r6P0wTUcKwGye1ivXRN0Ts="
|
||||
//;
|
||||
System.out.println(pe.encode("admin"));
|
||||
// System.out.println(pe.encode("shimingxy")+"_password");
|
||||
//System.out.println(pe.matches("shimingxy"+"_password", c));
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Binary file not shown.
@ -1,2 +0,0 @@
|
||||
/META-INF/
|
||||
/org/
|
||||
@ -1 +0,0 @@
|
||||
/com/
|
||||
@ -1,2 +0,0 @@
|
||||
/META-INF/
|
||||
/org/
|
||||
@ -1,2 +0,0 @@
|
||||
/META-INF/
|
||||
/org/
|
||||
@ -1,2 +0,0 @@
|
||||
/META-INF/
|
||||
/org/
|
||||
@ -1,2 +0,0 @@
|
||||
/META-INF/
|
||||
/org/
|
||||
@ -1,2 +0,0 @@
|
||||
/META-INF/
|
||||
/org/
|
||||
@ -0,0 +1,728 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<xs:schema xmlns="http://www.springframework.org/schema/security/oauth2" xmlns:xs="http://www.w3.org/2001/XMLSchema"
|
||||
xmlns:beans="http://www.springframework.org/schema/beans" targetNamespace="http://www.springframework.org/schema/security/oauth2"
|
||||
elementFormDefault="qualified" attributeFormDefault="unqualified">
|
||||
|
||||
<xs:import namespace="http://www.springframework.org/schema/beans" schemaLocation="http://www.springframework.org/schema/beans/spring-beans-3.1.xsd" />
|
||||
|
||||
<xs:element name="rest-template">
|
||||
<xs:annotation>
|
||||
<xs:documentation>
|
||||
Creates an OAuth2RestTemplate with all the pieces needed to connect to a remote resource from
|
||||
a web
|
||||
application. Injects request and session-scoped beans into the template, so can only be
|
||||
used in the context of a web
|
||||
request.
|
||||
</xs:documentation>
|
||||
</xs:annotation>
|
||||
<xs:complexType>
|
||||
<xs:complexContent>
|
||||
<xs:extension base="beans:identifiedType">
|
||||
<xs:sequence>
|
||||
<xs:element ref="beans:description" minOccurs="0" />
|
||||
<xs:choice minOccurs="0" maxOccurs="unbounded">
|
||||
<xs:element ref="beans:property" />
|
||||
</xs:choice>
|
||||
</xs:sequence>
|
||||
<xs:attribute name="resource">
|
||||
<xs:annotation>
|
||||
<xs:documentation>
|
||||
The OAuth2ProtectedResourceDetails governing the configuration of this client. Mandatory.
|
||||
</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:attribute>
|
||||
<xs:attribute name="access-token-provider" type="xs:string">
|
||||
<xs:annotation>
|
||||
<xs:documentation>
|
||||
The reference to the bean that manages access token acquisition. Optional (defaults to a chain
|
||||
including common grant types from the spec).
|
||||
</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:attribute>
|
||||
</xs:extension>
|
||||
</xs:complexContent>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
|
||||
<xs:element name="authorization-server">
|
||||
<xs:annotation>
|
||||
<xs:documentation>
|
||||
Specifies that the oauth 2 authorization and token
|
||||
endpoints should be created in the application
|
||||
context. These are
|
||||
implemented as regular Spring @Controller beans, so as long as the
|
||||
default Spring MVC set up in
|
||||
present in the application
|
||||
the endpoints should work (at /oauth/authorization and /oauth/token by
|
||||
default).
|
||||
</xs:documentation>
|
||||
</xs:annotation>
|
||||
<xs:complexType>
|
||||
|
||||
<xs:sequence>
|
||||
<xs:element name="authorization-code" minOccurs="0" maxOccurs="1">
|
||||
<xs:annotation>
|
||||
<xs:documentation>
|
||||
The configuration of the authorization code
|
||||
mechanism. This
|
||||
mechanism enables a way for clients to
|
||||
obtain an
|
||||
access token by obtaining an authorization code.
|
||||
</xs:documentation>
|
||||
</xs:annotation>
|
||||
<xs:complexType>
|
||||
<xs:attribute name="disabled" type="xs:boolean">
|
||||
<xs:annotation>
|
||||
<xs:documentation>
|
||||
Whether to disable the authorization code
|
||||
mechanism.
|
||||
</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:attribute>
|
||||
<xs:attribute name="authorization-code-services-ref" type="xs:string">
|
||||
<xs:annotation>
|
||||
<xs:documentation>
|
||||
The reference to the bean that defines the
|
||||
authorization code
|
||||
services. Default value is an
|
||||
instance of
|
||||
"org.springframework.security.oauth2.provider.authorization_code.InMemoryAuthorizationCodeServices".
|
||||
</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:attribute>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
<xs:element name="implicit" minOccurs="0" maxOccurs="1">
|
||||
<xs:annotation>
|
||||
<xs:documentation>
|
||||
The configuration of the client credentials
|
||||
grant type.
|
||||
</xs:documentation>
|
||||
</xs:annotation>
|
||||
<xs:complexType>
|
||||
<xs:attribute name="disabled" type="xs:boolean">
|
||||
<xs:annotation>
|
||||
<xs:documentation>
|
||||
Whether to disable the implicit grant type
|
||||
</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:attribute>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
<xs:element name="refresh-token" minOccurs="0" maxOccurs="1">
|
||||
<xs:annotation>
|
||||
<xs:documentation>
|
||||
The configuration of the refresh token grant
|
||||
type.
|
||||
</xs:documentation>
|
||||
</xs:annotation>
|
||||
<xs:complexType>
|
||||
<xs:attribute name="disabled" type="xs:boolean">
|
||||
<xs:annotation>
|
||||
<xs:documentation>
|
||||
Whether to disable the refresh token grant
|
||||
type
|
||||
</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:attribute>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
<xs:element name="client-credentials" minOccurs="0" maxOccurs="1">
|
||||
<xs:annotation>
|
||||
<xs:documentation>
|
||||
The configuration of the client credentials
|
||||
grant type.
|
||||
</xs:documentation>
|
||||
</xs:annotation>
|
||||
<xs:complexType>
|
||||
<xs:attribute name="disabled" type="xs:boolean">
|
||||
<xs:annotation>
|
||||
<xs:documentation>
|
||||
Whether to disable the refresh token grant
|
||||
type
|
||||
</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:attribute>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
<xs:element name="password" minOccurs="0" maxOccurs="1">
|
||||
<xs:annotation>
|
||||
<xs:documentation>
|
||||
The configuration of the resource owner password
|
||||
grant type.
|
||||
</xs:documentation>
|
||||
</xs:annotation>
|
||||
<xs:complexType>
|
||||
<xs:attribute name="disabled" type="xs:boolean">
|
||||
<xs:annotation>
|
||||
<xs:documentation>
|
||||
Whether to disable the refresh token grant
|
||||
type
|
||||
</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:attribute>
|
||||
<xs:attribute name="authentication-manager-ref" type="xs:string">
|
||||
<xs:annotation>
|
||||
<xs:documentation>
|
||||
A reference to an authentication manager that
|
||||
can be used to
|
||||
authenticate the resource owner
|
||||
</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:attribute>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
<xs:element name="custom-grant" minOccurs="0" maxOccurs="unbounded">
|
||||
<xs:annotation>
|
||||
<xs:documentation>
|
||||
The configuration of your custom grant type.
|
||||
</xs:documentation>
|
||||
</xs:annotation>
|
||||
<xs:complexType>
|
||||
<xs:attribute name="disabled" type="xs:boolean">
|
||||
<xs:annotation>
|
||||
<xs:documentation>
|
||||
Whether to disable this grant
|
||||
type
|
||||
</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:attribute>
|
||||
<xs:attribute name="token-granter-ref" type="xs:string" use="required">
|
||||
<xs:annotation>
|
||||
<xs:documentation>
|
||||
A reference to your token granter
|
||||
</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:attribute>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
</xs:sequence>
|
||||
<xs:attribute name="client-details-service-ref" type="xs:string">
|
||||
<xs:annotation>
|
||||
<xs:documentation>
|
||||
The reference to the bean that defines the client
|
||||
details service.
|
||||
</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:attribute>
|
||||
<xs:attribute name="token-endpoint-url" type="xs:string">
|
||||
<xs:annotation>
|
||||
<xs:documentation>
|
||||
The URL at which a request for an access token
|
||||
will be serviced.
|
||||
Default value: "/oauth/token"
|
||||
</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:attribute>
|
||||
<xs:attribute name="authorization-endpoint-url" type="xs:string">
|
||||
<xs:annotation>
|
||||
<xs:documentation>
|
||||
The URL at which a user is redirected for
|
||||
authorization. Default
|
||||
value: "/oauth/authorize"
|
||||
</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:attribute>
|
||||
|
||||
<!--the following attributes are less used -->
|
||||
<xs:attribute name="token-granter-ref" type="xs:string">
|
||||
<xs:annotation>
|
||||
<xs:documentation>
|
||||
The reference to the bean that defines the
|
||||
granter of different oauth
|
||||
token types.
|
||||
</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:attribute>
|
||||
|
||||
<xs:attribute name="implicit-grant-service-ref" type="xs:string">
|
||||
<xs:annotation>
|
||||
<xs:documentation>
|
||||
The reference to the bean that defines the
|
||||
implicit grant service.
|
||||
</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:attribute>
|
||||
|
||||
<xs:attribute name="token-services-ref" type="xs:string">
|
||||
<xs:annotation>
|
||||
<xs:documentation>
|
||||
The reference to the bean that defines the token
|
||||
services. Default
|
||||
value is an instance of
|
||||
"org.springframework.security.oauth2.provider.token.DefaultTokenServices".
|
||||
</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:attribute>
|
||||
|
||||
<xs:attribute name="authorization-request-manager-ref" type="xs:string">
|
||||
<xs:annotation>
|
||||
<xs:documentation>
|
||||
The reference to the bean that defines the manager for
|
||||
authorization requests from the input
|
||||
parameters (e.g. request parameters).
|
||||
Default
|
||||
value is an
|
||||
instance of
|
||||
"org.springframework.security.oauth2.provider.token.DefaultAuthorizationRequestManager".
|
||||
</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:attribute>
|
||||
|
||||
<xs:attribute name="user-approval-handler-ref" type="xs:string">
|
||||
<xs:annotation>
|
||||
<xs:documentation>
|
||||
Reference to a bean that handles user approval decisions. Using this strategy servers can
|
||||
selectively skip the approval process depending on decisions in the past or on the type of client.
|
||||
</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:attribute>
|
||||
|
||||
<xs:attribute name="user-approval-page" type="xs:string">
|
||||
<xs:annotation>
|
||||
<xs:documentation>
|
||||
The URL of the page that handles the user
|
||||
approval form (if needed, depending on the grant type).
|
||||
The default is "forward:/oauth/confirm_access" which is not handled
|
||||
by the authorization endpoint, so normally you
|
||||
will have to supply a handler
|
||||
for this path.
|
||||
</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:attribute>
|
||||
|
||||
<xs:attribute name="error-page" type="xs:string">
|
||||
<xs:annotation>
|
||||
<xs:documentation>
|
||||
The URL of the page that handles errors (default forward:/oauth/error).
|
||||
</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:attribute>
|
||||
|
||||
<xs:attribute name="approval-parameter-name" type="xs:string">
|
||||
<xs:annotation>
|
||||
<xs:documentation>
|
||||
The name of the form parameter that is used to
|
||||
indicate user
|
||||
approval of the client
|
||||
authentication
|
||||
request.
|
||||
Default value: "user_oauth_approval".
|
||||
</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:attribute>
|
||||
|
||||
<xs:attribute name="redirect-resolver-ref" type="xs:string">
|
||||
<xs:annotation>
|
||||
<xs:documentation>
|
||||
The reference to the bean that defines the
|
||||
redirect resolver, used
|
||||
during the user
|
||||
authorization.
|
||||
Default
|
||||
value is an instance of
|
||||
"org.springframework.security.oauth2.provider.authorization_code.DefaultRedirectResolver".
|
||||
</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:attribute>
|
||||
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
|
||||
<xs:element name="resource-server">
|
||||
<xs:annotation>
|
||||
<xs:documentation>
|
||||
Specifies that there are oauth 2 protected resources in
|
||||
the application context. This element
|
||||
has an
|
||||
id which is the bean id of the filter created. The filter
|
||||
should be added to the Spring Security filter chain at
|
||||
position before="PRE_AUTH_FILTER"
|
||||
</xs:documentation>
|
||||
</xs:annotation>
|
||||
<xs:complexType>
|
||||
<xs:complexContent>
|
||||
<xs:extension base="beans:identifiedType">
|
||||
|
||||
<xs:attribute name="resource-id" type="xs:string">
|
||||
<xs:annotation>
|
||||
<xs:documentation>
|
||||
The resource id that is protected by this filter
|
||||
if any. If empty or
|
||||
absent then all resource ids
|
||||
are allowed,
|
||||
otherwise
|
||||
only tokens which are granted to a client that contains
|
||||
this reosurce
|
||||
id will be legal.
|
||||
</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:attribute>
|
||||
|
||||
<xs:attribute name="token-services-ref" type="xs:string">
|
||||
<xs:annotation>
|
||||
<xs:documentation>
|
||||
The reference to the bean that defines the token
|
||||
services. Default
|
||||
value is an instance of
|
||||
"org.springframework.security.oauth2.provider.token.DefaultTokenServices".
|
||||
</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:attribute>
|
||||
|
||||
<xs:attribute name="entry-point-ref" type="xs:string">
|
||||
<xs:annotation>
|
||||
<xs:documentation>
|
||||
The reference to the bean that defines the entry point for failed authentications. Defaults to
|
||||
a vanilla
|
||||
org.springframework.security.oauth2.provider.error.OAuth2AuthenticationEntryPoint.
|
||||
</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:attribute>
|
||||
|
||||
<xs:attribute name="auth-details-source-ref" type="xs:string">
|
||||
<xs:annotation>
|
||||
<xs:documentation>
|
||||
The reference to the bean that defines the AuthenticationDetailsSource.
|
||||
</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:attribute>
|
||||
</xs:extension>
|
||||
</xs:complexContent>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
|
||||
<xs:element name="client-details-service">
|
||||
<xs:annotation>
|
||||
<xs:documentation>
|
||||
Default element that contains the definition of the
|
||||
OAuth clients that are
|
||||
allowed to access this
|
||||
service.
|
||||
</xs:documentation>
|
||||
</xs:annotation>
|
||||
|
||||
<xs:complexType>
|
||||
<xs:complexContent>
|
||||
<xs:extension base="beans:identifiedType">
|
||||
<xs:choice minOccurs="0" maxOccurs="unbounded">
|
||||
<xs:element name="client">
|
||||
<xs:annotation>
|
||||
<xs:documentation>
|
||||
Definition of a client that can act on behalf
|
||||
of a user.
|
||||
</xs:documentation>
|
||||
</xs:annotation>
|
||||
|
||||
<xs:complexType>
|
||||
<xs:attribute name="client-id" type="xs:string" use="required">
|
||||
<xs:annotation>
|
||||
<xs:documentation>
|
||||
The client id.
|
||||
</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:attribute>
|
||||
<xs:attribute name="secret" type="xs:string">
|
||||
<xs:annotation>
|
||||
<xs:documentation>
|
||||
The client secret. If the secret is
|
||||
undefined or empty (the
|
||||
default) the client does
|
||||
not
|
||||
require a
|
||||
secret.
|
||||
</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:attribute>
|
||||
<xs:attribute name="redirect-uri" type="xs:string">
|
||||
<xs:annotation>
|
||||
<xs:documentation>
|
||||
The re-direct URI(s) established during
|
||||
registration (optional, comma separated).
|
||||
</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:attribute>
|
||||
<xs:attribute name="resource-ids" type="xs:string">
|
||||
<xs:annotation>
|
||||
<xs:documentation>
|
||||
The resource ids to which this client can be
|
||||
granted access
|
||||
(comma-separated). If missing or
|
||||
empty all
|
||||
resources are
|
||||
accessible (not recommended by the spec).
|
||||
</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:attribute>
|
||||
<xs:attribute name="scope" type="xs:string">
|
||||
<xs:annotation>
|
||||
<xs:documentation>
|
||||
The scopes to which the client is limited
|
||||
(comma-separated). If
|
||||
scope is undefined or empty
|
||||
(the
|
||||
default) the client
|
||||
is not limited by scope, but in that case
|
||||
the authorization
|
||||
service must explicitly
|
||||
accept unlimited
|
||||
access by not
|
||||
specifying any scopes itself.
|
||||
</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:attribute>
|
||||
<xs:attribute name="authorized-grant-types" type="xs:string">
|
||||
<xs:annotation>
|
||||
<xs:documentation>
|
||||
Grant types that are authorized for the
|
||||
client to use
|
||||
(comma-separated). Currently defined
|
||||
grant types
|
||||
include
|
||||
"authorization_code", "password", "assertion", and
|
||||
"refresh_token". Default value is
|
||||
"authorization_code,refresh_token".
|
||||
</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:attribute>
|
||||
<xs:attribute name="authorities" type="xs:string">
|
||||
<xs:annotation>
|
||||
<xs:documentation>
|
||||
Authorities that are granted to the client
|
||||
(comma-separated). Distinct
|
||||
from the authorities
|
||||
granted to
|
||||
the user on behalf
|
||||
of whom the client is acting.
|
||||
</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:attribute>
|
||||
<xs:attribute name="access-token-validity" type="xs:string">
|
||||
<xs:annotation>
|
||||
<xs:documentation>
|
||||
The access token validity period in seconds (optional). If unspecified a global default will
|
||||
be applied by the token services.
|
||||
</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:attribute>
|
||||
<xs:attribute name="refresh-token-validity" type="xs:string">
|
||||
<xs:annotation>
|
||||
<xs:documentation>
|
||||
The refresh token validity period in seconds (optional). If unspecified a global default
|
||||
will
|
||||
be applied by the token services.
|
||||
</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:attribute>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
</xs:choice>
|
||||
</xs:extension>
|
||||
</xs:complexContent>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
|
||||
<xs:element name="expression-handler">
|
||||
<xs:annotation>
|
||||
<xs:documentation>
|
||||
Element for declaring and configuring an expression
|
||||
handler for oauth
|
||||
security expressions. See
|
||||
http://static.springsource.org/spring-security/site/docs/3.0.x/reference/el-access.html
|
||||
</xs:documentation>
|
||||
</xs:annotation>
|
||||
<xs:complexType>
|
||||
<xs:complexContent>
|
||||
<xs:extension base="beans:identifiedType" />
|
||||
</xs:complexContent>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
|
||||
<xs:element name="web-expression-handler">
|
||||
<xs:annotation>
|
||||
<xs:documentation>
|
||||
Element for declaring and configuring an expression
|
||||
handler for oauth
|
||||
security expressions in http
|
||||
intercept urls. See
|
||||
http://static.springsource.org/spring-security/site/docs/3.0.x/reference/el-access.html
|
||||
</xs:documentation>
|
||||
</xs:annotation>
|
||||
<xs:complexType>
|
||||
<xs:complexContent>
|
||||
<xs:extension base="beans:identifiedType" />
|
||||
</xs:complexContent>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
|
||||
<xs:element name="client">
|
||||
<xs:annotation>
|
||||
<xs:documentation>
|
||||
Creates the oauth 2 client filter be be added to the
|
||||
application security policy.
|
||||
</xs:documentation>
|
||||
</xs:annotation>
|
||||
<xs:complexType>
|
||||
<xs:complexContent>
|
||||
<xs:extension base="beans:identifiedType">
|
||||
<xs:attribute name="redirect-strategy-ref" type="xs:string">
|
||||
<xs:annotation>
|
||||
<xs:documentation>
|
||||
The reference to the bean that defines the
|
||||
redirect strategy, used when redirecting the user for
|
||||
access authorization. Default value is an instance of
|
||||
"org.springframework.security.web.DefaultRedirectStrategy".
|
||||
</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:attribute>
|
||||
</xs:extension>
|
||||
</xs:complexContent>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
|
||||
<xs:element name="resource">
|
||||
<xs:annotation>
|
||||
<xs:documentation>
|
||||
Definition of a remote resource that is protected via
|
||||
OAuth2 to which this client application wants
|
||||
access.
|
||||
</xs:documentation>
|
||||
</xs:annotation>
|
||||
<xs:complexType>
|
||||
<xs:complexContent>
|
||||
<xs:extension base="beans:identifiedType">
|
||||
<xs:attribute name="type" type="xs:string">
|
||||
<xs:annotation>
|
||||
<xs:documentation>
|
||||
The grant type. Currently defined grant types
|
||||
include
|
||||
"authorization_code", "password", and
|
||||
"assertion".
|
||||
Default value
|
||||
is "authorization_code".
|
||||
</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:attribute>
|
||||
<xs:attribute name="client-id" type="xs:string" use="required">
|
||||
<xs:annotation>
|
||||
<xs:documentation>
|
||||
The client id. This is the id by which the
|
||||
resource server will
|
||||
identify this application.
|
||||
</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:attribute>
|
||||
<xs:attribute name="access-token-uri" type="xs:string">
|
||||
<xs:annotation>
|
||||
<xs:documentation>
|
||||
The uri to where the access token may be
|
||||
obtained.
|
||||
</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:attribute>
|
||||
<xs:attribute name="scope" type="xs:string">
|
||||
<xs:annotation>
|
||||
<xs:documentation>
|
||||
Comma-separted list of string specifying the
|
||||
scope of the access to the
|
||||
resource. By default,
|
||||
no
|
||||
scope will be
|
||||
specified.
|
||||
</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:attribute>
|
||||
<xs:attribute name="client-secret" type="xs:string">
|
||||
<xs:annotation>
|
||||
<xs:documentation>
|
||||
The secret asssociated with the resource. By
|
||||
default, no secret
|
||||
will be supplied for access to
|
||||
the resource.
|
||||
</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:attribute>
|
||||
<xs:attribute name="client-authentication-scheme" type="xs:string">
|
||||
<xs:annotation>
|
||||
<xs:documentation>
|
||||
The scheme that is used to pass the client
|
||||
secret. Suggested
|
||||
values: "header" and "form".
|
||||
Default:
|
||||
"header".
|
||||
See section 2.1 of the OAuth 2 spec.
|
||||
</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:attribute>
|
||||
<xs:attribute name="user-authorization-uri" type="xs:string">
|
||||
<xs:annotation>
|
||||
<xs:documentation>
|
||||
The uri to which the user will be redirected if
|
||||
the user is ever
|
||||
needed to grant an authorization
|
||||
code.
|
||||
</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:attribute>
|
||||
<xs:attribute name="authentication-scheme" default="header" type="xs:string">
|
||||
<xs:annotation>
|
||||
<xs:documentation>
|
||||
The method for bearing the token when accessing
|
||||
the resource.
|
||||
Default value is "header". See
|
||||
AuthenticationScheme enum for possible values.
|
||||
</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:attribute>
|
||||
<xs:attribute name="token-name" type="xs:string" default="access_token">
|
||||
<xs:annotation>
|
||||
<xs:documentation>
|
||||
The name of the bearer token. The default is
|
||||
"access_token", which
|
||||
is according to the spec,
|
||||
but
|
||||
some providers
|
||||
(e.g. Facebook) don't conform to the spec.
|
||||
</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:attribute>
|
||||
<xs:attribute name="pre-established-redirect-uri" type="xs:string">
|
||||
<xs:annotation>
|
||||
<xs:documentation>
|
||||
Some resource servers may require a
|
||||
pre-established URI to which
|
||||
they will redirect users after
|
||||
users
|
||||
authorize an access token.
|
||||
</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:attribute>
|
||||
<xs:attribute name="use-current-uri" type="xs:string">
|
||||
<xs:annotation>
|
||||
<xs:documentation>
|
||||
Boolean flag indicating that the current URI should be used as a redirect (if available) rather
|
||||
than the
|
||||
registered redirect URI. Default is true.
|
||||
</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:attribute>
|
||||
<xs:attribute name="username" type="xs:string">
|
||||
<xs:annotation>
|
||||
<xs:documentation>
|
||||
The username for authentication, required only when type is "password".
|
||||
</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:attribute>
|
||||
<xs:attribute name="password" type="xs:string">
|
||||
<xs:annotation>
|
||||
<xs:documentation>
|
||||
The password for authentication, required only when type is "password".
|
||||
</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:attribute>
|
||||
</xs:extension>
|
||||
</xs:complexContent>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
|
||||
</xs:schema>
|
||||
@ -1,2 +0,0 @@
|
||||
/META-INF/
|
||||
/org/
|
||||
@ -1,2 +0,0 @@
|
||||
/META-INF/
|
||||
/org/
|
||||
@ -1,4 +1,2 @@
|
||||
eclipse.preferences.version=1
|
||||
encoding//src/main/resources/templates/views/apps/appAddCommon.ftl=UTF-8
|
||||
encoding//src/main/resources/templates/views/apps/appUpdateCommon.ftl=UTF-8
|
||||
encoding/<project>=UTF-8
|
||||
encoding/<project>=UTF-8
|
||||
@ -1,81 +0,0 @@
|
||||
package org.maxkey.tasks.report;
|
||||
|
||||
import java.sql.Types;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
|
||||
import org.joda.time.DateTime;
|
||||
import org.joda.time.format.DateTimeFormat;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
import org.springframework.jdbc.core.JdbcTemplate;
|
||||
|
||||
public class LoginDayReport {
|
||||
|
||||
final static Logger _logger = LoggerFactory.getLogger(LoginDayReport.class);
|
||||
|
||||
JdbcTemplate jdbcTemplate;
|
||||
|
||||
public static final String DAY_REPORT_COUNT_SELECT_SQL="SELECT COUNT(ID) DAYCOUNT FROM SECDB.LOGIN_HISTORY WHERE LOGINTIME > ? AND LOGINTIME < ?";
|
||||
|
||||
public static final String DAY_REPORT_INSERT_SQL="INSERT INTO REPORT_LOGIN_DAY (REPORTDATE,REPORTYEAR,REPORTMONTH,REPORTDAY,REPORTCOUNT) VALUES (? , ? , ? , ? , ?)";
|
||||
|
||||
public static final String MONTH_REPORT_COUNT_SELECT_SQL="SELECT REPORTCOUNT FROM REPORT_LOGIN_MONTH WHERE REPORTYEAR = ? AND REPORTMONTH = ?";
|
||||
|
||||
public static final String MONTH_REPORT_INSERT_SQL="INSERT INTO REPORT_LOGIN_MONTH (REPORTDATE,REPORTYEAR,REPORTMONTH,REPORTCOUNT) VALUES (? , ? , ? , ?)";
|
||||
|
||||
public static final String MONTH_REPORT_UPDATE_SQL="UPDATE REPORT_LOGIN_MONTH SET REPORTCOUNT = ? WHERE REPORTYEAR = ? AND REPORTMONTH = ?";
|
||||
|
||||
public void dayReportCount() {
|
||||
_logger.info("Day Report Statistical Analysis start . ");
|
||||
DateTime currentdateTime = new DateTime();
|
||||
_logger.info("current date time : " +currentdateTime.toString( DateTimeFormat.forPattern("yyyy-MM-dd HH:mm:ss")));
|
||||
|
||||
String beginDateTime=currentdateTime.toString( DateTimeFormat.forPattern("yyyy-MM-dd 00:00:00"));
|
||||
String endDateTime=currentdateTime.toString( DateTimeFormat.forPattern("yyyy-MM-dd 23:59:59"));
|
||||
String currentDate=currentdateTime.toString( DateTimeFormat.forPattern("yyyy-MM-dd"));
|
||||
String currentYear=currentdateTime.toString( DateTimeFormat.forPattern("yyyy"));
|
||||
String currentMonth=currentdateTime.toString( DateTimeFormat.forPattern("MM"));
|
||||
String currentDay=currentdateTime.toString( DateTimeFormat.forPattern("dd"));
|
||||
|
||||
_logger.info("Day Report Statistical Analysis Date : " +currentDate);
|
||||
//Analysis Current Day Login Count
|
||||
Integer reportCount=jdbcTemplate.queryForObject(DAY_REPORT_COUNT_SELECT_SQL,
|
||||
new Object[] { beginDateTime,endDateTime},
|
||||
new int[] {Types.TIMESTAMP,Types.TIMESTAMP}, Integer.class);
|
||||
|
||||
_logger.info("Current day Count " + reportCount);
|
||||
|
||||
jdbcTemplate.update(DAY_REPORT_INSERT_SQL, currentDate,currentYear,currentMonth,currentDay,reportCount);
|
||||
|
||||
/**
|
||||
* if month count not exist,then insert a record
|
||||
* else add current day count to month count
|
||||
*/
|
||||
List<Map<String, Object>> listSelectMonthReport=jdbcTemplate.queryForList(MONTH_REPORT_COUNT_SELECT_SQL,
|
||||
new Object[] { currentYear,currentMonth},
|
||||
new int[] {Types.INTEGER,Types.INTEGER});
|
||||
|
||||
if(listSelectMonthReport.size()<1){
|
||||
jdbcTemplate.update(MONTH_REPORT_INSERT_SQL, currentDate,currentYear,currentMonth,reportCount);
|
||||
_logger.info("Current Month Count " + reportCount);
|
||||
}else{
|
||||
Integer selectMonthReportCount=Integer.parseInt(listSelectMonthReport.get(0).get("REPORTCOUNT").toString())+reportCount;
|
||||
jdbcTemplate.update(MONTH_REPORT_UPDATE_SQL,selectMonthReportCount, currentYear,currentMonth);
|
||||
_logger.info("Current Month Count " + selectMonthReportCount);
|
||||
}
|
||||
|
||||
_logger.info("Day Report Statistical Analysis Successful");
|
||||
}
|
||||
|
||||
|
||||
public JdbcTemplate getJdbcTemplate() {
|
||||
return jdbcTemplate;
|
||||
}
|
||||
|
||||
public void setJdbcTemplate(JdbcTemplate jdbcTemplate) {
|
||||
this.jdbcTemplate = jdbcTemplate;
|
||||
}
|
||||
|
||||
}
|
||||
@ -19,7 +19,7 @@
|
||||
http://www.springframework.org/schema/security/spring-security.xsd">
|
||||
|
||||
<!-- Scheduler Task Start -->
|
||||
<!-- Day login report -->
|
||||
<!-- Day login report
|
||||
<bean id="loginDayReport" class="org.maxkey.tasks.report.LoginDayReport">
|
||||
<property name="jdbcTemplate" ref="jdbcTemplate" />
|
||||
</bean>
|
||||
@ -31,9 +31,7 @@
|
||||
</bean>
|
||||
|
||||
<bean id="triggerJobDetailLoginDayReport" class="org.springframework.scheduling.quartz.CronTriggerFactoryBean">
|
||||
<property name="jobDetail" ref="jobDetailLoginDayReport" />
|
||||
<property name="cronExpression" value="59 59 23 * * ?" />
|
||||
<!-- <property name="cronExpression" value="40 * * * * ?" />-->
|
||||
</bean>
|
||||
|
||||
|
||||
@ -41,12 +39,12 @@
|
||||
<property name="triggers">
|
||||
<list>
|
||||
<ref bean="triggerJobDetailLoginDayReport" />
|
||||
<!--
|
||||
|
||||
<ref bean="cronTrigger" />
|
||||
<ref bean="simpleTrigger" /> -->
|
||||
<ref bean="simpleTrigger" />
|
||||
</list>
|
||||
</property>
|
||||
</bean>
|
||||
</bean> -->
|
||||
|
||||
<!-- Scheduler Task End -->
|
||||
|
||||
|
||||
@ -47,7 +47,7 @@
|
||||
<div id="tool_box">
|
||||
<table class="datatable">
|
||||
<tr>
|
||||
<td width="120px"><@locale code="app.name"/>:</td>
|
||||
<td width="120px"><@locale code="apps.name"/>:</td>
|
||||
<td width="374px" nowrap>
|
||||
<form id="basic_search_form">
|
||||
<input type="text" name="name" style ="width:150px">
|
||||
@ -104,6 +104,7 @@
|
||||
data-total-field="records"
|
||||
data-page-list="[10, 25, 50, 100]"
|
||||
data-search="false"
|
||||
data-sort-name="name"
|
||||
data-locale="zh-CN"
|
||||
data-query-params="dataGridQueryParams"
|
||||
data-query-params-type="pageSize"
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
CREATE DATABASE IF NOT EXISTS `secdb` /*!40100 DEFAULT CHARACTER SET latin1 */;
|
||||
USE `secdb`;
|
||||
CREATE DATABASE IF NOT EXISTS `maxkey` /*!40100 DEFAULT CHARACTER SET utf8 */;
|
||||
USE `maxkey`;
|
||||
-- MySQL dump 10.13 Distrib 5.6.23, for Win64 (x86_64)
|
||||
--
|
||||
-- Host: 127.0.0.1 Database: secdb
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user