跳转到内容

安装 Arcanum

Arcanum 以单个 Docker 镜像加一个 Postgres 数据库的形式交付。一切——WSAA 签名、加密的私钥、 发往 ARCA 的 SOAP 流量——都在你的容器内部完成。没有任何环节通过第三方进行认证。

Docker

推荐的途径。随附的 docker compose 会把应用和 Postgres 一起启动。

两个密钥

一个 API key(保护 REST 接口)和一个主密钥(在静态存储时加密私钥)。 用 openssl 生成它们。

一份 ARCA 证书

每个 CUIT 一份,可用于测试环境或生产环境。Arcanum 生成 CSR;你将其上传到 ARCA, 再把 .crt 粘贴回来。

先生成这两个密钥:

Terminal window
openssl rand -hex 24 # ARCANUM_API_KEY (protects the API)
openssl rand -hex 32 # ARCANUM_MASTER_KEY (encrypts the private keys — keep it safe)
Terminal window
git clone https://github.com/diegoparras/arcanum.git && cd arcanum
cp .env.example .env
# edit .env: set ARCANUM_API_KEY and ARCANUM_MASTER_KEY
docker compose up -d

该 compose 文件会一起启动 Postgres 和应用,映射端口 8094,并在未被停止时自动重启。 然后打开 http://localhost:8094

  1. 打开 http://localhost:8094 并登录(ARCANUM_ADMIN_USER / ARCANUM_ADMIN_PASS,或者 若你留空,则使用日志中仅打印一次的密码)。
  2. 从菜单中选择环境——测试环境生产环境(ARCA 环境)。 你之后可以热切换它,无需重新部署。
  3. 添加一个客户(CUIT)。Arcanum 生成 CSR;将其上传到 ARCA,再把 .crt 粘贴回来。 私钥以加密形式存储。
  4. 按每项服务的启用指南授权各个 Web 服务,然后从面板或通过 REST 发起你的第一次 调用。

所有配置都存放在 .env 中(从 .env.example 复制而来)。

VariableDefault说明
PORT8094应用监听的端口。
ARCANUM_ENVhomo默认 ARCA 环境:homo(测试)或 prod。可在界面中切换。
ARCANUM_API_KEY(empty)REST API 的密钥(X-API-Key)。为空 → 自动生成并在日志中打印一次。
ARCANUM_MASTER_KEY(empty)32 字节十六进制密钥,在静态存储时加密私钥。
DATABASE_URL(compose)PostgreSQL 连接字符串。compose 文件会把它接到随附的 arcanum-db
POSTGRES_USER / POSTGRES_PASSWORD / POSTGRES_DBarcanum随附 Postgres 的凭据。
ARCANUM_ADMIN_USER(empty)网页面板的管理员用户名。
ARCANUM_ADMIN_PASS(empty)管理员密码。为空 → 自动生成并在日志中打印一次。
ARCANUM_OIDC_ISSUER(empty)Lockatus issuer URL——设置后即可联合登录(可选 SSO)。
ARCANUM_OIDC_CLIENT_ID(empty)联合时在 Lockatus 中的应用 slug(arcanum)。
ARCANUM_OIDC_CLIENT_SECRET(empty)联合时的 OIDC 客户端密钥。