跳到正文
AskTable

文档反馈

当前页面部署认证配置/deploy/authentication

0 / 5,000

反馈将发送给维护团队。

前往控制台
前往控制台

部署与运维

部署认证配置

通过静态环境变量配置 Google、GitHub、微信、邮箱登录、SMTP 和 SMS。

Google、GitHub、微信、邮箱登录、SMTP 与 SMS 属于整个 AskTable 实例,只从环境变量读取。修改后需要重启 Web 和 Worker;系统设置中不再提供这些认证配置。

部署模式与 Region

AT_REGION 默认是 cn,也可设置为 global。私有部署(AT_DEPLOY_MODE=local)始终使用邮箱作为账号标识,不因 Region 改变。国内 Cloud 使用手机号,海外 Cloud 使用邮箱。部署后应固定 Region;变更需要先规划身份数据迁移。

使用 Docker Compose 时,将下方配置合并到原有 asktable.environment 中。修改环境变量后执行 docker compose up -d asktable,让容器按新配置重建;单纯重启容器不会读取修改后的 Compose 环境变量。Web、Worker 分开运行时,两者都要更新并重启。

OAuth 提供商

提供商环境变量
GoogleGOOGLE_CLIENT_ID、GOOGLE_CLIENT_SECRET
GitHubGITHUB_CLIENT_ID、GITHUB_CLIENT_SECRET
微信WECHAT_APP_ID、WECHAT_APP_SECRET

每组 ID 和 Secret 必须同时设置。整组留空会禁用该提供商,只填一项会让应用在启动时失败并指出不完整配置。

docker-compose.yaml
services:
  asktable:
    environment:
      GOOGLE_CLIENT_ID: ${GOOGLE_CLIENT_ID:-}
      GOOGLE_CLIENT_SECRET: ${GOOGLE_CLIENT_SECRET:-}
      GITHUB_CLIENT_ID: ${GITHUB_CLIENT_ID:-}
      GITHUB_CLIENT_SECRET: ${GITHUB_CLIENT_SECRET:-}
      WECHAT_APP_ID: ${WECHAT_APP_ID:-}
      WECHAT_APP_SECRET: ${WECHAT_APP_SECRET:-}
      SMS_API_URL: ${SMS_API_URL:-}
      SMS_API_KEY: ${SMS_API_KEY:-}

GET /system/info 只返回启用状态和非敏感 Client ID,不返回 Secret,也不包含任何组织级企业微信/WPS/飞书/钉钉配置。

国内云

Cloud + CN 生产的统一登录页只提供微信;组织专属的企业微信/WPS/飞书/钉钉登录地址仍可使用。微信、企业微信、WPS、飞书或钉钉认证成功后先建立正常会话;缺少手机号时,统一 setup 页面会要求完成验证后才能进入产品工作区。启动时必须同时配置 WECHAT_APP_ID、WECHAT_APP_SECRET、SMS_API_URL 和 SMS_API_KEY;任一缺失都会让进程明确报错并停止。

邮箱登录与 SMTP

docker-compose.yaml
services:
  asktable:
    environment:
      EMAIL_LOGIN_ENABLED: "true"
      EMAIL_SMTP_PROVIDER: aliyun # aliyun | custom
      EMAIL_SMTP_HOST: ""         # custom 时必填
      EMAIL_SMTP_PORT: "465"
      EMAIL_SMTP_USERNAME: ""
      EMAIL_SMTP_PASSWORD: ${EMAIL_SMTP_PASSWORD:-}
      EMAIL_SMTP_USE_SSL: "true"
      EMAIL_SENDER_ADDRESS: noreply@example.com

aliyun 使用固定的阿里云邮件推送主机和 SSL 端口,发件地址同时作为用户名;custom 使用给定的 Host、Port 与 SSL 选项,Username 留空时回退到发件地址。SMTP 未完整配置时,依赖邮件发送的任务会跳过邮件投递。

私有部署和海外 Cloud 中,若 Google、GitHub、微信全部未启用,即使 EMAIL_LOGIN_ENABLED=false,系统也会保留邮箱登录兜底,避免部署完全没有登录入口。组织级企业微信/WPS/飞书/钉钉不参与这个判断。

企业微信、WPS、飞书和钉钉请由组织 Owner/Admin 在登录集成中连接,参见 企业集成登录。旧版本升级要求见 迁移。