This commit is contained in:
shimingxy
2019-07-21 23:49:27 +08:00
30 changed files with 0 additions and 1795 deletions

View File

@@ -1,2 +0,0 @@
Manifest-Version: 1.0

View File

@@ -1,97 +0,0 @@
############################################################################
# MaxKey Management
############################################################################
# Application Configuration
############################################################################
# DataBase configuration
# JDBC Driver
# for MySql com.mysql.jdbc.Driver
# for oracle oracle.jdbc.driver.OracleDriver
# for DB2 com.ibm.db2.jdbc.app.DB2Driver
# for SqlServer com.microsoft.jdbc.sqlserver.SQLServerDriver
# for SyBase com.sybase.jdbc.SybDriver
# for PostgreSQL org.postgresql.Driver
# for Derby org.apache.derby.jdbc.ClientDriver
config.datasource.driverclass=com.mysql.jdbc.Driver
# JDBC URL
# you need database hostname,port,databasename
# for MySql jdbc:mysql://hostname:port/secdb
# for oracle jdbc:oracle:thin:@hostname:port:secdb
# for DB2 jdbc:db2://hostname:port/secdb
# for SqlServer jdbc:microsoft:sqlserver://hostname:port;DatabaseName=secdb
# for SyBase jdbc:sybase:Tds:hostname:port/secdb
# for Derby jdbc:derby://localhost:1527/secdb
#
config.datasource.url=jdbc:mysql://localhost/maxkey?autoReconnect=true&characterEncoding=UTF-8
config.datasource.username=root
#connsec/bb2002b9f55b05d3e0e6f34ec5321051
#root/4f8520865b3793b07b23e16bc1f117b8
config.datasource.password=bb2002b9f55b05d3e0e6f34ec5321051
#db2,derby,mysql,oracle,postgresql,sqlserver at com.connsec.db.mybatis.dialect.Dialect
config.datasource.database=mysql
# End DataBase configuration
############################################################################
# CharacterEncoding
#CharacterEncoding true/false
config.characterencoding.encoding=true
config.characterencoding.fromcharset=iso8859-1
config.characterencoding.tocharset=UTF-8
# End CharacterEncoding
############################################################################
############################################################################
# Login
config.login.captcha=false
config.login.socialAuth=true
config.login.msad.kerberos=false
# End Login
############################################################################
############################################################################
# domain name configuration
config.domain.name=sso.maxkey.org
config.server.name=http://${config.domain.name}
config.server.prefix=${config.server.name}/manage
############################################################################
# EMAIL configuration
config.email.username=test@connsec.com
config.email.password=3&8Ujbnm5hkjhFD
config.email.smtpHost=smtp.exmail.qq.com
config.email.port=25
config.email.senderMail=test@connsec.com
config.email.ssl=false
############################################################################
# SAML V2.0 configuration
# saml common
config.saml.v20.max.parser.pool.size=2
config.saml.v20.assertion.validity.time.ins.seconds=90
config.saml.v20.replay.cache.life.in.millis=14400000
config.saml.v20.issue.instant.check.clock.skew.in.seconds=90
config.saml.v20.issue.instant.check.validity.time.in.seconds=300
#saml idp keystore
config.saml.v20.idp.keystore.password=connsec
config.saml.v20.idp.keystore.private.key.password=connsec
config.saml.v20.idp.keystore=classpath\:config/connsecKeystore.jks
config.saml.v20.idp.issuing.entity.id=connsec.com
config.saml.v20.idp.issuer=http://connsec.com
config.saml.v20.idp.receiver.endpoint=http://sso.maxkey.org/
#saml sp keystore
config.saml.v20.sp.keystore.password=connsec
config.saml.v20.sp.keystore.private.key.password=connsec
config.saml.v20.sp.keystore=classpath\:config/clientKeystore.jks
config.saml.v20.sp.issuing.entity.id=client.connsec.com
############################################################################
config.oidc.metadata.issuer=http://sso.maxkey.org
config.oidc.metadata.authorizationEndpoint=http://sso.maxkey.org/maxkey/oauth/v20/authorize
config.oidc.metadata.tokenEndpoint=http://sso.maxkey.org/maxkey/oauth/v20/token
config.oidc.metadata.userinfoEndpoint=http://sso.maxkey.org/maxkey/api/connect/userinfo
#############################################################################

View File

@@ -1,98 +0,0 @@
############################################################################
# MaxKey
############################################################################
# domain name configuration
config.domain.name=sso.maxkey.org
config.server.name=http://${config.domain.name}
config.server.maxkey.uri=${config.server.name}/maxkey-mgt
############################################################################
# Login configuration
#enable captcha
config.login.captcha=true
#enable two factor,use one time password
config.login.onetimepwd=true
#enable social sign on
config.login.socialsignon=true
#Enable kerberos/SPNEGO
config.login.kerberos=true
#wsFederation
config.login.wsfederation=false
#remeberme
config.login.remeberme=true
#validity
config.login.remeberme.validity=
#default.uri
#to appList page
config.login.default.uri=appList
#to default application web site
#config.login.default.uri=http://www.connsec.com
config.manage.uri=http://login.connsec.com:9500/manage/login
config.ipaddress.whitelist=false
############################################################################
# Kerberos Login configuration
############################################################################
#short name of user domain must be in upper case,eg:CONNSEC
config.support.kerberos.default.userdomain=CONNSEC
#short name of user domain must be in upper case,eg:CONNSEC.COM
config.support.kerberos.default.fulluserdomain=CONNSEC.COM
#last 8Bit crypto for Kerberos web Authentication
config.support.kerberos.default.crypto=846KZSzYq56M6d5o
#Kerberos Authentication server RUL
config.support.kerberos.default.redirecturi=http://sso.maxkey.org/kerberos/authn/
############################################################################
# CAS Login configuration
############################################################################
config.support.cas.login.url=http://sso.maxkey.org/cas/login
#
config.support.cas.login.service=http://sso.maxkey.org/maxkey/cas
#
config.support.cas.login.validation.url=http://sso.maxkey.org/cas
############################################################################
# HTTPHEADER Login configuration
############################################################################
config.support.httpheader.enable=false
config.support.httpheader.headername=header-user
# iv-user is for IBM Security Access Manager
#config.httpheader.headername=iv-user
############################################################################
# BASIC Login support configuration
############################################################################
config.support.basic.enable=false
#############################################################################
# WsFederation Login support configuration
#identifier: the identifer for the ADFS server
#url: the login url for ADFS
#principal: the name of the attribute/assertion returned by ADFS that contains the principal's username.
#relyingParty: the identifier of the CAS Server as it has been configured in ADFS.
#tolerance: (optional) the amount of drift to allow when validating the timestamp on the token. Default: 10000 (ms)
#attributeMutator: (optional) a class (defined by you) that can modify the attributes/assertions returned by the ADFS server
#signingCertificate: ADFS's signing certificate used to validate the token/assertions issued by ADFS.
############################################################################
config.support.wsfederation.identifier=http://adfs.connsec.com/adfs/services/trust
config.support.wsfederation.url=https://adfs.connsec.com/adfs/ls/
config.support.wsfederation.principal=upn
config.support.wsfederation.relyingParty=urn:federation:connsec
config.support.wsfederation.signingCertificate=adfs-signing.crt
config.support.wsfederation.tolerance=10000
config.support.wsfederation.upn.suffix=connsec.com
config.support.wsfederation.logoutUrl=https://adfs.connsec.com/adfs/ls/?wa=wsignout1.0
#############################################################################
#############################################################################
config.oidc.metadata.issuer=${config.server.maxkey.uri}
config.oidc.metadata.authorizationEndpoint=${config.server.maxkey.uri}/oauth/v20/authorize
config.oidc.metadata.tokenEndpoint=${config.server.maxkey.uri}/oauth/v20/token
config.oidc.metadata.userinfoEndpoint=${config.server.maxkey.uri}/api/connect/userinfo
#############################################################################

