anastasis.conf.5.rst (6416B)
1 anastasis.conf(5) 2 ################# 3 4 .. only:: html 5 6 Name 7 ==== 8 9 **anastasis.conf** - Anastasis configuration file 10 11 12 Description 13 =========== 14 15 The configuration file is line-oriented. 16 Blank lines and whitespace at the beginning and end of a line are ignored. 17 Comments start with ``#`` or ``%`` in the first column 18 (after any beginning-of-line whitespace) and go to the end of the line. 19 20 The file is split into sections. 21 Every section begins with “[SECTIONNAME]” and 22 contains a number of options of the form “OPTION=VALUE”. 23 There may be whitespace around the ``=`` (equal sign). 24 Section names and options are *case-insensitive*. 25 26 The values, however, are *case-sensitive*. 27 In particular, boolean values are one of ``YES`` or ``NO``. 28 Values can include whitespace by surrounding 29 the entire value with ``"`` (double quote). 30 Note, however, that there are no escape characters in such strings; 31 all characters between the double quotes (including other double quotes) 32 are taken verbatim. 33 34 Values that represent filenames can begin with a ``/bin/sh``-like 35 variable reference. 36 This can be simple, such as ``$TMPDIR/foo``, or complex, 37 such as ``${TMPDIR:-${TMP:-/tmp}}/foo``. 38 See ``[PATHS]`` (below). 39 40 Values that represent a time duration are represented as a series of one or 41 more ``NUMBER UNIT`` pairs, e.g. ``60 s``, ``4 weeks 1 day``, ``5 years 2 minutes``. 42 43 Values that represent an amount are in the usual amount syntax: 44 ``CURRENCY:VALUE.FRACTION``, e.g. ``EUR:1.50``. 45 The ``FRACTION`` portion may extend up to 8 places. 46 47 Files containing default values for many of the options described below 48 are installed under ``$ANASTASIS_PREFIX/share/taler/config.d/``. 49 The configuration file given with **-c** to Anastasis binaries 50 overrides these defaults. 51 52 A configuration file may include another, by using the ``@INLINE@`` directive, 53 for example, in ``main.conf``, you could write ``@INLINE@ sub.conf`` to 54 include the entirety of ``sub.conf`` at that point in ``main.conf``. 55 .. TODO: Document ‘anastasis-config -V’ in light of ‘@INLINE@’ in taler-config(1). 56 57 58 GLOBAL OPTIONS 59 -------------- 60 61 The following options are from the ``[anastasis]`` section and used by 62 the **anastasis-httpd** service. 63 64 ANNUAL_FEE 65 Annual fee to be paid for policy uploads, i.e. "EUR:1.5". 66 67 TRUTH_UPLOAD_FEE 68 Annual fee to be paid for truth uploads, i.e. "EUR:1.5". 69 70 INSURANCE 71 Amount up to which key shares are warranted, i.e. "EUR:1000000". 72 73 DB 74 Database backend to use, only ``postgres`` is supported right now. 75 76 UPLOAD_LIMIT_MB 77 Maximum upload size for policy uploads in megabytes. Default is 1. 78 79 ANNUAL_POLICY_UPLOAD_LIMIT 80 Maximum number of policies uploaded per year of service. Default is 42. 81 82 BUSINESS_NAME 83 Name of the business. 84 85 SERVER_SALT 86 Must be set to a high-entropy random server salt that the provider must never 87 change after the initial configuration. 88 89 PORT 90 TCP port on which the HTTP service should listen on. 91 92 93 Backend options 94 --------------- 95 96 The following options are from the ``[anastasis-merchant-backend]`` section and used by 97 the **anastasis-httpd** service. 98 99 PAYMENT_BACKEND_URL 100 Base-URL of the Taler merchant backend instance to use for payments. 101 102 API_KEY 103 API key to transmit to the merchant backend for authentication. 104 105 106 107 Authorization options 108 --------------------- 109 110 For each active authorization plugin, options must be configured in a 111 section called ``[authorization-$PLUGIN]`` where ``$PLUGIN`` is the 112 name of the authorization plugin. Specific plugins may require 113 additional options, which are described in the respective sections 114 below. 115 116 CURRENCY 117 Currency in which this plugin is to be paid. Must match the 118 currency given in COST. (This option should eventually be 119 removed, as it is redundant.) 120 121 COST 122 Fee the user has to pay to obtain a challenge from this 123 authorization plugin during recovery. 124 125 ENABLED 126 ``yes`` to enable this plugin, ``no`` to disable. 127 128 129 SMS Authorization options 130 ^^^^^^^^^^^^^^^^^^^^^^^^^ 131 132 COMMAND 133 Helper command to run to send SMS. The command will be given the phone number as its first argument. The message to be transmitted will be passed via STDIN. 134 135 Email Authorization options 136 ^^^^^^^^^^^^^^^^^^^^^^^^^^^ 137 138 COMMAND 139 Helper command to run to send E-mail. The command will be given the e-mail address as its first argument. The message to be transmitted will be passed via STDIN. 140 141 142 File Authorization options 143 ^^^^^^^^^^^^^^^^^^^^^^^^^^ 144 145 The ``file`` method writes the challenge code to a file instead of sending 146 it anywhere. It is meant for testing and for exercising user interfaces; 147 anyone who can read the file can pass the challenge, so it must not be 148 enabled on a production provider. 149 150 DIRECTORY 151 Directory the challenge files are written to. The file name is derived from 152 the (client-supplied) truth data, and a name that would escape this 153 directory is refused. Defaults to ``$TMPDIR/anastasis-file-challenges``, 154 which is a predictable name in a shared directory: on a multi-user host, set 155 this to a directory only the provider can read. 156 157 158 Post Authorization options 159 ^^^^^^^^^^^^^^^^^^^^^^^^^^ 160 161 COMMAND 162 Helper command to run to send physical mail. The command will be given the mailing address address as its first argument in JSON object fields 'full_name', 'street', 'city', 'postcode' and 'country'. The message to be transmitted will be passed via STDIN. 163 164 165 IBAN Authorization options 166 ^^^^^^^^^^^^^^^^^^^^^^^^^^ 167 168 CREDIT_IBAN 169 IBAN number where the consumers must 170 wire the money to for authentication. 171 172 BUSINESS_NAME 173 Name of the account holder. 174 175 WIRE_GATEWAY_URL 176 Base URL of the LibEuFin wire gateway (Anastasis facade). 177 178 WIRE_GATEWAY_AUTH_METHOD 179 Authentication method used to talk to the LibEuFin wire gateway, i.e. 'basic' for HTTP basic authentication. 180 181 USERNAME 182 Username to use when using HTTP basic authentication. 183 184 PASSWORD 185 Password to use when using HTTP basic authentication. 186 187 188 Postgres database configuration 189 ------------------------------- 190 191 The following options must be in the section ``[statis-postgres]`` if 192 ``postgres`` was used for the database under ``DB`` in the 193 ``[anastasis]`` section. 194 195 CONFIG 196 Path under which the Postgres database is that the service 197 should use, i.e. ``postgres://anastasis``. 198 199 200 SEE ALSO 201 ======== 202 203 anastasis-httpd(1), anastasis-config(1) 204 205 BUGS 206 ==== 207 208 Report bugs by using https://bugs.anastasis.lu/ or by sending electronic 209 mail to <contact@anastasis.lu>.