Skip to content
config.py 3.22 KiB
Newer Older
#!/usr/bin/python
# -*- coding: UTF-8 -*-

from MDmisc.database import Database
from PiAnoS import Database as DatabasePiAnoS
Marco De Donno's avatar
Marco De Donno committed
import os

from PIL import Image
Marco De Donno's avatar
Marco De Donno committed
import redis
import utils
baseurl = os.environ.get( "BASEURL", "" )
envtype = os.environ.get( "ENVTYPE", "" )

SECRET_KEY = os.environ.get( "SECRET_KEY", utils.rand.random_data( 20 ) )
Marco De Donno's avatar
Marco De Donno committed
MAX_CONTENT_LENGTH = 500 * 1024 * 1024

EMAIL_NB_ITERATIONS = 50 * 1000
PASSWORD_NB_ITERATIONS = 50 * 1000
DEK_NB_ITERATIONS = 500 * 1000
CF_NB_ITERATIONS = 100 * 1000
EMAIL_SALT_LENGTH = 20
PASSWORD_SALT_LENGTH = 20
DEK_SALT_LENGTH = 20
DEK_CHECK_SALT_LENGTH = 20
Marco De Donno's avatar
Marco De Donno committed
SESSION_TYPE = "redis"
SESSION_PERMANENT = False

Marco De Donno's avatar
Marco De Donno committed
redis_url = os.environ.get( "REDIS_URL", "redis://redis:6379/0" )
SESSION_REDIS = redis.from_url( redis_url )

session_timeout = int( os.environ.get( "SESSION_TIMEOUT", 15 * 60 ) )
TOTP_MAX_VALIDWINDOW = 1000
Marco De Donno's avatar
Marco De Donno committed
PROXY = os.environ.get( "BEHIND_PROXY", True )

pianosurl = os.environ.get( "DB_PIANOS_URL", "pgsql://pianos:pianos@pianos/pianos" )
pianosdb = DatabasePiAnoS( pianosurl )
pianosendpoint = os.environ.get( "PIANOS_ENDPOINT", "/pianos" )
Marco De Donno's avatar
Marco De Donno committed
dburl = os.environ.get( "DB_URL", "pgsql://db/icnml" )
db = Database( dburl )

Marco De Donno's avatar
Marco De Donno committed
redis_url2 = os.environ.get( "REDIS_URL_SHARED", "redis://redis:6379/1" )
redis_shared = redis.from_url( redis_url2 )

Marco De Donno's avatar
Marco De Donno committed
CACHE_TYPE = "redis"
CACHE_REDIS_URL = redis_url2

Marco De Donno's avatar
Marco De Donno committed
smtpserver = os.environ.get( "SMTP_SERVER", "smtp.unil.ch" )
smtpuser = os.environ.get( "SMTP_USERNAME", "username" )
smtppassword = os.environ.get( "SMTP_PASSWORD", "password" )
Marco De Donno's avatar
Marco De Donno committed
sender = "icnml@unil.ch"

POPPLER_PATH = os.environ.get( "POPPLER_PATH", "" )

Marco De Donno's avatar
Marco De Donno committed
SESSION_COOKIE_SECURE = True
Marco De Donno's avatar
Marco De Donno committed
SESSION_COOKIE_SAMESITE = "Strict"
Marco De Donno's avatar
Marco De Donno committed

domain = "https://icnml.unil.ch"
baseurl = os.environ.get( "BASEURL", "" )
fulldomain = domain + baseurl
cdn = fulldomain + "/cdn"
Marco De Donno's avatar
Marco De Donno committed

RP_ID = "icnml.unil.ch"
ORIGIN = domain
Marco De Donno's avatar
Marco De Donno committed
rp_name = "ICNML"
Marco De Donno's avatar
Marco De Donno committed

gpg_key = ( "FB15B70D1507B18B", )
Marco De Donno's avatar
Marco De Donno committed
keys_folder = os.environ.get( "KEYS_FOLDER", "/keys" )
Marco De Donno's avatar
Marco De Donno committed

Image.MAX_IMAGE_PIXELS = 1 * 1024 * 1024 * 1024

NIST_file_extensions = [
Marco De Donno's avatar
Marco De Donno committed
    ".nist", ".nst",
    ".an2", ".an2k",
Marco De Donno's avatar
Marco De Donno committed
    ".xml",
    ".lffs", ".lff",
    ".lfis", ".lfi",
    ".irq", ".irr", ".isr",
    ".srl",
    ".lsmq", ".lsmr",
    ".lpnq", ".lpn", ".lpnr",
    ".ulac", ".uld",
    ".ular", ".uldr", ".uuld",
    ".errl", ".erri", ".erra", ".err"
]

all_fpc = [ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 25, 27 ]
finger_fpc = [ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ]
palm_fpc = [ 25, 27 ]
Marco De Donno's avatar
Marco De Donno committed
cdnjs = [
    cdn + "/jquery/js/jquery-3.1.0.js",
    cdn + "/jquery/js/jquery-ui-1.12.1.min.js",
    cdn + "/toastr/toastr.min.js",
    cdn + "/misc/md5-min.js",
    cdn + "/sha512.js",
    cdn + "/moment.min.js",
    cdn + "/base64.js",
    cdn + "/otplib-browser.js",
    cdn + "/dropzone/dropzone.js",
    cdn + "/crypto-js/rollups/aes.js",
    cdn + "/crypto-js/rollups/pbkdf2.js"
]

cdncss = [
    cdn + "/jquery/css/base/jquery-ui.min.css",
    cdn + "/toastr/toastr.min.css",
    cdn + "/dropzone/dropzone.css",
    cdn + "/loadingcss/loading-btn.css",
    cdn + "/loadingcss/loading.css",
]
Marco De Donno's avatar
Marco De Donno committed
misc = {
Marco De Donno's avatar
Marco De Donno committed
    "jquery_ui_white_bg_icons": "/cdn/jquery/css/base/images/ui-icons_ffffff_256x240.png"
Marco De Donno's avatar
Marco De Donno committed
}

gpg_options = {
Marco De Donno's avatar
Marco De Donno committed
    "binary": os.environ.get( "GPG_BIN", "gpg" ),
    "homedir": os.environ.get( "GPG_HOMEDIR", "/tmp/gpg" )