How It Works (API Server)
Calling
Requests to the API are forwarded using the path:
- for example: https://dracoon.team/api
Tenant Separation
The multi-client capabilities are implemented on the basis of the domain called. The API accesses a separate database and directory structure depending on the URL.
URL
|
Database
|
Directory
|
---|---|---|
https://dracoon.team/ | team | /data_dracoon |
https://dracoon.customer.com/ | customer | /data_customer |
https://files.client.eu/ | client | /data_client |
... | ... | ... |
Customer Separation
In addition to the tenants, you can also create separate customer accounts in a database.
Config (API Server)
Path
- Default path:
- /etc/dracoon/api.properties
- Java property for overwriting the default path:
- dracoon.api.config.file:
- Start Tomcat with Java Opt -Ddracoon.api.config.file="/path/to/config/file"
- dracoon.api.config.file:
Datei
api.properties## API settings
###############################################################################################################
! Database connection type. Currently only 'mysql' is supported.
db_type=mysql
! Hostname or IP of the database server.
db_host=localhost
! Port the database is listening on.
! Default: 3306
db_port=3306
! Name of the database containing urls and connection strings.
! Default: mandant
default_db=mandant
! Name of the database user with access to default_db.
db_user=mandant
! Password of the database user.
! To generate a random password you can use 'cat /dev/urandom | tr -dc 'a-zA-Z0-9' | fold -w 32 | head -n 1' on bash console for example.
db_pass=******
! Database Encryption Key.
! This key has to be set before starting the api for the first time.
! To generate a random key you can use 'cat /dev/urandom | tr -dc 'a-zA-Z0-9' | fold -w 32 | head -n 1' on bash console for example.
db_encryption_key=******
## Swagger Proxy settings
###############################################################################################################
! Protocol switch for swagger-proxy connection to api [http,https].
clientProtocol=https
## OAuth settings
###############################################################################################################
! OAuth connection authentication token. Only needed when oauth.war is deployed.
! Same value as in oauth.properties
oauth_connection_authentication_token=******
! OAuth connection encryption key. Only needed when oauth.war is deployed.
! Same value as in oauth.properties
oauth_connection_encryption_key=******
## SMS settings
###############################################################################################################
! Allow to share passwords with SMS.
allow_share_password_sms=True
## Mediaserver settings
###############################################################################################################
! Mediaserver transfer mode for original file to convert from filesystem or SDS Download API. Modes are [mnt,api].
! Default: api
mediaserver.transfer.mode=api
! Mediaserver media types to convert.
mediaserver.mediatypes=image/jpg | image/jpeg | image/png | image/x-ms-bmp | image/gif | application/pdf
## General API settings
###############################################################################################################
! Allow login with msisdn instead of mail.
allow_msisdn_login=False
sms.properties
## SMS settings
###############################################################################################################
! SMS provider to use.
sms.api.provider=
! SMS endpoint url.
sms.api.endpoint=
! SMS token for authenticating with provider
sms_token=
sms.api.defaultregion=DE
api-db-init-data.properties (optional)
## Server DB default settings
###############################################################################################################
! Mail server configuration defaults
mailserver=
mailserver_authentication_necessary=
mailserver_password=
mailserver_port=
mailserver_username=
mailserver_use_ssl=
mailserver_use_starttls=
! Mail defaults configuration
email_from=
email_to_sales=
email_to_support=
! Branding defaults configuration
branding_server_branding_id=
branding_portal_url=
! Passwords defaults configuration
allow_share_password_sms=
allow_system_global_weak_password=
! System defaults configuration
default_downloadshare_expiration_period=
default_file_upload_expiration_date=
default_uploadshare_expiration_period=
! Eula defaults configuration
eula_active=
! Eventlog defaults configuration
eventlog_retention_period=
Comments
0 comments
Article is closed for comments.