############################################################################ # Copyright [2021] [MaxKey of copyright http://www.maxkey.top] # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. ############################################################################ #spring.profiles.active=http # ############################################################################ #server port server.port=443 #session default 1800 server.servlet.session.timeout=1800 #web app context path server.servlet.context-path=/maxkey spring.servlet.multipart.enabled=true spring.servlet.multipart.max-file-size=4194304 ############################################################################ #ssl configuration # ############################################################################ server.ssl.key-store=maxkeyserver.keystore server.ssl.key-alias=maxkey server.ssl.enabled=true server.ssl.key-store-password=maxkey server.ssl.key-store-type=JKS #encoding #server.servlet.encoding.charset=UTF-8 #server.servlet.encoding.enabled=true #server.servlet.encoding.force=true ############################################################################ #database configuration # ############################################################################ #datasource spring.datasource.username=root spring.datasource.password=maxkey spring.datasource.url=jdbc:mysql://localhost/maxkey?autoReconnect=true&characterEncoding=UTF-8&serverTimezone=UTC spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver spring.datasource.type=com.alibaba.druid.pool.DruidDataSource #mybatis mybatis.type-aliases-package=org.maxkey.domain,org.maxkey.domain.apps, mybatis.mapper-locations=classpath*:/org/maxkey/persistence/mapper/xml/mysql/*.xml mybatis.table-column-escape=true ############################################################################ #redis server configuration # ############################################################################ #spring.redis.host=127.0.0.1 #spring.redis.port=6379 #spring.redis.password=password #spring.redis.timeout=10000 #spring.redis.jedis.pool.max-wait=1000 #spring.redis.jedis.pool.max-idle=200 #spring.redis.lettuce.pool.max-active=-1 #spring.redis.lettuce.pool.min-idle=0 ############################################################################ #mail configuration # ############################################################################ #spring.mail.default-encoding=utf-8 #spring.mail.host=smtp.163.com #spring.mail.port=465 #spring.mail.username=maxkey@163.com #spring.mail.password=password #spring.mail.protocol=smtp #spring.mail.properties.ssl=true #spring.mail.properties.sender=maxkey@163.com spring.mail.properties.mailotp.message.subject=MaxKey One Time PassWord spring.mail.properties.mailotp.message.template={0} You Token is {1} , it validity in {2} minutes. ############################################################################ #freemarker configuration # ############################################################################ spring.freemarker.template-loader-path=classpath:/templates/views spring.freemarker.cache=false spring.freemarker.charset=UTF-8 spring.freemarker.check-template-location=true spring.freemarker.content-type=text/html spring.freemarker.expose-request-attributes=false spring.freemarker.expose-session-attributes=false spring.freemarker.request-context-attribute=request spring.freemarker.suffix=.ftl ############################################################################ #static resources configuration # ############################################################################ spring.mvc.static-path-pattern=/static/** spring.messages.basename=classpath:messages/message spring.messages.encoding=UTF-8 ############################################################################ #Main.banner-mode configuration # ############################################################################ spring.main.banner-mode=log spring.main.allow-bean-definition-overriding=true ############################################################################ #Spring Session for Cluster configuration # ############################################################################ # Session store type. spring.session.store-type=none #spring.session.store-type=redis # Session timeout. If a duration suffix is not specified, seconds is used. #server.servlet.session.timeout=1800 # Sessions flush mode. #spring.session.redis.flush-mode=on_save # Namespace for keys used to store sessions. #spring.session.redis.namespace=spring:session ############################################################################ #Kafka for connectors configuration # ############################################################################ spring.kafka.bootstrap-servers=localhost:9092 ###########\u3010\u521d\u59cb\u5316\u751f\u4ea7\u8005\u914d\u7f6e\u3011########### # \u91cd\u8bd5\u6b21\u6570 spring.kafka.producer.retries=0 # \u5e94\u7b54\u7ea7\u522b:\u591a\u5c11\u4e2a\u5206\u533a\u526f\u672c\u5907\u4efd\u5b8c\u6210\u65f6\u5411\u751f\u4ea7\u8005\u53d1\u9001ack\u786e\u8ba4(\u53ef\u90090\u30011\u3001all/-1) spring.kafka.producer.acks=1 # \u6279\u91cf\u5927\u5c0f spring.kafka.producer.batch-size=16384 # \u63d0\u4ea4\u5ef6\u65f6 spring.kafka.producer.properties.linger.ms=0 # \u5f53\u751f\u4ea7\u7aef\u79ef\u7d2f\u7684\u6d88\u606f\u8fbe\u5230batch-size\u6216\u63a5\u6536\u5230\u6d88\u606flinger.ms\u540e,\u751f\u4ea7\u8005\u5c31\u4f1a\u5c06\u6d88\u606f\u63d0\u4ea4\u7ed9kafka # linger.ms\u4e3a0\u8868\u793a\u6bcf\u63a5\u6536\u5230\u4e00\u6761\u6d88\u606f\u5c31\u63d0\u4ea4\u7ed9kafka,\u8fd9\u65f6\u5019batch-size\u5176\u5b9e\u5c31\u6ca1\u7528\u4e86 # \u751f\u4ea7\u7aef\u7f13\u51b2\u533a\u5927\u5c0f spring.kafka.producer.buffer-memory = 33554432 # Kafka\u63d0\u4f9b\u7684\u5e8f\u5217\u5316\u548c\u53cd\u5e8f\u5217\u5316\u7c7b spring.kafka.producer.key-serializer=org.apache.kafka.common.serialization.StringSerializer spring.kafka.producer.value-serializer=org.apache.kafka.common.serialization.StringSerializer # \u81ea\u5b9a\u4e49\u5206\u533a\u5668 # spring.kafka.producer.properties.partitioner.class=com.felix.kafka.producer.CustomizePartitioner ############################################################################ #Management endpoints configuration # ############################################################################ management.security.enabled=false #management.endpoints.jmx.exposure.include=health,info management.endpoints.web.exposure.include=metrics,health,info,env ############################################################################ #domain name configuration # ############################################################################ maxkey.server.scheme=https maxkey.server.basedomain=maxkey.top maxkey.server.domain=sso.${maxkey.server.basedomain} maxkey.server.name=${maxkey.server.scheme}://${maxkey.server.domain} maxkey.server.uri=${maxkey.server.name}/maxkey #default.uri maxkey.server.default.uri=${maxkey.server.uri}/maxkey/appList maxkey.server.management.uri=${maxkey.server.name}:9521/maxkey-mgt/login #InMemory 0 , Redis 2 maxkey.server.persistence=0 #identity maxkey.identity.kafkasupport=false maxkey.app.issuer=CN=ConSec,CN=COM,CN=SH ############################################################################ #Login configuration # ############################################################################ #enable captcha maxkey.login.captcha=true #text or arithmetic maxkey.login.captcha.type=text #enable two factor,use one time password maxkey.login.mfa=true #TimeBasedOtpAuthn MailOtpAuthn SmsOtpAuthnYunxin SmsOtpAuthnAliyun SmsOtpAuthnTencentCloud maxkey.login.mfa.type=TimeBasedOtpAuthn #enable social sign on maxkey.login.socialsignon=true #social sign on providers maxkey.login.socialsignon.providers=gitee,wechatopen,sinaweibo,google,qq,dingtalk,microsoft,facebook #Enable kerberos/SPNEGO maxkey.login.kerberos=true #wsFederation maxkey.login.wsfederation=false #remeberme maxkey.login.remeberme=true #validity maxkey.login.remeberme.validity=0 #to default application web site maxkey.login.default.uri=appList maxkey.ipaddress.whitelist=false ############################################################################ #Kerberos Login configuration # #SmsOtpAuthnYunxin SmsOtpAuthnAliyun SmsOtpAuthnTencentCloud # ############################################################################ #default maxkey.otp.sms=SmsOtpAuthnYunxin #aliyun maxkey.otp.sms.aliyun.accesskeyid=94395d754eb55693043f5d6a2b772ef4 maxkey.otp.sms.aliyun.accesssecret=05d5485357bc maxkey.otp.sms.aliyun.templatecode=14860095 maxkey.otp.sms.aliyun.signname=maxkey #yunxin maxkey.otp.sms.yunxin.appkey=94395d754eb55693043f5d6a2b772ef4 maxkey.otp.sms.yunxin.appsecret=05d5485357bc maxkey.otp.sms.yunxin.templateid=14860095 #tencentcloud maxkey.otp.sms.tencentcloud.secretid=94395d754eb55693043f5d6a2b772ef4 maxkey.otp.sms.tencentcloud.secretkey=05d5485357bc maxkey.otp.sms.tencentcloud.smssdkappid=1486220095 maxkey.otp.sms.tencentcloud.templateid=14860095 maxkey.otp.sms.tencentcloud.sign=1486009522 ############################################################################ #Time-based One-Time Password configuration # ############################################################################ maxkey.otp.keyuri.format.type=totp maxkey.otp.keyuri.format.digits=6 maxkey.otp.keyuri.format.issuer=MaxKey maxkey.otp.keyuri.format.domain=${maxkey.server.domain} maxkey.otp.keyuri.format.period=30 ############################################################################ #Kerberos Login configuration # #short name of user domain must be in upper case,eg:MAXKEY # ############################################################################ maxkey.support.kerberos.default.userdomain=MAXKEY #short name of user domain must be in upper case,eg:MAXKEY.ORG maxkey.support.kerberos.default.fulluserdomain=MAXKEY.ORG #last 8Bit crypto for Kerberos web Authentication maxkey.support.kerberos.default.crypto=846KZSzYq56M6d5o #Kerberos Authentication server RUL maxkey.support.kerberos.default.redirecturi=http://sso.maxkey.top/kerberos/authn/ ############################################################################ #HTTPHEADER Login configuration # ############################################################################ maxkey.support.httpheader.enable=false maxkey.support.httpheader.headername=header-user # iv-user is for IBM Security Access Manager #config.httpheader.headername=iv-user ############################################################################ #BASIC Login support configuration # ############################################################################ maxkey.support.basic.enable=false ############################################################################ #LDAP Login support configuration # ############################################################################ maxkey.support.ldap.enable=false maxkey.support.ldap.jit=false #openldap,activedirectory,normal maxkey.support.ldap.product=openldap maxkey.support.ldap.ssl=false maxkey.support.ldap.providerurl=ldap://localhost:389 maxkey.support.ldap.principal=cn=Manager,dc=maxcrc,dc=com maxkey.support.ldap.credentials=secret maxkey.support.ldap.basedn=dc=maxcrc,dc=com maxkey.support.ldap.filter=(uid=%s) maxkey.support.ldap.truststore=maxkey maxkey.support.ldap.truststorepassword=maxkey #activedirectory effective maxkey.support.ldap.activedirectory.domain=MAXKEY.ORG ############################################################################# #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. ############################################################################ maxkey.support.wsfederation.identifier=http://adfs.maxkey.top/adfs/services/trust maxkey.support.wsfederation.url=https://adfs.maxkey.top/adfs/ls/ maxkey.support.wsfederation.principal=upn maxkey.support.wsfederation.relyingParty=urn:federation:connsec maxkey.support.wsfederation.signingCertificate=adfs-signing.crt maxkey.support.wsfederation.tolerance=10000 maxkey.support.wsfederation.upn.suffix=maxkey.org maxkey.support.wsfederation.logoutUrl=https://adfs.maxkey.top/adfs/ls/?wa=wsignout1.0 ############################################################################# #OIDC V1.0 METADATA configuration # ############################################################################# maxkey.oidc.metadata.issuer=${maxkey.server.name}/maxkey maxkey.oidc.metadata.authorizationEndpoint=${maxkey.server.name}/maxkey/oauth/v20/authorize maxkey.oidc.metadata.tokenEndpoint=${maxkey.server.name}/maxkey/oauth/v20/token maxkey.oidc.metadata.userinfoEndpoint=${maxkey.server.name}/maxkey/api/connect/userinfo ############################################################################# #SAML V2.0 configuration # ############################################################################# #saml common maxkey.saml.v20.max.parser.pool.size=2 maxkey.saml.v20.assertion.validity.time.ins.seconds=90 maxkey.saml.v20.replay.cache.life.in.millis=14400000 maxkey.saml.v20.issue.instant.check.clock.skew.in.seconds=90 maxkey.saml.v20.issue.instant.check.validity.time.in.seconds=300 #saml idp keystore maxkey.saml.v20.idp.keystore.password=maxkey maxkey.saml.v20.idp.keystore.private.key.password=maxkey maxkey.saml.v20.idp.keystore=classpath\:config/samlServerKeystore.jks #keystore id for sec maxkey.saml.v20.idp.issuing.entity.id=maxkey.top maxkey.saml.v20.idp.issuer=https://sso.maxkey.top/maxkey/saml maxkey.saml.v20.idp.receiver.endpoint=https\://sso.maxkey.top/ #saml sp keystore maxkey.saml.v20.sp.keystore.password=maxkey maxkey.saml.v20.sp.keystore.private.key.password=maxkey maxkey.saml.v20.sp.keystore=classpath\:config/samlClientKeystore.jks maxkey.saml.v20.sp.issuing.entity.id=client.maxkey.org #Saml v20 METADATA maxkey.saml.v20.metadata.orgName=MaxKeyTop maxkey.saml.v20.metadata.orgDisplayName=MaxKeyTop maxkey.saml.v20.metadata.orgURL=https://www.maxkey.top maxkey.saml.v20.metadata.contactType=technical maxkey.saml.v20.metadata.company=MaxKeyTop maxkey.saml.v20.metadata.givenName=maxkey maxkey.saml.v20.metadata.surName=maxkey maxkey.saml.v20.metadata.emailAddress=maxkeysupport@163.com maxkey.saml.v20.metadata.telephoneNumber=4008981111 ############################################################################ # Social Sign On Configuration # #you config client.id & client.secret only # ############################################################################ #gitee maxkey.socialsignon.gitee.provider=gitee maxkey.socialsignon.gitee.provider.name=Gitee maxkey.socialsignon.gitee.icon=images/social/gitee.png maxkey.socialsignon.gitee.client.id=ee6fdc484b3398d17e77d6ff37fd8b9fe502106398c7b22bf5522d3c01303f45 maxkey.socialsignon.gitee.client.secret=d6c3558f295f044df538c966a9084166f9a877c7a7392543184007a5faccdbad maxkey.socialsignon.gitee.account.id=id maxkey.socialsignon.gitee.sortorder=1 #wechat maxkey.socialsignon.wechatopen.provider=wechatopen maxkey.socialsignon.wechatopen.provider.name=\u5fae\u4fe1 maxkey.socialsignon.wechatopen.icon=images/social/wechat.png maxkey.socialsignon.wechatopen.client.id=ee6fdc484b3398d17e7 maxkey.socialsignon.wechatopen.client.secret=7a5faccdbad maxkey.socialsignon.wechatopen.account.id=id maxkey.socialsignon.wechatopen.sortorder=2 #sina weibo maxkey.socialsignon.sinaweibo.provider=sinaweibo maxkey.socialsignon.sinaweibo.provider.name=\u65b0\u6d6a\u5fae\u535a maxkey.socialsignon.sinaweibo.icon=images/social/weibo.png maxkey.socialsignon.sinaweibo.client.id=3379757634 maxkey.socialsignon.sinaweibo.client.secret=1adfdf9800299037bcab9d1c238664ba maxkey.socialsignon.sinaweibo.account.id=id maxkey.socialsignon.sinaweibo.sortorder=3 #Google maxkey.socialsignon.google.provider=google maxkey.socialsignon.google.provider.name=Google maxkey.socialsignon.google.icon=images/social/google.png maxkey.socialsignon.google.client.id=519914515488.apps.googleusercontent.com maxkey.socialsignon.google.client.secret=3aTW3Iw7e11QqMnHxciCaXTt maxkey.socialsignon.google.account.id=id maxkey.socialsignon.google.sortorder=4 #dingtalk maxkey.socialsignon.dingtalk.provider=dingtalk maxkey.socialsignon.dingtalk.provider.name=dingtalk maxkey.socialsignon.dingtalk.icon=images/social/dingtalk.png maxkey.socialsignon.dingtalk.client.id=dingoawf2jyiwh2uzqnphg maxkey.socialsignon.dingtalk.client.secret=Crm7YJbMKfRlvG2i1SHpg4GHVpqF_oXiEjhmRQyiSiuzNRWpbFh9i0UjDTfhOoN9 maxkey.socialsignon.dingtalk.account.id=openid maxkey.socialsignon.dingtalk.sortorder=5 #QQ maxkey.socialsignon.qq.provider=qq maxkey.socialsignon.qq.provider.name=QQ maxkey.socialsignon.qq.icon=images/social/qq.png maxkey.socialsignon.qq.client.id=101225363 maxkey.socialsignon.qq.client.secret=8577d75e0eb4a91ac549cc8be3371bfd maxkey.socialsignon.qq.account.id=openid maxkey.socialsignon.qq.sortorder=6 #Microsoft maxkey.socialsignon.microsoft.provider=microsoft maxkey.socialsignon.microsoft.provider.name=Microsoft maxkey.socialsignon.microsoft.icon=images/social/microsoft.png maxkey.socialsignon.microsoft.client.id=24aa73b6-7928-4e64-bd64-d8682e650f95 maxkey.socialsignon.microsoft.client.secret=PF[_AthtjVrtWVO2mNy@CJxY1@Z8FNf5 maxkey.socialsignon.microsoft.account.id=id maxkey.socialsignon.microsoft.sortorder=7 #facebook maxkey.socialsignon.facebook.provider=facebook maxkey.socialsignon.facebook.provider.name=facebook maxkey.socialsignon.facebook.icon=images/social/facebook.png maxkey.socialsignon.facebook.client.id=appKey maxkey.socialsignon.facebook.client.secret=appSecret maxkey.socialsignon.facebook.account.id=id maxkey.socialsignon.facebook.sortorder=8 ############################################################################ #springfox.documentation.swagger.v2.path=/api-docs # #Swagger Configure Properties # ############################################################################ maxkey.swagger.enable=true maxkey.swagger.title=MaxKey\u5355\u70b9\u767b\u5f55\u8ba4\u8bc1\u7cfb\u7edfapi\u6587\u6863 maxkey.swagger.description=MaxKey\u5355\u70b9\u767b\u5f55\u8ba4\u8bc1\u7cfb\u7edfapi\u6587\u6863 maxkey.swagger.version=${application.formatted-version}