View File

@@ -1,13 +0,0 @@
{
"keys": [
{
"kty": "RSA",
"d": "K2VCm_6enq5uoFLZXUlWkgbCXj5m9X5uUX3_Ol3qcY9X1cP04TN98R8lpw-ASeFDRFRhe0FT-lYCYu_fqZcrNXVhyN3rgi27af5x4HdFMnHLTLMPvE6aEyTGmZjTF1AbiX5VOJAl6POI9FiyTbV1Uqt943ydJv8SH4NfcYhKBmpp8Fi1f58mon-bYwsIy8mzZjssc8KZy-GzpscKrc5ewb7106JY3uRQNprAHrpcGAPZ8uXUvVhrxp_FNn5Nf5KVxl2tm50L83_5nw0OZrbJ8Ceg7sZAw_Z41lbYbS9VDaST6TuKRb7W4XCKimZUn57LoQT2-Gkv6msJHCmqTgK02Q",
"e": "AQAB",
"use": "sig",
"kid": "maxkey_rsa",
"alg": "RS256",
"n": "vyfZwQuBLNvJDhmziUCFuAfIv-bC6ivodcR6PfanTt8XLd6G63Yx10YChAdsDACjoLz1tEU56WPp_ee_vcTSsEZT3ouWJYghuGI2j4XclXlEj0S7DzdpcBBpI4n5dr8K3iKY-3JUMZR1AMBHI50UaMST9ZTZJAjUPIYxkhRdca5lWBo4wGUh1yj_80-Bq6al0ia9S5NTzNLaJ18jSxFqZ79BAkBm-KjkP248YUk6WBGtYEAV5Fws4dpse4hrqJ3RRHiMZV1o1iTmPHz_l55ZSDP3vpYf6iKqKzoK2RmdjfH5mGpbc4-PclTs4GKfwZ7cWfrny6B7sMnQfzujCH996Q"
}
]
}

View File

@@ -1,39 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<configuration status="INFO">
<appenders>
<Console name="consolePrint" target="SYSTEM_OUT">
<PatternLayout pattern="%d{YYYY-MM-dd HH:mm:ss,SSS} [%t] %-5level %logger{36} - %msg%n" />
</Console>
<!--
<File name="File" fileName="logs/PipeLineRunner.log">
<PatternLayout pattern="%d{YYYY-MM-dd HH:mm:ss,SSS} [%t] %-5level %logger{36} - %msg%n" />
</File>
-->
<!-- 输出到文件按天或者超过80MB分割 -->
<RollingFile name="RollingFile" fileName="${catalina.home}/logs/maxkey.log" filePattern="${catalina.home}/logs/$${date:yyyy-MM}/maxkey-%d{yyyy-MM-dd}-%i.log.gz">
<!-- 需要记录的级别 -->
<!-- <ThresholdFilter level="info" onMatch="ACCEPT" onMismatch="DENY" /> -->
<PatternLayout pattern="%d{yyyy-MM-dd HH:mm:ss,SSS}:%4p %t (%F:%L) - %m%n" />
<Policies>
<OnStartupTriggeringPolicy />
<TimeBasedTriggeringPolicy />
<SizeBasedTriggeringPolicy size="512 MB" />
<!-- <SizeBasedTriggeringPolicy size="80 MB" /> -->
</Policies>
</RollingFile>
</appenders>
<loggers>
<Logger name="org.springframework" level="INFO"></Logger>
<Logger name="org.apache.logging" level="INFO"></Logger>
<Logger name="org.maxkey" level="DEBUG"></Logger>
<root level="INFO">
<appender-ref ref="consolePrint" />
<appender-ref ref="RollingFile" />
</root>
</loggers>
</configuration>

View File

