blob: 2c051ae03c76bf7e7591cf485119df8c1b0b713e [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
margaretha70536f52025-10-07 09:15:22 +020053vc.list.statistics.enabled = false
margarethafbfe2872024-01-04 23:29:28 +010054
55# Availability regex only support |
56# It should be removed/commented when the data doesn't contain availability field.
57#
Marc Kupietze4528ee2024-07-04 16:28:37 +020058availability.regex.free = CC.*
margarethafbfe2872024-01-04 23:29:28 +010059availability.regex.public = ACA.*|QAO-NC
60availability.regex.all = QAO.*
61
margaretha954838d2026-02-18 15:39:47 +010062# Rate limiting for authenticated users
63#
64# Number of requests allowed per time period
65ratelimit.refill.tokens = 60
66# Time period for token refill (format: 1S, 30M, 1H, 1D)
67ratelimit.refill.period = 1M
68# Maximum burst capacity (tokens that can be consumed immediately)
69ratelimit.burst.capacity = 60
70# Maximum number of rate limit buckets to keep in memory
71ratelimit.max.buckets = 10000
72# Time to live for unused rate limit buckets
73ratelimit.bucket.ttl = 6H
74
margarethafbfe2872024-01-04 23:29:28 +010075# options referring to the security module!
76
77# OAuth
78# (see de.ids_mannheim.korap.constant.AuthenticationMethod for possible
79# oauth.password.authentication values)
80oauth2.password.authentication = LDAP
81# used to determine native client, currently not used
82# oauth2.native.client.host = korap.ids-mannheim.de
83oauth2.max.attempts = 1
84# expiry in seconds (S), minutes (M), hours (H), days (D)
85oauth2.access.token.expiry = 1D
86oauth2.refresh.token.expiry = 90D
87# default 365D
88# oauth2.access.token.long.expiry = 365D
89# oauth2.refresh.token.long.expiry = 365D
90oauth2.authorization.code.expiry = 10M
91# scopes separated by space
92oauth2.default.scopes = search match_info
93oauth2.client.credentials.scopes = client_info
margaretha8db56a12025-10-07 09:26:40 +020094oauth2.initial.super.client = false
margarethafbfe2872024-01-04 23:29:28 +010095
96## see SecureRandom Number Generation Algorithms
97## optional
98# security.secure.random.algorithm=SHA1PRNG
99
100## see MessageDigest Algorithms
101## default MD5
102security.md.algoritm = SHA-256
103
104### secure hash support: BCRYPT
105security.secure.hash.algorithm=BCRYPT
106security.encryption.loadFactor = 10
107
108# DEPRECATED
109# JWT
110security.jwt.issuer=korap.ids-mannheim.de
111security.sharedSecret=this-is-shared-secret-code-for-JWT-Signing.It-must-contains-minimum-256-bits
112
113## token expiration (used in other authentication provider than OAuth2)
114security.longTokenTTL=150D
115security.tokenTTL=72H
116security.shortTokenTTL=45M
117
118# Session authentication
119security.idleTimeoutDuration = 25M
120security.multipleLogIn = true
121security.loginAttemptNum = 3
122security.authAttemptTTL = 45M