Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
yujianwangzivayy
MaxKey
提交
7c180f33
MaxKey
项目概览
yujianwangzivayy
/
MaxKey
与 Fork 源项目一致
Fork自
MaxKey单点登录官方(MaxKeyTop) / MaxKey
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
MaxKey
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
7c180f33
编写于
5月 15, 2020
作者:
MaxKey单点登录官方
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
kaptcha
上级
b099b40c
变更
5
隐藏空白更改
内联
并排
Showing
5 changed file
with
79 addition
and
56 deletion
+79
-56
maxkey-web-manage/src/main/java/org/maxkey/MaxKeyMgtApplication.java
...manage/src/main/java/org/maxkey/MaxKeyMgtApplication.java
+66
-5
maxkey-web-manage/src/main/java/org/maxkey/MaxKeyMgtConfig.java
...-web-manage/src/main/java/org/maxkey/MaxKeyMgtConfig.java
+3
-25
maxkey-web-manage/src/main/resources/config/kaptcha.properties
...y-web-manage/src/main/resources/config/kaptcha.properties
+9
-0
maxkey-web-manage/src/main/resources/spring/maxkey-mgt-security.xml
...-manage/src/main/resources/spring/maxkey-mgt-security.xml
+0
-25
maxkey-web-manage/src/main/resources/spring/maxkey-mgt.xml
maxkey-web-manage/src/main/resources/spring/maxkey-mgt.xml
+1
-1
未找到文件。
maxkey-web-manage/src/main/java/org/maxkey/MaxKeyMgtApplication.java
浏览文件 @
7c180f33
package
org.maxkey
;
import
java.io.IOException
;
import
java.util.Date
;
import
java.util.Properties
;
import
javax.servlet.ServletException
;
import
org.maxkey.authn.SavedRequestAwareAuthenticationSuccessHandler
;
import
org.maxkey.crypto.password.PasswordReciprocal
;
import
org.maxkey.web.InitializeContext
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.springframework.boot.SpringApplication
;
import
org.springframework.boot.autoconfigure.SpringBootApplication
;
import
org.springframework.boot.builder.SpringApplicationBuilder
;
import
org.springframework.boot.web.server.ConfigurableWebServerFactory
;
import
org.springframework.boot.web.server.ErrorPage
;
import
org.springframework.boot.web.server.WebServerFactoryCustomizer
;
import
org.springframework.boot.web.servlet.support.SpringBootServletInitializer
;
import
org.springframework.context.ConfigurableApplicationContext
;
import
org.springframework.context.annotation.Bean
;
import
org.springframework.context.annotation.ComponentScan
;
import
org.springframework.context.annotation.ImportResource
;
import
org.springframework.core.io.ClassPathResource
;
import
org.springframework.core.io.Resource
;
import
org.springframework.http.HttpStatus
;
import
com.google.code.kaptcha.Producer
;
import
com.google.code.kaptcha.impl.DefaultKaptcha
;
import
com.google.code.kaptcha.util.Config
;
@SpringBootApplication
@ImportResource
(
locations
={
"classpath:spring/maxkey-mgt.xml"
})
...
...
@@ -25,11 +39,6 @@ import org.springframework.context.annotation.ImportResource;
public
class
MaxKeyMgtApplication
extends
SpringBootServletInitializer
{
private
static
final
Logger
_logger
=
LoggerFactory
.
getLogger
(
MaxKeyMgtApplication
.
class
);
@Bean
MaxKeyMgtConfig
MaxKeyMgtConfig
()
{
return
new
MaxKeyMgtConfig
();
}
public
static
void
main
(
String
[]
args
)
{
System
.
out
.
println
(
"MaxKeyMgtApplication"
);
...
...
@@ -54,5 +63,57 @@ public class MaxKeyMgtApplication extends SpringBootServletInitializer {
return
application
.
sources
(
MaxKeyMgtApplication
.
class
);
}
@Bean
MaxKeyMgtConfig
MaxKeyMgtConfig
()
{
return
new
MaxKeyMgtConfig
();
}
/**
* 配置默认错误页面(仅用于内嵌tomcat启动时)
* 使用这种方式,在打包为war后不起作用
*
* @return
*/
@Bean
public
WebServerFactoryCustomizer
<
ConfigurableWebServerFactory
>
webServerFactoryCustomizer
()
{
return
new
WebServerFactoryCustomizer
<
ConfigurableWebServerFactory
>()
{
@Override
public
void
customize
(
ConfigurableWebServerFactory
factory
)
{
ErrorPage
errorPage400
=
new
ErrorPage
(
HttpStatus
.
BAD_REQUEST
,
"/exception/error/400"
);
ErrorPage
errorPage404
=
new
ErrorPage
(
HttpStatus
.
NOT_FOUND
,
"/exception/error/404"
);
ErrorPage
errorPage500
=
new
ErrorPage
(
HttpStatus
.
INTERNAL_SERVER_ERROR
,
"/exception/error/500"
);
factory
.
addErrorPages
(
errorPage400
,
errorPage404
,
errorPage500
);
}
};
}
@Bean
(
name
=
"passwordReciprocal"
)
public
PasswordReciprocal
passwordReciprocal
()
{
return
new
PasswordReciprocal
();
}
@Bean
(
name
=
"savedRequestSuccessHandler"
)
public
SavedRequestAwareAuthenticationSuccessHandler
SavedRequestAwareAuthenticationSuccessHandler
()
{
return
new
SavedRequestAwareAuthenticationSuccessHandler
();
}
/**
* Captcha Producer Config .
* @return Producer
* @throws IOException
*/
@Bean
(
name
=
"captchaProducer"
)
public
Producer
captchaProducer
()
throws
IOException
{
Resource
resource
=
new
ClassPathResource
(
"config/kaptcha.properties"
);
_logger
.
debug
(
"Kaptcha config file "
+
resource
.
getURL
());
DefaultKaptcha
kaptcha
=
new
DefaultKaptcha
();
Properties
properties
=
new
Properties
();
properties
.
load
(
resource
.
getInputStream
());
Config
config
=
new
Config
(
properties
);
kaptcha
.
setConfig
(
config
);
return
kaptcha
;
}
}
maxkey-web-manage/src/main/java/org/maxkey/MaxKeyMgtConfig.java
浏览文件 @
7c180f33
package
org.maxkey
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.springframework.beans.factory.annotation.Value
;
import
org.springframework.boot.web.server.ConfigurableWebServerFactory
;
import
org.springframework.boot.web.server.ErrorPage
;
import
org.springframework.boot.web.server.WebServerFactoryCustomizer
;
import
org.springframework.context.annotation.Bean
;
import
org.springframework.context.annotation.Configuration
;
import
org.springframework.context.annotation.PropertySource
;
import
org.springframework.http.HttpStatus
;
import
org.springframework.stereotype.Component
;
@Configuration
@Component
@PropertySource
(
"classpath:/application.properties"
)
public
class
MaxKeyMgtConfig
{
private
static
final
Logger
_logger
=
LoggerFactory
.
getLogger
(
MaxKeyMgtConfig
.
class
);
@Value
(
"${server.port:8080}"
)
private
int
port
;
...
...
@@ -25,23 +21,5 @@ public class MaxKeyMgtConfig {
this
.
port
=
port
;
}
/**
* 配置默认错误页面(仅用于内嵌tomcat启动时)
* 使用这种方式,在打包为war后不起作用
*
* @return
*/
@Bean
public
WebServerFactoryCustomizer
<
ConfigurableWebServerFactory
>
webServerFactoryCustomizer
()
{
return
new
WebServerFactoryCustomizer
<
ConfigurableWebServerFactory
>()
{
@Override
public
void
customize
(
ConfigurableWebServerFactory
factory
)
{
ErrorPage
errorPage400
=
new
ErrorPage
(
HttpStatus
.
BAD_REQUEST
,
"/exception/error/400"
);
ErrorPage
errorPage404
=
new
ErrorPage
(
HttpStatus
.
NOT_FOUND
,
"/exception/error/404"
);
ErrorPage
errorPage500
=
new
ErrorPage
(
HttpStatus
.
INTERNAL_SERVER_ERROR
,
"/exception/error/500"
);
factory
.
addErrorPages
(
errorPage400
,
errorPage404
,
errorPage500
);
}
};
}
}
maxkey-web-manage/src/main/resources/config/kaptcha.properties
0 → 100644
浏览文件 @
7c180f33
kaptcha.image.width
=
80
kaptcha.image.height
=
25
kaptcha.border
=
no
kaptcha.obscurificator.impl
=
com.google.code.kaptcha.impl.ShadowGimpy
kaptcha.textproducer.font.size
=
23
kaptcha.textproducer.char.string
=
0123456789
kaptcha.textproducer.char.length
=
4
kaptcha.noise.impl
=
com.google.code.kaptcha.impl.NoNoise
#
kaptcha.noise.color
=
white
\ No newline at end of file
maxkey-web-manage/src/main/resources/spring/maxkey-mgt-security.xml
浏览文件 @
7c180f33
...
...
@@ -113,31 +113,6 @@
<!-- Authentication Password Encoder Config -->
<bean
id=
"passwordEncoder"
class=
"org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder"
></bean>
<bean
id=
"passwordReciprocal"
class=
"org.maxkey.crypto.password.PasswordReciprocal"
></bean>
<!-- Captcha Producer Config -->
<bean
id=
"captchaProducer"
class=
"com.google.code.kaptcha.impl.DefaultKaptcha"
>
<property
name=
"config"
>
<bean
id=
"kaptchaConfig"
class=
"com.google.code.kaptcha.util.Config"
>
<constructor-arg
type=
"java.util.Properties"
>
<props>
<prop
key=
"kaptcha.image.width"
>
80
</prop>
<prop
key=
"kaptcha.image.height"
>
25
</prop>
<prop
key=
"kaptcha.border"
>
no
</prop>
<prop
key=
"kaptcha.obscurificator.impl"
>
com.google.code.kaptcha.impl.ShadowGimpy
</prop>
<prop
key=
"kaptcha.textproducer.font.size"
>
23
</prop>
<prop
key=
"kaptcha.textproducer.char.string"
>
0123456789
</prop>
<prop
key=
"kaptcha.textproducer.char.length"
>
4
</prop>
<prop
key=
"kaptcha.noise.impl"
>
com.google.code.kaptcha.impl.NoNoise
</prop>
<!-- <prop key="kaptcha.noise.color">white</prop> -->
</props>
</constructor-arg>
</bean>
</property>
</bean>
<bean
id=
"savedRequestSuccessHandler"
class=
"org.maxkey.authn.SavedRequestAwareAuthenticationSuccessHandler"
>
</bean>
<!-- LDAP Realm
<bean id="authenticationRealm" class="org.maxkey.web.authentication.realm.ldap.LdapAuthenticationRealm">
<constructor-arg ref="jdbcTemplate"/>
...
...
maxkey-web-manage/src/main/resources/spring/maxkey-mgt.xml
浏览文件 @
7c180f33
...
...
@@ -56,7 +56,7 @@
<constructor-arg
value=
"${config.maxkey.uri}"
/>
</bean>
<bean
id=
"oauth20JdbcClientDetailsService"
class=
"org.maxkey.authz.oauth2.provider.client.JdbcClientDetailsService"
>
<bean
id=
"oauth20JdbcClientDetailsService"
class=
"org.maxkey.authz.oauth2.provider.client.JdbcClientDetailsService"
>
<constructor-arg
ref=
"dataSource"
/>
<property
name=
"passwordEncoder"
ref=
"passwordReciprocal"
></property>
</bean>
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录