@@ -1,238 +0,0 @@
global.application=MaxKey\u5E94\u7528\u5B89\u5168\u7CFB\u7EDF
global.change.language=\u8BED\u97F3\u9009\u62E9
global.change.language.en=\u82F1\u6587
global.change.language.zh=\u4E2D\u6587
global.text.welcome=\u6B22\u8FCE\u60A8
global.text.manage=\u7BA1\u7406
global.text.copyright=\u7248\u6743\u6240\u6709
global.text.copyright.content=Copyright 2018-2019 shimingxy@163.com Licensed under the Apache License, Version 2.0
global.text.logout=\u9000\u51FA
global.logout.tip=\u6CE8\u9500\u6210\u529F
global.logout.text.suffix=\u91CD\u65B0\u767B\u5F55
global.logout.text.prefix=\u60A8\u5DF2\u7ECF\u6210\u529F\u9000\u51FA\u767B\u5F55\uFF0C\u8BF7\u5173\u95ED\u6D4F\u89C8\u5668\u6216\u8005
login.session.timeout.tip=\u767B\u5F55\u4F1A\u8BDD\u8D85\u65F6
login.session.timeout.prefix=\u60A8\u7684\u767B\u5F55\u4F1A\u8BDD\u5DF2\u7ECF\u8D85\u65F6\uFF0C\u8BF7
login.session.timeout.suffix=\u91CD\u65B0\u767B\u5F55
login.text.login.header=\u8D26\u53F7\u767B\u5F55
common.window.title=\u7A97\u53E3
common.alert.title=\u63D0\u793A\u4FE1\u606F
common.alert.closeText=\u5173\u95ED
common.conform.title=\u786E\u8BA4\u63D0\u793A
common.conform.yes=\u786E\u5B9A
common.conform.no=\u5173\u95ED
common.select.hintText=\u8BF7\u9009\u62E9\u60A8\u8981\u64CD\u4F5C\u7684\u6570\u636E
common.delete.hintText=\u60A8\u786E\u5B9A\u8981\u5220\u9664\u5417?
common.grid.loadtext=\u6B63\u5728\u52A0\u8F7D...
common.grid.loadnodata=\u6CA1\u6709\u67E5\u8BE2\u5230\u7B26\u5408\u6570\u636E
common.submit.hintText=\u60A8\u786E\u5B9A\u8981\u8FDB\u884C\u6B64\u9879\u64CD\u4F5C\u5417?
common.submit.errorText=\u6267\u884C\u64CD\u4F5C\u5931\u8D25
common.text.startdate=\u5F00\u59CB\u65F6\u95F4
common.text.enddate=\u7ED3\u675F\u65F6\u95F4
common.text.createdby=\u521B\u5EFA\u4EBA
common.text.createddate=\u521B\u5EFA\u65F6\u95F4
common.text.modifiedby=\u4FEE\u6539\u4EBA
common.text.modifieddate=\u4FEE\u6539\u65F6\u95F4
common.text.status=\u72B6\u6001
common.text.status.0=\u5F00\u59CB
common.text.status.1=\u6B63\u5E38
common.text.status.2=\u505C\u6B62
common.text.status.3=\u542F\u7528
common.text.status.4=\u7981\u7528
common.text.status.5=\u9501\u5B9A
common.text.status.6=\u89E3\u9501
common.text.status.7=\u65E0\u6548
common.text.status.8=\u8FC7\u671F
common.text.status.9=\u5220\u9664
common.text.status.10=\u6709\u6548
common.text.status.11=\u6D3B\u52A8
common.text.status.12=\u4E0D\u6D3B\u52A8
common.text.status.13=\u6279\u51C6
login.text.login.twofactor.obtain.valid=\u91CD\u65B0\u83B7\u53D6
login.text.login.twofactor.obtain=\u83B7\u53D6\u52A8\u6001\u9A8C\u8BC1\u7801
login.text.login.twofactor.obtain.valid.unit=\u79D2
login.text.login.twofactor.validTime=\u5269\u4F59\u65F6\u95F4
login.text.login.twofactor.validTime.unit=\u79D2
login.text.login.twofactor=\u5B89\u5168\u8BA4\u8BC1
login.text.login.normal=\u57FA\u672C\u8BA4\u8BC1
login.text.username=\u7528\u6237\u540D
login.text.password=\u5BC6&nbsp;&nbsp;&nbsp;&nbsp;\u7801
login.text.captcha=\u9A8C\u8BC1\u7801
login.text.remeberme=\u8BB0\u4F4F\u767B\u5F55
login.text.forgotpassword=\u5FD8\u8BB0\u5BC6\u7801
login.button.login=\u767B\u5F55
login.text.currenttime=\u65F6&nbsp;&nbsp;&nbsp;&nbsp;\u95F4
login.text.otherlogins=\u5176\u4ED6\u767B\u5F55\u65B9\u5F0F
login.text.register=\u7528\u6237\u6CE8\u518C
login.password.expired=\u5BC6\u7801\u8FC7\u671F
login.password.expired.tip=\u5BC6\u7801\u8FC7\u671F\uFF0C\u8BF7\u4FEE\u6539\u5BC6\u7801
login.password.oldPassword=\u539F\u5BC6\u7801
login.password.newPassword=\u65B0\u5BC6\u7801
login.password.confirmPassword=\u786E\u8BA4\u65B0\u5BC6\u7801
login.password.initial.change.tip=\u9996\u6B21\u767B\u5F55\uFF0C\u8BF7\u4FEE\u6539\u521D\u59CB\u5316\u5BC6\u7801
login.password.changepassword=\u5BC6\u7801\u4FEE\u6539
login.password.applogin.changepassword=\u5E94\u7528\u767B\u5F55\u5BC6\u7801\u8BBE\u7F6E
login.social.link=\u7ED1\u5B9A
login.social.unlink=\u89E3\u9664
login.social.icon=\u56FE\u6807
login.social.provider=\u4F9B\u5E94\u5546
userinfo.displayName=\u7528\u6237\u540D
userinfo.username=\u767B\u5F55\u8D26\u53F7
userinfo.email=\u90AE\u7BB1\u5730\u5740
userinfo.mobile=\u624B\u673A\u53F7\u7801
userinfo.userType=\u7528\u6237\u7C7B\u578B
userinfo.picture=\u5934\u50CF
userinfo.familyName=\u59D3
userinfo.givenName=\u540D
userinfo.middleName=\u4E2D\u95F4\u540D
userinfo.nickName=\u6635\u79F0
userinfo.gender=\u6027\u522B
userinfo.gender.female=\u5973
userinfo.gender.male=\u7537
userinfo.married=\u5A5A\u59FB\u72B6\u6001
userinfo.married.unknown=\u672A\u77E5
userinfo.married.single=\u5355\u8EAB
userinfo.married.married=\u5DF2\u5A5A
userinfo.married.divorce=\u79BB\u5F02
userinfo.married.widowed=\u4E27\u5076
userinfo.website=\u4e2a\u4eba\u4e3b\u9875
userinfo.idtype=\u8bc1\u4ef6\u7c7b\u578b
userinfo.idtype.unknown=\u672A\u77E5
userinfo.idtype.idcard=\u8EAB\u4EFD\u8BC1
userinfo.idtype.passport=\u62A4\u7167
userinfo.idtype.studentcard=\u5B66\u751F\u8BC1
userinfo.idtype.militarycard=\u519B\u4EBA\u8BC1
userinfo.idCardNo=\u8BC1\u4EF6\u53F7\u7801
userinfo.startWorkDate=\u5DE5\u4F5C\u5F00\u59CB\u65F6\u95F4
userinfo.preferredLanguage=\u8BED\u97F3\u504F\u597D
userinfo.timeZone=\u65F6\u533A
userinfo.locale=\u8BED\u8A00\u9009\u62E9
userinfo.employeeNumber=\u5458\u5DE5\u7F16\u53F7
userinfo.windowsAccount=AD\u57DF\u8D26\u53F7
userinfo.organization=\u6240\u5C5E\u673A\u6784
userinfo.division=\u5206\u652F\u673A\u6784
userinfo.department=\u90E8\u95E8
userinfo.costCenter=\u6210\u672C\u4E2D\u5FC3
userinfo.jobTitle=\u804C\u4F4D
userinfo.jobLevel=\u7EA7\u522B
userinfo.manager=\u4E0A\u7EA7\u7ECF\u7406
userinfo.assistant=\u52A9\u7406
userinfo.entryDate=\u5165\u804C\u65F6\u95F4
userinfo.quitDate=\u79BB\u804C\u65F6\u95F4
userinfo.workCountry=\u56FD\u5BB6
userinfo.workRegion=\u7701
userinfo.workLocality=\u57CE\u5E02
userinfo.workStreetAddress=\u5730\u5740
userinfo.workPostalCode=\u90AE\u7F16
userinfo.workFax=\u4F20\u771F
userinfo.workPhoneNumber=\u5DE5\u4F5C\u7535\u8BDD
userinfo.workEmail=\u5DE5\u4F5C\u90AE\u4EF6
userinfo.homeCountry=\u56FD\u5BB6
userinfo.homeRegion=\u7701
userinfo.homeLocality=\u57CE\u5E02
userinfo.homeStreetAddress=\u5BB6\u5EAD\u5730\u5740
userinfo.homePostalCode=\u5BB6\u5EAD\u90AE\u7F16
userinfo.homeFax=\u5BB6\u5EAD\u4F20\u771F
userinfo.homePhoneNumber=\u5BB6\u5EAD\u7535\u8BDD
userinfo.homeEmail=\u5BB6\u5EAD\u90AE\u7BB1
userinfo.authnType=\u767B\u5F55\u65B9\u5F0F
userinfo.authnType.authnType.1=\u666E\u901A\u767B\u5F55
userinfo.authnType.authnType.2=\u624B\u673A\u4EE4\u724C
userinfo.authnType.authnType.3=\u77ED\u4FE1\u9A8C\u8BC1
userinfo.authnType.authnType.4=\u90AE\u4EF6\u9A8C\u8BC1
userinfo.authnType.authnType.5=\u65F6\u95F4\u4EE4\u724C
userinfo.authnType.authnType.6=\u8BA1\u6570\u5668\u4EE4\u724C
userinfo.authnType.authnType.7=HOTP\u4EE4\u724C
userinfo.authnType.authnType.8=RSA\u4EE4\u724C
userinfo.authnType.authnType.9=\u6570\u5B57\u8BC1\u4E66
userinfo.authnType.authnType.10=USB Key
login.totp.sharedSecret=\u5171\u4EAB\u5BC6\u7801
login.totp.period=\u5468\u671F
login.totp.digits=\u6570\u5B57
login.totp.crypto=\u52A0\u5BC6\u65B9\u5F0F
login.totp.generate=\u91CD\u65B0\u751F\u6210
login.totp.title=TimeBased One Time Password
login.hotp.sharedSecret=\u5171\u4EAB\u5BC6\u7801
login.hotp.period=\u5468\u671F
login.hotp.digits=\u6570\u5B57
login.hotp.crypto=\u52A0\u5BC6\u65B9\u5F0F
login.hotp.generate=\u91CD\u65B0\u751F\u6210
login.hotp.title=HOTP One Time Password
login.counter.sharedSecret=\u5171\u4EAB\u5BC6\u7801
login.counter.period=\u5468\u671F
login.counter.digits=\u6570\u5B57
login.counter.crypto=\u52A0\u5BC6\u65B9\u5F0F
login.counter.generate=\u91CD\u65B0\u751F\u6210
login.counter.title=Counter Based One Time Password
apps.icon=\u56FE\u6807
apps.name=\u5E94\u7528\u540D\u79F0
apps.protocol=\u8BBF\u95EE\u534F\u8BAE
apps.category=\u7C7B\u578B
button.text.action=\u8BBF\u95EE
button.text.visit=\u8BBF\u95EE
button.text.save=\u4FDD\u5B58
button.text.select=\u8BF7\u9009\u62E9
button.text.search=\u67E5\u8BE2
button.text.expandsearch=\u5C55\u5F00
button.text.collapsesearch=\u6536\u7F29
button.text.changepassword=\u4FEE\u6539\u5BC6\u7801
button.text.add=\u65B0\u589E
button.text.edit=\u4FEE\u6539
button.text.delete=\u5220\u9664
log.loginhistory.id=\u7F16\u53F7
log.loginhistory.sessionId=\u4F1A\u8BDD
log.loginhistory.username=\u767B\u5F55\u540D
log.loginhistory.displayName=\u7528\u6237\u540D\u79F0
log.loginhistory.provider=\u63D0\u4F9B\u5546
log.loginhistory.message=\u72B6\u6001
log.loginhistory.loginType=\u767B\u5F55\u65B9\u5F0F
log.loginhistory.sourceIp=\u8BBF\u95EE\u5730\u5740
log.loginhistory.browser=\u6D4F\u89C8\u5668
log.loginhistory.loginTime=\u767B\u5F55\u65F6\u95F4
log.loginhistory.logoutTime=\u9000\u51FA\u65F6\u95F4
log.loginhistory.platform=\u5E73\u53F0
log.loginhistory.application=\u5E94\u7528
log.loginhistory.loginUrl=\u767B\u5F55\u5730\u5740
log.loginhistory.code=\u4EE3\u7801
log.loginhistory.rpUserInfo=\u7B2C\u4E09\u65B9
log.loginappshistory.id=\u7F16\u53F7
log.loginappshistory.sessionId=\u4F1A\u8BDD
log.loginappshistory.uid=\u7528\u6237\u7F16\u53F7
log.loginappshistory.username=\u767B\u5F55\u540D
log.loginappshistory.displayName=\u7528\u6237\u540D
log.loginappshistory.appId=\u5E94\u7528\u7F16\u53F7
log.loginappshistory.appName=\u5E94\u7528\u540D\u79F0
log.loginappshistory.loginTime=\u767B\u5F55\u65F6\u95F4
log.operate.servicename=\u670D\u52A1
log.operate.message=\u6D88\u606F
log.operate.content=\u5185\u5BB9
log.operate.messageType=\u6D88\u606F\u7C7B\u578B
log.operate.operateType=\u64CD\u4F5C\u7C7B\u578B
log.operate.username=\u64CD\u4F5C\u4EBA
passwordpolicy.minlength=\u6700\u5C0F\u957F\u5EA6
passwordpolicy.maxlength=\u6700\u5927\u957F\u5EA6
passwordpolicy.lowercase=\u5C0F\u5199
passwordpolicy.uppercase=\u5927\u5199
passwordpolicy.digits=\u6570\u5B57
passwordpolicy.specialchar=\u7279\u6B8A\u5B57\u7B26
passwordpolicy.attempts=\u767B\u5F55\u9519\u8BEF\u6B21\u6570
passwordpolicy.duration=\u9501\u5B9A\u65F6\u95F4
passwordpolicy.expiration=\u8FC7\u671F\u5929\u6570
passwordpolicy.username=\u5305\u542B\u7528\u6237\u540D
passwordpolicy.simplepasswords=\u7B80\u5355\u5BC6\u7801\u5217\u8868

