微信只向ICP验证的域发送数据,但Salesforce域,包括salesforce.com,force.com都没有通过ICP验证。 因此,Charket 需要使用 ICP 验证域 charket.com.cn 将微信消息中继到 Salesforce。 这种域中继是一个 DNS 映射(一个 CNAME 记录),它告诉微信将数据发送到哪里。 为了支持这样的 DNS 映射,需要在 Salesforce 中创建自定义域 xxx.customer.charket.com.cn(此 URL 单独提供)。 使用自定义域时,HTTPS 是通过使用 SSL 证书加密所有数据来保护通信的必要条件。
添加一个 Domain
方法一:如果用户有 Charket Domain “xxx.customer.charket.com.cn” 和 Charket 证书,则直接跳转到步骤 2开始配置。
方法二:如果用户有 Salesforce Community 的 Licenses,则定位到 Setup | Domains, 点击 Add a Domain,Domain Name 输入 “xxx.customer.charket.com.cn ”,HTTPS Option 选择 “Salesforce serves the domain over HTTPS using a Salesforce content delivery network (CDN) partner” 选项,点击 Save。
方法三:如果用户已经有 Charket Domain 和 Charket 证书,也有 Community 的 License,则建议将 Charket 证书改成 Salesforce 证书。
- 删除该 Domain 关联的 Custom URL
在 Setup 中搜索 Domains, 点击 Domain Name,删除关联的 Custom URL。
- 编辑 Domain,将 HTTPS 从第一个选项切换到第二个选项,点击 Save。
- 在更新 Domain 点击 Save 后,页面会显示配置正在进行中。然后在 Domain 详细页面点击 New Custom URL, 创建一个和之前一样的 Custom URL。等大约 3 小时左右会接收到 “Provisioning complete for xxx” 配置完成的邮件提醒后, 在 Domain 详细页面点击 Activate 去激活。
在这等待的 3 小时左右,Charket 功能不能正常工作。
方法四:如果是全新用户,既没有 Charket 证书也没有 Community 的 License。则需要先生成 Charket 证书,再创建 Domain。
- 生成 SSL 证书
第一步是生成 SSL 证书和包含证书公钥的文件。 此文件将提交给 Charket 与之合作以签署证书的 CA。 CA 将返回一个签名文件,该文件需要上传到 Salesforce 以完成 SSL 证书的签名。 这是颁发 SSL 证书的最安全方法,因为证书的私钥不会保存在您的 Salesforce 中以外的任何地方。
要生成证书及其公钥文件,请转到 “Setup | Security | Certificate and Key Management”,然后点击 Create CA-Signed Certificate。 按照截图填写信息。为了确保证书安全,则不要选中 Exportable Private Key。 Common Name 中输入 Charket 域名(域名需单独提供)。 点击 Save。
在证书预览页面,点击 Download Certificate Signing Request 下载公钥文件,发送文件到 security@charket.com,邮件标题为 “CRS Request File from Org ID” (用 Salesforce Org ID 替换 “Org ID”) , 等待电子邮件确认,这可能会等待一个工作日。在接收到 Signed 文件后,点击 Upload Signed Certificate 上传文件去激活证书。
- 创建 Domain
在 Setup 中搜索 Domains,点击 Add a Domain, Domain Name 输入 “xxx.customer.charket.com.cn ”,HTTPS Option 选择第一个选项,选择 Charket 证书,点击 Save。