微信运营系统配置与接入准备
基础条件
使用微信运营后台前应确认:
- 微信后台服务、网关、数据库和配置中心运行正常。
- 网关能够通过
/weixin/**访问微信后台服务。 - 微信回调地址使用公网可访问的 HTTPS 域名。
- 服务器时间保持准确,避免签名和 access token 请求失败。
- 图片、证件和确认文件使用的存储服务可以被微信访问。
- 生产环境已经配置日志脱敏、数据备份和最小权限角色。
账号接入材料
| 账号类型 | 主要材料 | 配置位置 |
|---|---|---|
| 自有公众号 | AppID、AppSecret、Token、EncodingAESKey | 公众号账号管理 |
| 自有小程序 | AppID、AppSecret、Token、EncodingAESKey | 小程序账号管理 |
| 第三方平台 | 平台 AppID、AppSecret、Token、消息加解密 Key、管理员联系电话 | 配置中心 wx.component |
| 第三方平台授权账号 | 账号管理员扫码授权 | 第三方平台授权账号管理 |
| 微信支付 | 商户号、商户密钥、证书等 | Pro 独立支付配置模块,与微信账号配置分开 |
敏感材料只能保存在后台凭据配置或安全密钥管理系统中,不应出现在 Wiki、SQL、Git、截图或工单正文。
凭据密钥环
微信账号敏感字段使用统一密钥环加密。最小配置示例:
wx:
credentials:
primary-key-id: v1
keys:
v1: ${WX_CREDENTIAL_KEY_V1:}
WX_CREDENTIAL_KEY_V1 应为随机生成的 32 字节密钥,并以 Base64 字符串传入。配置要求:
- 同一环境的全部微信后台实例使用相同密钥。
- 不同环境使用不同密钥。
- 密钥由部署平台 Secret 或专业密钥管理系统保存。
- 密钥丢失后无法从数据库密文反推,应保留安全备份。
密钥轮换方法见凭据安全、租户与权限。
第三方平台配置
wx:
component:
app-id: 第三方平台AppID
app-secret: 第三方平台AppSecret
token: 消息校验Token
aes-key: 消息加解密Key
phone: 平台管理员联系电话
配置值必须与微信开放平台完全一致。第三方平台授权事件接收地址、消息与事件接收地址应使用实际网关域名,并保证微信可以访问。
微信侧回调配置
| 场景 | 配置要点 |
|---|---|
| 公众号消息与事件 | URL、Token、EncodingAESKey 与后台账号配置一致 |
| 小程序消息与事件 | 保证普通消息、客服、物流轨迹和投诉等事件可以进入事件中心 |
| 第三方平台授权事件 | 接收 component_verify_ticket、授权和取消授权通知 |
| 第三方平台消息事件 | 根据微信要求配置授权账号消息与事件接收地址 |
| 订阅通知回执 | 回调到达后可更新消息明细状态 |
启用回调后先在事件中心确认事件能够到达、解密、去重和完成处理。
网络与安全设置
- 出站网络允许访问微信官方 API 域名。
- 回调域名证书有效,证书链完整。
- 反向代理保留真实请求路径和必要请求头。
- 防火墙或 WAF 不应拦截微信合法回调。
- access token、证件材料、手机号和 OpenID 不写入普通日志。
- 平台域名、解绑、发布、回退、密钥轮换等高风险操作使用独立权限。
角色准备
建议至少划分以下角色:
- 公众号运营:内容、用户、模板消息和订阅通知。
- 小程序运营:基础配置、发布、交易、备案和物流。
- 客服:客服账号、会话、聊天记录和输入状态。
- 运维:账号健康、API 日志、事件中心和告警。
- 平台管理员:第三方平台、授权账号、平台域名、Open Platform 和密钥管理。
角色应同时拥有父菜单和所需按钮权限,不应直接把全部微信权限授予普通运营人员。
接入检查清单
- 使用账号专属页面新增或授权公众号、小程序。
- 确认公众号
app_type=2,小程序app_type=1。 - 在账号健康中心完成凭据检测。
- 使用只读功能查询微信侧账号状态。
- 触发一条测试事件并在事件中心确认处理成功。
- 使用可逆操作验证写权限,例如添加后删除测试成员。
- 检查 API 日志中没有敏感明文。
- 按实际岗位授予菜单和按钮权限。