Skip to content
项目
群组
代码片段
帮助
正在加载...
帮助
为 GitLab 提交贡献
登录/注册
切换导航
H
h2database
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
分枝图
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
计划
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
分枝图
统计图
创建新议题
作业
提交
议题看板
打开侧边栏
Administrator
h2database
Commits
3dca6783
提交
3dca6783
authored
6 年前
作者:
Evgenij Ryazanov
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Allow transparent access to settings and tools of H2 Console
上级
950698bd
隐藏空白字符变更
内嵌
并排
正在显示
4 个修改的文件
包含
36 行增加
和
7 行删除
+36
-7
WebApp.java
h2/src/main/org/h2/server/web/WebApp.java
+4
-0
WebServer.java
h2/src/main/org/h2/server/web/WebServer.java
+21
-1
Console.java
h2/src/main/org/h2/tools/Console.java
+2
-2
Server.java
h2/src/main/org/h2/tools/Server.java
+9
-4
没有找到文件。
h2/src/main/org/h2/server/web/WebApp.java
浏览文件 @
3dca6783
...
...
@@ -281,6 +281,10 @@ public class WebApp {
if
(
b
!=
null
&&
b
)
{
return
true
;
}
String
key
=
server
.
getKey
();
if
(
key
!=
null
&&
key
.
equals
(
session
.
get
(
"key"
)))
{
return
true
;
}
session
.
put
(
"adminBack"
,
file
);
return
false
;
}
...
...
This diff is collapsed.
Click to expand it.
h2/src/main/org/h2/server/web/WebServer.java
浏览文件 @
3dca6783
...
...
@@ -169,6 +169,7 @@ public class WebServer implements Service {
private
Thread
listenerThread
;
private
boolean
ifExists
=
true
;
private
String
key
;
private
boolean
allowSecureCreation
;
private
boolean
trace
;
private
TranslateThread
translateThread
;
private
boolean
allowChunked
=
true
;
...
...
@@ -267,6 +268,15 @@ public class WebServer implements Service {
return
startDateTime
;
}
/**
* Returns the key for privileged connections.
*
* @return key key, or null
*/
String
getKey
()
{
return
key
;
}
/**
* Sets the key for privileged connections.
*
...
...
@@ -278,6 +288,16 @@ public class WebServer implements Service {
}
}
/**
* @param allowSecureCreation
* whether creation of databases using the key should be allowed
*/
public
void
setAllowSecureCreation
(
boolean
allowSecureCreation
)
{
if
(!
allowOthers
)
{
this
.
allowSecureCreation
=
allowSecureCreation
;
}
}
@Override
public
void
init
(
String
...
args
)
{
// set the serverPropertiesDir, because it's used in loadProperties()
...
...
@@ -750,7 +770,7 @@ public class WebServer implements Service {
// encrypted H2 database with empty user password doesn't work
p
.
setProperty
(
"password"
,
password
);
if
(
databaseUrl
.
startsWith
(
"jdbc:h2:"
))
{
if
(
key
==
null
||
!
key
.
equals
(
userKey
))
{
if
(
!
allowSecureCreation
||
key
==
null
||
!
key
.
equals
(
userKey
))
{
if
(
ifExists
)
{
databaseUrl
+=
";IFEXISTS=TRUE"
;
}
...
...
This diff is collapsed.
Click to expand it.
h2/src/main/org/h2/tools/Console.java
浏览文件 @
3dca6783
...
...
@@ -201,9 +201,9 @@ public class Console extends Tool implements ShutdownHandler {
if
(
webStart
)
{
try
{
String
webKey
=
ifExists
||
webAllowOthers
?
null
String
webKey
=
webAllowOthers
?
null
:
StringUtils
.
convertBytesToHex
(
MathUtils
.
secureRandomBytes
(
32
));
web
=
Server
.
createWebServer
(
args
,
webKey
);
web
=
Server
.
createWebServer
(
args
,
webKey
,
!
ifExists
);
web
.
setShutdownHandler
(
this
);
web
.
start
();
if
(
printStatus
)
{
...
...
This diff is collapsed.
Click to expand it.
h2/src/main/org/h2/tools/Server.java
浏览文件 @
3dca6783
...
...
@@ -426,19 +426,24 @@ public class Server extends Tool implements Runnable, ShutdownHandler {
* @return the server
*/
public
static
Server
createWebServer
(
String
...
args
)
throws
SQLException
{
return
createWebServer
(
args
,
null
);
return
createWebServer
(
args
,
null
,
false
);
}
/**
* Create a new web server, but does not start it yet.
*
* @param args the argument list
* @param key key, or null
* @param args
* the argument list
* @param key
* key, or null
* @param allowSecureCreation
* whether creation of databases using the key should be allowed
* @return the server
*/
static
Server
createWebServer
(
String
[]
args
,
String
key
)
throws
SQLException
{
static
Server
createWebServer
(
String
[]
args
,
String
key
,
boolean
allowSecureCreation
)
throws
SQLException
{
WebServer
service
=
new
WebServer
();
service
.
setKey
(
key
);
service
.
setAllowSecureCreation
(
allowSecureCreation
);
Server
server
=
new
Server
(
service
,
args
);
service
.
setShutdownHandler
(
server
);
return
server
;
...
...
This diff is collapsed.
Click to expand it.
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论