blob: 8bd0ff9d86b64974c870d1a1cb6328db2d7fe708 [file] [log] [blame]
margaretha8db56a12025-10-07 09:26:40 +02001# This is the default configuration for Kustvakt full version
2# Copy this file to data/kustvakt.conf and adjust settings
3
margarethafbfe2872024-01-04 23:29:28 +01004#Krill
5krill.indexDir= sample-index
6
7krill.index.commit.count = 134217000
8krill.index.commit.log = log/krill.commit.log
9krill.index.commit.auto = 500
10krill.index.relations.max = 100
11# Directory path of virtual corpora to cache
margaretha390f37d2024-04-22 12:07:34 +020012#krill.namedVC = data/vc
margarethafbfe2872024-01-04 23:29:28 +010013
14# LDAP
15ldap.config = src/main/resources/embedded-ldap-example.conf
16
17# Kustvakt
18api.welcome.message = Welcome to KorAP API!
19current.api.version = v1.0
margarethacdd26e62024-07-12 12:40:26 +020020# multiple versions comma separated
21# supported.api.versions = v1.0
margarethafbfe2872024-01-04 23:29:28 +010022
23# server
24server.port=8089
25server.host=localhost
26
margaretha8db56a12025-10-07 09:26:40 +020027# log
28log.request.enabled = false
29
30# Cache
31cache.total.results.enabled = true
32
margaretha4fc0ce62025-07-16 09:03:45 +020033# Timeout
34# timeout.guest = 10000 (default)
35# timeout.login = 90000 (default)
36
margaretha8db56a12025-10-07 09:26:40 +020037
margarethaca9a3242025-06-24 09:11:50 +020038# Pipe (optional)
margarethad0f36512025-07-04 11:06:10 +020039# pipe.host=https://korap.ids-mannheim.de
margarethaca9a3242025-06-24 09:11:50 +020040
margarethafbfe2872024-01-04 23:29:28 +010041# default foundries for specific layers
42default.foundry.partOfSpeech = tt
43default.foundry.lemma = tt
44default.foundry.orthography = opennlp
45default.foundry.dependency = malt
46default.foundry.constituent = corenlp
47default.foundry.morphology = marmot
48default.foundry.surface = base
49
margaretha70536f52025-10-07 09:15:22 +020050# Virtual corpus and queries
51max.user.persistent.queries = 5
margaretha8db56a12025-10-07 09:26:40 +020052# max.token.context.size = 40
margaretha908239e2026-04-28 15:08:27 +020053max.token.context.size.large = 50
margaretha70536f52025-10-07 09:15:22 +020054vc.list.statistics.enabled = false
margarethafbfe2872024-01-04 23:29:28 +010055
56# Availability regex only support |
57# It should be removed/commented when the data doesn't contain availability field.
58#
Marc Kupietze4528ee2024-07-04 16:28:37 +020059availability.regex.free = CC.*
margarethafbfe2872024-01-04 23:29:28 +010060availability.regex.public = ACA.*|QAO-NC
61availability.regex.all = QAO.*
62
margaretha954838d2026-02-18 15:39:47 +010063# Rate limiting for authenticated users
64#
65# Number of requests allowed per time period
66ratelimit.refill.tokens = 60
67# Time period for token refill (format: 1S, 30M, 1H, 1D)
68ratelimit.refill.period = 1M
69# Maximum burst capacity (tokens that can be consumed immediately)
70ratelimit.burst.capacity = 60
71# Maximum number of rate limit buckets to keep in memory
72ratelimit.max.buckets = 10000
73# Time to live for unused rate limit buckets
74ratelimit.bucket.ttl = 6H
75
margarethafbfe2872024-01-04 23:29:28 +010076# options referring to the security module!
77
78# OAuth
79# (see de.ids_mannheim.korap.constant.AuthenticationMethod for possible
80# oauth.password.authentication values)
81oauth2.password.authentication = LDAP
82# used to determine native client, currently not used
83# oauth2.native.client.host = korap.ids-mannheim.de
84oauth2.max.attempts = 1
85# expiry in seconds (S), minutes (M), hours (H), days (D)
86oauth2.access.token.expiry = 1D
87oauth2.refresh.token.expiry = 90D
88# default 365D
89# oauth2.access.token.long.expiry = 365D
90# oauth2.refresh.token.long.expiry = 365D
91oauth2.authorization.code.expiry = 10M
92# scopes separated by space
93oauth2.default.scopes = search match_info
94oauth2.client.credentials.scopes = client_info
margaretha8db56a12025-10-07 09:26:40 +020095oauth2.initial.super.client = false
margarethafbfe2872024-01-04 23:29:28 +010096
97## see SecureRandom Number Generation Algorithms
98## optional
99# security.secure.random.algorithm=SHA1PRNG
100
101## see MessageDigest Algorithms
102## default MD5
103security.md.algoritm = SHA-256
104
105### secure hash support: BCRYPT
106security.secure.hash.algorithm=BCRYPT
107security.encryption.loadFactor = 10
108
109# DEPRECATED
110# JWT
111security.jwt.issuer=korap.ids-mannheim.de
112security.sharedSecret=this-is-shared-secret-code-for-JWT-Signing.It-must-contains-minimum-256-bits
113
114## token expiration (used in other authentication provider than OAuth2)
115security.longTokenTTL=150D
116security.tokenTTL=72H
117security.shortTokenTTL=45M
118
119# Session authentication
120security.idleTimeoutDuration = 25M
121security.multipleLogIn = true
122security.loginAttemptNum = 3
123security.authAttemptTTL = 45M