View File

@@ -1,2 +0,0 @@
Manifest-Version: 1.0

View File

@@ -1,71 +0,0 @@
############################################################################
# MaxKey
############################################################################
# DataBase configuration
############################################################################
#db2,derby,mysql,oracle,postgresql,sqlserver at com.connsec.db.mybatis.dialect.Dialect
config.datasource.database=mysql
# JDBC Driver
# for MySql com.mysql.jdbc.Driver
# for oracle oracle.jdbc.driver.OracleDriver
# for DB2 com.ibm.db2.jdbc.app.DB2Driver
# for SqlServer com.microsoft.jdbc.sqlserver.SQLServerDriver
# for SyBase com.sybase.jdbc.SybDriver
# for PostgreSQL org.postgresql.Driver
# for Derby org.apache.derby.jdbc.ClientDriver
config.datasource.driverclass=com.mysql.jdbc.Driver
# JDBC URL
# you need database hostname,port,databasename
# for MySql jdbc:mysql://hostname:port/secdb
# for oracle jdbc:oracle:thin:@hostname:port:secdb
# for DB2 jdbc:db2://hostname:port/secdb
# for SqlServer jdbc:microsoft:sqlserver://hostname:port;DatabaseName=secdb
# for SyBase jdbc:sybase:Tds:hostname:port/secdb
# for Derby jdbc:derby://localhost:1527/secdb
#
config.datasource.url=jdbc:mysql://localhost/maxkey?autoReconnect=true&characterEncoding=UTF-8
config.datasource.username=root
#connsec/bb2002b9f55b05d3e0e6f34ec5321051
#root/4f8520865b3793b07b23e16bc1f117b8
config.datasource.password=bb2002b9f55b05d3e0e6f34ec5321051
############################################################################
# EMAIL configuration
############################################################################
config.email.username=test@connsec.com
config.email.password=3&8Ujbnm5hkjhFD
config.email.smtpHost=smtp.exmail.qq.com
config.email.port=25
config.email.senderMail=test@connsec.com
config.email.ssl=false
############################################################################
# CharacterEncoding configuration
############################################################################
# CharacterEncoding true/false
config.characterencoding.encoding=true
config.characterencoding.fromcharset=iso8859-1
config.characterencoding.tocharset=UTF-8
config.app.issuer=CN=ConSec,CN=COM,CN=SH
############################################################################
#
config.redis.pool.maxtotal=1000
#
config.redis.pool.maxidle=200
#
config.redis.pool.maxwaitmillis=1000
#
config.redis.pool.testonborrow=true
#IP
config.redis.hostname=127.0.0.1
#port
config.redis.port=6379
#password
config.redis.password=password
config.redis.timeout=10000

