苹果登录(可选)
终端用户可能希望使用苹果账号登录 RainMaker 移动应用。 本节将介绍如何为终端用户配置苹果登录。
前提条件
已创建苹果开发者账号,并已注册开发者项目 (Apple Developer Program),网址为 https://developer.apple.com/programs/enroll。
已部署 ESP-RainMaker-Core。
已创建自定义域。(请参阅 配置自定义域名)
配置苹果登录
配置苹果开发者账号
若您还未创建苹果应用 ID,请在苹果开发者控制台 创建应用 ID。
在左侧点击
Keys。点击
+图标增加新的密钥。

- 在
Key Name字段输入密钥的名称,并在下方选择Sign in with Apple。

在
Sign in with Apple一栏右侧点击Configure。在
Primary App ID字段选择您的应用 ID,格式为 "<teamId>.<bundleId>"。其中的 Team ID 值和 Bundle ID 值请参见 创建应用 ID。

点击
Save保存配置。在
Register a New Key页面,点击Continue。检查更改,并点击
Register以创建新的密钥。记下密钥 ID 并下载密钥文件,在 RainMaker 管理面板中配置苹果登录时将会用到这些内容。
点击
Identifiers,然后点击+图标。

- 从列表中选择
Service IDs并点击Continue。

在
Register a Services ID页面,选择Sign in with Apple以启用服务,然后选择Configure。在
Identifier和Description字段为您的服务填写标识符和描述。

记下标识符,即您的服务 ID (Services ID)。在 RainMaker 管理面板中配置苹果登录时将会用到这一 ID。
点击
Register以注册服务 ID。

重新回到标识符页面,点击您在上述步骤中已经注册的服务 ID。
点击
Configure以配置您的域和回调 URL。此处配置的域应当和您在 AWS Cognito 中创建的域保持一致,回调 URL 的格式应当为 "https://<domain>/oauth2/idpresponse"。

在 RainMaker 管理面板中将苹果配置为身份提供商
- 用您的管理员账号登录 RainMaker 管理面板,打开
Deployment Settings。

- 打开
Identity Providers。

- 点击
+图标,添加身份供应商配置。 - 从
Identity Provider下拉菜单中选择SignInWithApple。 - 添加
Client ID,也即 配置苹果开发者账号 小节步骤 15 中提到的服务 ID。 - 在
Provider Name字段输入 "Apple"。 - 在
Key ID字段输入 配置苹果开发者账号 小节步骤 1 和 10 中提到的密钥 ID。 - 在
Team ID字段输入 创建应用 ID 小节步骤 1 中提到的团队 ID。 - 在
Private Key字段输入 配置苹果开发者账号 小节步骤 10 中所下载文件的内容。

将苹果启用为身份提供商
- 用管理员账户登录 RainMaker 管理面板,打开
Deployment Settings。

- 打开
Cognito Configurations标签页。

- 依据自身需求,为客户端启用
signinwithapple身份提供商,这将允许用户使用苹果账号登录到各自的客户端。
配置回调 URL(重定向 URIs)
回调 URL 指明了用户使用第三方认证成功登录后将被重定向的网页。用户使用第三方认证服务成功注册后,将被重定向至这些网页之一。
如果需要用户重定向至手机应用,您应为该应用设置回调 URL。设置 iOS 应用回调 URL(重定向 URI),请参考 为 iOS 应用获取重定向 URL。
在 RainMaker 管理面板中配置回调 URL,请参考 配置 Cognito 回调 URL。
验证苹果登录
本节将介绍如何验证苹果登录是否已配置成功。
- 登录 AWS 控制台,打开 Cognito 服务,点击
User pools以获取用户池列表。

点击
rainmaker-user-email-mobile-pool。
打开
App integration,向下滚动页面并打开App Client Lists。
点击
rainmaker-user-email-mobile-pool-client,此处可获取应用客户端相关信息。

- 向下滚动页面并点击
View Hosted UI。

- 在跳出的窗口中,您可以看到以下选项:

点击
Continue with Apple。输入您的苹果 ID 和密码。
点击
Next,您将被重定向到您在 Cognito 应用客户端中配置的回调 URL。在浏览器网址栏中,您可以找到您的授权代码。

注意 - 本示例已将回调 URL 设置为乐鑫官网主页网址,因此会被重定向至该页面。
电子邮件转发服务
苹果私人邮件转发服务 适用于重视隐私的用户。在设置账号时,用户可以将私人电子邮件地址设为私密信息。使用转发服务向这些用户发送电子邮件,您需要注册您的出站电子邮件域名、子域名或电子邮件地址。此外,您必须为所有注册域名创建 SPF (Sender Policy Framework) 的 DNS TXT 记录。
查看您的组织电子邮件域名是否已创建 SPF 记录,请参考以下步骤:
- 前往 https://dnschecker.org/spf-record-validation.php。
- 输入您的电子邮件域名并点击
Validate SPF Record。 - 向下滚动页面。如果您看到的页面如下图所示,则代表您的电子邮件域名已创建 SPF 记录。

添加域名,请参考以下步骤:
- 在
Certificates, Identifiers & Profiles页面,从侧边栏中选择More,然后点击Configure Sign in with Apple for Email Communication。 - 在
Email Sources部分,点击左上角的添加按钮+。 - 输入您将用于电子邮件通信的域名、子域名和唯一电子邮件地址,不同名称之间用逗号隔开,然后点击
Next。 - 确认您输入的电子邮件域名信息无误后,点击
Register。 - 如果您注册的电子邮件域名已通过 SPF 验证,您将看到以下内容:

