将Parse迁移到AWS - 多个iOS .p12证书

时间:2016-05-18 13:51:47

标签: ios amazon-web-services parse-platform migration amazon-sns

使用Parse,它可以支持最多6个证书。

按照以下说明操作:https://mobile.awsblog.com/post/Tx3NE69QDHI7LJK/Migrating-from-Parse-Push-to-Amazon-SNS

它似乎只支持1个证书,我是否必须创建一个新的移动中心项目来支持其他iOS .p12证书?

1 个答案:

答案 0 :(得分:2)

您说得对,Mobile Hub项目是针对单个Applicaton ID设计的,因此每个项目都支持单个Apple Push Certificate和/或Google GCM凭据。为每个证书/应用程序ID创建项目是一种方法,因为它还为每个应用程序用户添加了适当的权限以创建推送端点(SNS平台端点)。平台端点是SNS与设备令牌关联以直接发布到这些设备的内容。

多个项目的唯一问题是每个项目都会创建一个新的Cognito Identity Pool,因此,如果这对您很重要,您的应用将不会共享同一个身份池。例如,您有用户A在APP A上登录Facebook然后下载APP B并通过相同的Facebook帐户登录。在这种情况下,此用户将在两个应用程序中具有相同的身份。

替代选项是保留一个Mobile Hub项目,并为每个Apple推送证书创建 SNS平台应用程序,如果这些证书都具有唯一的应用标识符(应用程序) ID)。

如果您保留一个Mobile Hub项目并为每个证书创建多个SNS平台应用程序,则需要进行以下更改:

  1. 更改应用程序的Bundle Identifier,以匹配您为应用程序上传到SNS的证书的Bundle Identifier。 (例如“com.yourdomain.yourappname”)。实际上,您需要为这两个选项执行此操作。
  2. 您需要通过为每个应用程序提供对这些平台应用程序的访问权限来更新IAM角色(由Mobile Hub项目创建)。例如,每个Mobile Hub项目示例应用程序都具有与该项目的Cognito Identity Pool相关联的Authenticated和UNAuthenticated IAM Role。当您启用推送通知并上载.p12时,权限被添加到这些角色,允许应用用户将其设备令牌发送到SNS并创建SNS平台端点。由于每个项目只能添加一个证书,因此您需要更新那些具有您在SNS中创建的其他平台应用程序权限的IAM角色。
  3. 我希望你能选择任何一个选项。