View File

@@ -1,98 +0,0 @@
############################################################################
# MaxKey
############################################################################
# domain name configuration
config.domain.name=sso.maxkey.org
config.server.name=http://${config.domain.name}
config.server.maxkey.uri=${config.server.name}/maxkey
############################################################################
# Login configuration
#enable captcha
config.login.captcha=true
#enable two factor,use one time password
config.login.onetimepwd=true
#enable social sign on
config.login.socialsignon=true
#Enable kerberos/SPNEGO
config.login.kerberos=true
#wsFederation
config.login.wsfederation=false
#remeberme
config.login.remeberme=true
#validity
config.login.remeberme.validity=
#default.uri
#to appList page
config.login.default.uri=appList
#to default application web site
#config.login.default.uri=http://www.connsec.com
config.manage.uri=http://login.connsec.com:9500/manage/login
config.ipaddress.whitelist=false
############################################################################
# Kerberos Login configuration
############################################################################
#short name of user domain must be in upper case,eg:CONNSEC
config.support.kerberos.default.userdomain=CONNSEC
#short name of user domain must be in upper case,eg:CONNSEC.COM
config.support.kerberos.default.fulluserdomain=CONNSEC.COM
#last 8Bit crypto for Kerberos web Authentication
config.support.kerberos.default.crypto=846KZSzYq56M6d5o
#Kerberos Authentication server RUL
config.support.kerberos.default.redirecturi=http://sso.maxkey.org/kerberos/authn/
############################################################################
# CAS Login configuration
############################################################################
config.support.cas.login.url=http://sso.maxkey.org/cas/login
#
config.support.cas.login.service=http://sso.maxkey.org/maxkey/cas
#
config.support.cas.login.validation.url=http://sso.maxkey.org/cas
############################################################################
# HTTPHEADER Login configuration
############################################################################
config.support.httpheader.enable=false
config.support.httpheader.headername=header-user
# iv-user is for IBM Security Access Manager
#config.httpheader.headername=iv-user
############################################################################
# BASIC Login support configuration
############################################################################
config.support.basic.enable=false
#############################################################################
# WsFederation Login support configuration
#identifier: the identifer for the ADFS server
#url: the login url for ADFS
#principal: the name of the attribute/assertion returned by ADFS that contains the principal's username.
#relyingParty: the identifier of the CAS Server as it has been configured in ADFS.
#tolerance: (optional) the amount of drift to allow when validating the timestamp on the token. Default: 10000 (ms)
#attributeMutator: (optional) a class (defined by you) that can modify the attributes/assertions returned by the ADFS server
#signingCertificate: ADFS's signing certificate used to validate the token/assertions issued by ADFS.
############################################################################
config.support.wsfederation.identifier=http://adfs.connsec.com/adfs/services/trust
config.support.wsfederation.url=https://adfs.connsec.com/adfs/ls/
config.support.wsfederation.principal=upn
config.support.wsfederation.relyingParty=urn:federation:connsec
config.support.wsfederation.signingCertificate=adfs-signing.crt
config.support.wsfederation.tolerance=10000
config.support.wsfederation.upn.suffix=connsec.com
config.support.wsfederation.logoutUrl=https://adfs.connsec.com/adfs/ls/?wa=wsignout1.0
#############################################################################
#############################################################################
config.oidc.metadata.issuer=${config.server.maxkey.uri}
config.oidc.metadata.authorizationEndpoint=${config.server.maxkey.uri}/oauth/v20/authorize
config.oidc.metadata.tokenEndpoint=${config.server.maxkey.uri}/oauth/v20/token
config.oidc.metadata.userinfoEndpoint=${config.server.maxkey.uri}/api/connect/userinfo
#############################################################################

View File

@@ -1,38 +0,0 @@
############################################################################
# MaxKey
############################################################################
# SAML V2.0 configuration
#saml common
config.saml.v20.max.parser.pool.size=2
config.saml.v20.assertion.validity.time.ins.seconds=90
config.saml.v20.replay.cache.life.in.millis=14400000
config.saml.v20.issue.instant.check.clock.skew.in.seconds=90
config.saml.v20.issue.instant.check.validity.time.in.seconds=300
#saml idp keystore
config.saml.v20.idp.keystore.password=connsec
config.saml.v20.idp.keystore.private.key.password=connsec
config.saml.v20.idp.keystore=classpath\:config/connsecKeystore.jks
#keystore id for sec
config.saml.v20.idp.issuing.entity.id=connsec.com
config.saml.v20.idp.issuer=https://login.connsec.com/maxkey/saml
config.saml.v20.idp.receiver.endpoint=https\://login.connsec.com/
#saml sp keystore
config.saml.v20.sp.keystore.password=connsec
config.saml.v20.sp.keystore.private.key.password=connsec
config.saml.v20.sp.keystore=classpath\:config/clientKeystore.jks
config.saml.v20.sp.issuing.entity.id=client.connsec.com
#Saml v20 Metadata
config.saml.v20.metadata.orgName=maxkey
config.saml.v20.metadata.orgDisplayName=maxkey
config.saml.v20.metadata.orgURL=http://www.maxkey.org
config.saml.v20.metadata.contactType=technical
config.saml.v20.metadata.company=maxkey
config.saml.v20.metadata.givenName=maxkey
config.saml.v20.metadata.surName=maxkey
config.saml.v20.metadata.emailAddress=admin@maxkey.com
config.saml.v20.metadata.telephoneNumber=4008981111

View File

@@ -1,83 +0,0 @@
############################################################################
# MaxKey
############################################################################
# Social Sign On Configuration #
#you config client.id & client.secret only
############################################################################
############################################################################
#sina weibo
config.socialsignon.sinaweibo.provider=sinaweibo
config.socialsignon.sinaweibo.provider.name=\u65B0\u6D6A\u5FAE\u535A
config.socialsignon.sinaweibo.icon=images/social/sinaweibo.png
config.socialsignon.sinaweibo.client.id=3379757634
config.socialsignon.sinaweibo.client.secret=1adfdf9800299037bcab9d1c238664ba
config.socialsignon.sinaweibo.authorize.url=https://api.weibo.com/oauth2/authorize?client_id=%s&redirect_uri=%s&response_type=code
config.socialsignon.sinaweibo.accesstoken.url=https://api.weibo.com/oauth2/access_token
config.socialsignon.sinaweibo.accesstoken.method=POST
config.socialsignon.sinaweibo.scope=all
config.socialsignon.sinaweibo.verifier.code=code
config.socialsignon.sinaweibo.account.url=https://api.weibo.com/2/users/show.json
config.socialsignon.sinaweibo.account.id=id
config.socialsignon.sinaweibo.sortorder=1
#Google
config.socialsignon.google.provider=google
config.socialsignon.google.provider.name=Google
config.socialsignon.google.icon=images/social/google.png
config.socialsignon.google.client.id=519914515488.apps.googleusercontent.com
config.socialsignon.google.client.secret=3aTW3Iw7e11QqMnHxciCaXTt
config.socialsignon.google.authorize.url=https://accounts.google.com/o/oauth2/auth?client_id=%s&redirect_uri=%s&response_type=code
config.socialsignon.google.accesstoken.url=https://accounts.google.com/o/oauth2/token?access_type=offline
config.socialsignon.google.accesstoken.method=POST
config.socialsignon.google.scope=openid email profile
#config.socialsignon.google.scope=https://www.googleapis.com/auth/userinfo.email
config.socialsignon.google.verifier.code=code
config.socialsignon.google.account.url=https://www.googleapis.com/plus/v1/people/me
config.socialsignon.google.account.id=id
config.socialsignon.google.sortorder=2
#QQ
config.socialsignon.qq.provider=qq
config.socialsignon.qq.provider.name=QQ
config.socialsignon.qq.icon=images/social/qq.png
config.socialsignon.qq.client.id=101224990
config.socialsignon.qq.client.secret=09d7481b68d888f01831e3ef7c1c3015
config.socialsignon.qq.authorize.url=https://graph.qq.com/oauth2.0/authorize?client_id=%s&redirect_uri=%s&response_type=code
config.socialsignon.qq.accesstoken.url=https://graph.qq.com/oauth2.0/token
config.socialsignon.qq.accesstoken.method=POST
config.socialsignon.qq.scope=read
config.socialsignon.qq.verifier.code=code
config.socialsignon.qq.account.url=https://graph.qq.com/oauth2.0/me
config.socialsignon.qq.account.id=openid
config.socialsignon.qq.sortorder=4
#Windows Live
config.socialsignon.live.provider=live
config.socialsignon.live.provider.name=Windows Live
config.socialsignon.live.icon=images/social/live.png
config.socialsignon.live.client.id=00000000401129A4
config.socialsignon.live.client.secret=Kx-OAmHaoqG5vcitm3-TASOSZD1ebu64
config.socialsignon.live.authorize.url=https://login.live.com/oauth20_authorize.srf?client_id=%s&redirect_uri=%s&response_type=code
config.socialsignon.live.accesstoken.url=https://login.live.com/oauth20_token.srf
config.socialsignon.live.accesstoken.method=GET
config.socialsignon.live.scope=wl.basic
config.socialsignon.live.verifier.code=code
config.socialsignon.live.account.url=https://apis.live.net/v5.0/me
config.socialsignon.live.account.id=id
config.socialsignon.live.sortorder=5
#facebook
config.socialsignon.facebook.provider=facebook
config.socialsignon.facebook.provider.name=facebook
config.socialsignon.facebook.icon=images/social/facebook.png
config.socialsignon.facebook.client.id=appKey
config.socialsignon.facebook.client.secret=appSecret
config.socialsignon.facebook.authorize.url=https://www.facebook.com/dialog/oauth?client_id=%s&redirect_uri=%s&response_type=code
config.socialsignon.facebook.accesstoken.url=https://graph.facebook.com/oauth/access_token
config.socialsignon.facebook.accesstoken.method=GET
config.socialsignon.facebook.scope=read
config.socialsignon.facebook.verifier.code=code
config.socialsignon.facebook.account.url=https://graph.facebook.com/me
config.socialsignon.facebook.account.id=id
config.socialsignon.facebook.sortorder=7

View File

@@ -1,13 +0,0 @@
{
"keys": [
{
"kty": "RSA",
"d": "K2VCm_6enq5uoFLZXUlWkgbCXj5m9X5uUX3_Ol3qcY9X1cP04TN98R8lpw-ASeFDRFRhe0FT-lYCYu_fqZcrNXVhyN3rgi27af5x4HdFMnHLTLMPvE6aEyTGmZjTF1AbiX5VOJAl6POI9FiyTbV1Uqt943ydJv8SH4NfcYhKBmpp8Fi1f58mon-bYwsIy8mzZjssc8KZy-GzpscKrc5ewb7106JY3uRQNprAHrpcGAPZ8uXUvVhrxp_FNn5Nf5KVxl2tm50L83_5nw0OZrbJ8Ceg7sZAw_Z41lbYbS9VDaST6TuKRb7W4XCKimZUn57LoQT2-Gkv6msJHCmqTgK02Q",
"e": "AQAB",
"use": "sig",
"kid": "maxkey_rsa",
"alg": "RS256",
"n": "vyfZwQuBLNvJDhmziUCFuAfIv-bC6ivodcR6PfanTt8XLd6G63Yx10YChAdsDACjoLz1tEU56WPp_ee_vcTSsEZT3ouWJYghuGI2j4XclXlEj0S7DzdpcBBpI4n5dr8K3iKY-3JUMZR1AMBHI50UaMST9ZTZJAjUPIYxkhRdca5lWBo4wGUh1yj_80-Bq6al0ia9S5NTzNLaJ18jSxFqZ79BAkBm-KjkP248YUk6WBGtYEAV5Fws4dpse4hrqJ3RRHiMZV1o1iTmPHz_l55ZSDP3vpYf6iKqKzoK2RmdjfH5mGpbc4-PclTs4GKfwZ7cWfrny6B7sMnQfzujCH996Q"
}
]
}

View File

@@ -1,39 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<configuration status="INFO">
<appenders>
<Console name="consolePrint" target="SYSTEM_OUT">
<PatternLayout pattern="%d{YYYY-MM-dd HH:mm:ss,SSS} [%t] %-5level %logger{36} - %msg%n" />
</Console>
<!--
<File name="File" fileName="logs/PipeLineRunner.log">
<PatternLayout pattern="%d{YYYY-MM-dd HH:mm:ss,SSS} [%t] %-5level %logger{36} - %msg%n" />
</File>
-->
<!-- 输出到文件按天或者超过80MB分割 -->
<RollingFile name="RollingFile" fileName="${catalina.home}/logs/maxkey.log" filePattern="${catalina.home}/logs/$${date:yyyy-MM}/maxkey-%d{yyyy-MM-dd}-%i.log.gz">
<!-- 需要记录的级别 -->
<!-- <ThresholdFilter level="info" onMatch="ACCEPT" onMismatch="DENY" /> -->
<PatternLayout pattern="%d{yyyy-MM-dd HH:mm:ss,SSS}:%4p %t (%F:%L) - %m%n" />
<Policies>
<OnStartupTriggeringPolicy />
<TimeBasedTriggeringPolicy />
<SizeBasedTriggeringPolicy size="512 MB" />
<!-- <SizeBasedTriggeringPolicy size="80 MB" /> -->
</Policies>
</RollingFile>
</appenders>
<loggers>
<Logger name="org.springframework" level="INFO"></Logger>
<Logger name="org.apache.logging" level="INFO"></Logger>
<Logger name="org.maxkey" level="DEBUG"></Logger>
<root level="INFO">
<appender-ref ref="consolePrint" />
<appender-ref ref="RollingFile" />
</root>
</loggers>
</configuration>

View File

@@ -1,205 +0,0 @@
global.application=MaxKey\u5E94\u7528\u5B89\u5168\u7CFB\u7EDF
global.change.language=\u8BED\u97F3\u9009\u62E9
global.change.language.en=\u82F1\u6587
global.change.language.zh=\u4E2D\u6587
global.text.welcome=\u6B22\u8FCE\u60A8
global.text.manage=\u7BA1\u7406
global.text.copyright=\u7248\u6743\u6240\u6709
global.text.copyright.content=Copyright 2018-2019 shimingxy@163.com Licensed under the Apache License, Version 2.0
global.text.logout=\u9000\u51FA
global.logout.tip=\u6CE8\u9500\u6210\u529F
global.logout.text.suffix=\u91CD\u65B0\u767B\u5F55
global.logout.text.prefix=\u60A8\u5DF2\u7ECF\u6210\u529F\u9000\u51FA\u767B\u5F55\uFF0C\u8BF7\u5173\u95ED\u6D4F\u89C8\u5668\u6216\u8005
login.session.timeout.tip=\u767B\u5F55\u4F1A\u8BDD\u8D85\u65F6
login.session.timeout.prefix=\u60A8\u7684\u767B\u5F55\u4F1A\u8BDD\u5DF2\u7ECF\u8D85\u65F6\uFF0C\u8BF7
login.session.timeout.suffix=\u91CD\u65B0\u767B\u5F55
common.window.title=\u7A97\u53E3
common.alert.title=\u63D0\u793A\u4FE1\u606F
common.alert.closeText=\u5173\u95ED
common.conform.title=\u786E\u8BA4\u63D0\u793A
common.conform.yes=\u786E\u5B9A
common.conform.no=\u5173\u95ED
common.select.hintText=\u8BF7\u9009\u62E9\u60A8\u8981\u64CD\u4F5C\u7684\u6570\u636E
common.delete.hintText=\u60A8\u786E\u5B9A\u8981\u5220\u9664\u5417?
common.grid.loadtext=\u6B63\u5728\u52A0\u8F7D...
common.grid.loadnodata=\u6CA1\u6709\u67E5\u8BE2\u5230\u7B26\u5408\u6570\u636E
common.submit.hintText=\u60A8\u786E\u5B9A\u8981\u8FDB\u884C\u6B64\u9879\u64CD\u4F5C\u5417?
common.submit.errorText=\u6267\u884C\u64CD\u4F5C\u5931\u8D25
common.text.startdate=\u5F00\u59CB\u65F6\u95F4
common.text.enddate=\u7ED3\u675F\u65F6\u95F4
common.text.createdby=\u521B\u5EFA\u4EBA
common.text.createddate=\u521B\u5EFA\u65F6\u95F4
common.text.modifiedby=\u4FEE\u6539\u4EBA
common.text.modifieddate=\u4FEE\u6539\u65F6\u95F4
login.text.login.twofactor.obtain.valid=\u91CD\u65B0\u83B7\u53D6
login.text.login.twofactor.obtain=\u83B7\u53D6\u52A8\u6001\u9A8C\u8BC1\u7801
login.text.login.twofactor.obtain.valid.unit=\u79D2
login.text.login.twofactor.validTime=\u5269\u4F59\u65F6\u95F4
login.text.login.twofactor.validTime.unit=\u79D2
login.text.login.twofactor=\u5B89\u5168\u8BA4\u8BC1
login.text.login.normal=\u57FA\u672C\u8BA4\u8BC1
login.text.username=\u7528\u6237\u540D
login.text.password=\u5BC6&nbsp;&nbsp;&nbsp;&nbsp;\u7801
login.text.captcha=\u9A8C\u8BC1\u7801
login.text.remeberme=\u8BB0\u4F4F\u767B\u5F55
login.text.forgotpassword=\u5FD8\u8BB0\u5BC6\u7801
login.button.login=\u767B\u5F55
login.text.currenttime=\u65F6&nbsp;&nbsp;&nbsp;&nbsp;\u95F4
login.text.otherlogins=\u5176\u4ED6\u767B\u5F55\u65B9\u5F0F
login.text.register=\u7528\u6237\u6CE8\u518C
login.password.expired=\u5BC6\u7801\u8FC7\u671F
login.password.expired.tip=\u5BC6\u7801\u8FC7\u671F\uFF0C\u8BF7\u4FEE\u6539\u5BC6\u7801
login.password.oldPassword=\u539F\u5BC6\u7801
login.password.newPassword=\u65B0\u5BC6\u7801
login.password.confirmPassword=\u786E\u8BA4\u65B0\u5BC6\u7801
login.password.initial.change.tip=\u9996\u6B21\u767B\u5F55\uFF0C\u8BF7\u4FEE\u6539\u521D\u59CB\u5316\u5BC6\u7801
login.password.changepassword=\u5BC6\u7801\u4FEE\u6539
login.password.applogin.changepassword=\u5E94\u7528\u767B\u5F55\u5BC6\u7801\u8BBE\u7F6E
login.social.link=\u7ED1\u5B9A
login.social.unlink=\u89E3\u9664
login.social.icon=\u56FE\u6807
login.social.provider=\u4F9B\u5E94\u5546
userinfo.displayName=\u7528\u6237\u540D
userinfo.username=\u767B\u5F55\u8D26\u53F7
userinfo.email=\u90AE\u7BB1\u5730\u5740
userinfo.mobile=\u624B\u673A\u53F7\u7801
userinfo.userType=\u7528\u6237\u7C7B\u578B
userinfo.picture=\u5934\u50CF
userinfo.familyName=\u59D3
userinfo.givenName=\u540D
userinfo.middleName=\u4E2D\u95F4\u540D
userinfo.nickName=\u6635\u79F0
userinfo.gender=\u6027\u522B
userinfo.gender.female=\u5973
userinfo.gender.male=\u7537
userinfo.married=\u5A5A\u59FB\u72B6\u6001
userinfo.married.unknown=\u672A\u77E5
userinfo.married.single=\u5355\u8EAB
userinfo.married.married=\u5DF2\u5A5A
userinfo.married.divorce=\u79BB\u5F02
userinfo.married.widowed=\u4E27\u5076
userinfo.website=\u4e2a\u4eba\u4e3b\u9875
userinfo.idtype=\u8bc1\u4ef6\u7c7b\u578b
userinfo.idtype.unknown=\u672A\u77E5
userinfo.idtype.idcard=\u8EAB\u4EFD\u8BC1
userinfo.idtype.passport=\u62A4\u7167
userinfo.idtype.studentcard=\u5B66\u751F\u8BC1
userinfo.idtype.militarycard=\u519B\u4EBA\u8BC1
userinfo.idCardNo=\u8BC1\u4EF6\u53F7\u7801
userinfo.startWorkDate=\u5DE5\u4F5C\u5F00\u59CB\u65F6\u95F4
userinfo.preferredLanguage=\u8BED\u97F3\u504F\u597D
userinfo.timeZone=\u65F6\u533A
userinfo.locale=\u8BED\u8A00\u9009\u62E9
userinfo.employeeNumber=\u5458\u5DE5\u7F16\u53F7
userinfo.windowsAccount=AD\u57DF\u8D26\u53F7
userinfo.organization=\u6240\u5C5E\u673A\u6784
userinfo.division=\u5206\u652F\u673A\u6784
userinfo.department=\u90E8\u95E8
userinfo.costCenter=\u6210\u672C\u4E2D\u5FC3
userinfo.jobTitle=\u804C\u4F4D
userinfo.jobLevel=\u7EA7\u522B
userinfo.manager=\u4E0A\u7EA7\u7ECF\u7406
userinfo.assistant=\u52A9\u7406
userinfo.entryDate=\u5165\u804C\u65F6\u95F4
userinfo.quitDate=\u79BB\u804C\u65F6\u95F4
userinfo.workCountry=\u56FD\u5BB6
userinfo.workRegion=\u7701
userinfo.workLocality=\u57CE\u5E02
userinfo.workStreetAddress=\u5730\u5740
userinfo.workPostalCode=\u90AE\u7F16
userinfo.workFax=\u4F20\u771F
userinfo.workPhoneNumber=\u5DE5\u4F5C\u7535\u8BDD
userinfo.workEmail=\u5DE5\u4F5C\u90AE\u4EF6
userinfo.homeCountry=\u56FD\u5BB6
userinfo.homeRegion=\u7701
userinfo.homeLocality=\u57CE\u5E02
userinfo.homeStreetAddress=\u5BB6\u5EAD\u5730\u5740
userinfo.homePostalCode=\u5BB6\u5EAD\u90AE\u7F16
userinfo.homeFax=\u5BB6\u5EAD\u4F20\u771F
userinfo.homePhoneNumber=\u5BB6\u5EAD\u7535\u8BDD
userinfo.homeEmail=\u5BB6\u5EAD\u90AE\u7BB1
userinfo.authnType=\u767B\u5F55\u65B9\u5F0F
userinfo.authnType.authnType.1=\u666E\u901A\u767B\u5F55
userinfo.authnType.authnType.2=\u624B\u673A\u4EE4\u724C
userinfo.authnType.authnType.3=\u77ED\u4FE1\u9A8C\u8BC1
userinfo.authnType.authnType.4=\u90AE\u4EF6\u9A8C\u8BC1
userinfo.authnType.authnType.5=\u65F6\u95F4\u4EE4\u724C
userinfo.authnType.authnType.6=\u8BA1\u6570\u5668\u4EE4\u724C
userinfo.authnType.authnType.7=HOTP\u4EE4\u724C
userinfo.authnType.authnType.8=RSA\u4EE4\u724C
userinfo.authnType.authnType.9=\u6570\u5B57\u8BC1\u4E66
userinfo.authnType.authnType.10=USB Key
login.totp.sharedSecret=\u5171\u4EAB\u5BC6\u7801
login.totp.period=\u5468\u671F
login.totp.digits=\u6570\u5B57
login.totp.crypto=\u52A0\u5BC6\u65B9\u5F0F
login.totp.generate=\u91CD\u65B0\u751F\u6210
login.totp.title=TimeBased One Time Password
login.hotp.sharedSecret=\u5171\u4EAB\u5BC6\u7801
login.hotp.period=\u5468\u671F
login.hotp.digits=\u6570\u5B57
login.hotp.crypto=\u52A0\u5BC6\u65B9\u5F0F
login.hotp.generate=\u91CD\u65B0\u751F\u6210
login.hotp.title=HOTP One Time Password
login.counter.sharedSecret=\u5171\u4EAB\u5BC6\u7801
login.counter.period=\u5468\u671F
login.counter.digits=\u6570\u5B57
login.counter.crypto=\u52A0\u5BC6\u65B9\u5F0F
login.counter.generate=\u91CD\u65B0\u751F\u6210
login.counter.title=Counter Based One Time Password
apps.icon=\u56FE\u6807
apps.name=\u5E94\u7528\u540D\u79F0
apps.protocol=\u8BBF\u95EE\u534F\u8BAE
apps.category=\u7C7B\u578B
button.text.action=\u8BBF\u95EE
button.text.visit=\u8BBF\u95EE
button.text.save=\u4FDD\u5B58
button.text.select=\u8BF7\u9009\u62E9
button.text.search=\u67E5\u8BE2
button.text.expandsearch=\u5C55\u5F00
button.text.collapsesearch=\u6536\u7F29
log.loginhistory.id=\u7F16\u53F7
log.loginhistory.sessionId=\u4F1A\u8BDD
log.loginhistory.username=\u767B\u5F55\u540D
log.loginhistory.displayName=\u7528\u6237\u540D\u79F0
log.loginhistory.provider=\u63D0\u4F9B\u5546
log.loginhistory.message=\u72B6\u6001
log.loginhistory.loginType=\u767B\u5F55\u65B9\u5F0F
log.loginhistory.sourceIp=\u8BBF\u95EE\u5730\u5740
log.loginhistory.browser=\u6D4F\u89C8\u5668
log.loginhistory.loginTime=\u767B\u5F55\u65F6\u95F4
log.loginhistory.logoutTime=\u9000\u51FA\u65F6\u95F4
log.loginhistory.platform=\u5E73\u53F0
log.loginhistory.application=\u5E94\u7528
log.loginhistory.loginUrl=\u767B\u5F55\u5730\u5740
log.loginhistory.code=\u4EE3\u7801
log.loginhistory.rpUserInfo=\u7B2C\u4E09\u65B9
log.loginappshistory.id=\u7F16\u53F7
log.loginappshistory.sessionId=\u4F1A\u8BDD
log.loginappshistory.uid=\u7528\u6237\u7F16\u53F7
log.loginappshistory.username=\u767B\u5F55\u540D
log.loginappshistory.displayName=\u7528\u6237\u540D
log.loginappshistory.appId=\u5E94\u7528\u7F16\u53F7
log.loginappshistory.appName=\u5E94\u7528\u540D\u79F0
log.loginappshistory.loginTime=\u767B\u5F55\u65F6\u95F4
log.operate.servicename=\u670D\u52A1
log.operate.message=\u6D88\u606F
log.operate.content=\u5185\u5BB9
log.operate.messageType=\u6D88\u606F\u7C7B\u578B
log.operate.operateType=\u64CD\u4F5C\u7C7B\u578B
log.operate.username=\u64CD\u4F5C\u4EBA