首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >向Apple登录:确认我的域名不起作用

向Apple登录:确认我的域名不起作用
EN

Stack Overflow用户
提问于 2019-08-08 09:41:42
回答 5查看 6.2K关注 0票数 11

我在我的移动应用程序中集成了登录和苹果。我遵循了developer门户中提供的配置步骤,并下载了apple-developer域-Association.txt文件,并将其放在给定路径的服务器上。

现在,该文件正在从网页浏览器加载,但我无法验证我的域名苹果开发者帐户。它给了我一个错误消息“域验证失败”。

有人有同样的问题吗?如何获得成功的验证

EN

回答 5

Stack Overflow用户

发布于 2019-09-12 07:31:26

要验证要使用Apple文件配置登录域,必须公开访问apple-developer-domain-association.txt文件。

代码语言:javascript
复制
https://{YOUR_DOMAIN}/.well-known/apple-developer-domain-association.txt

确保

  1. 与电子邮件地址相关的域和域必须符合发件人策略框架(SPF)标准。
  2. 必须通过https访问。http不起作用。
  3. 没有重定向,甚至不能重定向到wwww。上面提到的示例url必须服务于apple-developer-domain-association.txt文件,而不需要任何重定向。

提示:如果您使用apple-developer-domain-association.txtwww服务,则必须在developer.apple.com上注册域www.{YOUR_DOMAIN}白色配置登录和苹果配置。要做到这一点,您必须确保www.{YOUR_DOMAIN}是符合SPF的。

票数 5
EN

Stack Overflow用户

发布于 2019-10-03 04:57:40

继续并添加到@Bilal

答:如果域不符合SPF,则在尝试将其添加到开发人员门户时,将立即注意到

如果你不确定你的网站是否被重定向,你可以在http://www.redirect-checker.org/中检查它,或者只使用邮递员,在请求设置中禁用“自动重定向”选项

C. Apple要求您的服务器必须支持传输层安全(TLS) 1.2协议和下面列出的密码套件之一:

代码语言:javascript
复制
TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256
TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA
TLS_DHE_RSA_WITH_AES_128_GCM_SHA256
TLS_DHE_RSA_WITH_AES_128_CBC_SHA256
TLS_RSA_WITH_AES_128_GCM_SHA256
TLS_RSA_WITH_AES_128_CBC_SHA256

对我来说,问题是我根本不知道我们的服务器会这么做,我的虔诚的人帮我解决了这个问题,只是为了验证。

最好的解决方案IMO只是使用您自己的中继微服务与一个独特的专用领域.

票数 2
EN

Stack Overflow用户

发布于 2019-10-10 21:00:15

为了扩展@MTZ4 4的响应(通过了BTW,因为您已经掌握了它),下面是我需要完成的过程,并给出一些其他不太熟悉解决这类问题的人的一些提示。

在我的例子中,我让CloudFlare同时处理DNS和TLS密码证书,并让Heroku为站点服务。

第一步是确定您的TLS提供程序是否服务于苹果所需的适当TLS密码器。

代码语言:javascript
复制
TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256
TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA
TLS_DHE_RSA_WITH_AES_128_GCM_SHA256
TLS_DHE_RSA_WITH_AES_128_CBC_SHA256
TLS_RSA_WITH_AES_128_GCM_SHA256
TLS_RSA_WITH_AES_128_CBC_SHA256

最简单的方法之一是使用SSL实验室证书检查器。只需输入根域并让报表运行(只需几分钟)。在报告响应中,查找密码套件部分,并验证苹果想要的TLS密码器是否可用。在下面的图片中,你可以看到它们是橙色的,标记为弱的。

您可以忽略弱状态,这是因为这些密码不使用临时密钥,也不会在TLS1.3中使用。

如果您希望进行更全面的测试,请安装NMAP,然后下载ssl-enum-密码脚本。安装NMAP并下载脚本之后,针对您的域执行脚本:

nmap --script ssl-enum-ciphers -p 443 my-root-domain.com

这会产生一个结果集,如下所示:

再次查找TLSv1.2部分,并检查您的密码列表与苹果的列表。如果它们不存在(它们在上面的图像中丢失),那么这就是您的问题所在。

那怎么解决呢?有几个选项,这都取决于您的TLS提供程序,它可能是您的web主机,也可能是您的DNS主机取决于您的配置。

对于我们来说,我们使用CloudFlare作为我们的DNS提供程序。CloudFlare还提供了TLS密码。由于CloudFlare不支持苹果需要的密码(上面的NMAP映像),而且由于对TLS1.2的安全考虑而不添加它们,所以我们不得不禁用CloudFlare的代理服务,以允许由我们的托管服务(Heroku)提供的TLS证书。

事实证明,这很容易。只需登录到CloudFlare,转到DNS条目并更改流量路由行为(单击橙色云将其变为灰色以进行验证,然后在验证完成后再次单击它)。有关更多信息,请参见CloudFlare支持页面

完成此操作后,Heroku正在为TLS密码提供服务,其中包括Apple必需的密码(如上面的SSL实验室映像所示)。

最终,不管是谁为你的TLS密码服务,都必须包括苹果需要的密码。如果上面的测试没有显示正确的密码,请检查您的DNS/TLS服务和您的托管提供商,看看它们是否支持它们。如果他们没有,那么你可能需要转换。

最后,还值得注意的是,在Apple的开发人员门户中,当您单击验证文件的下载按钮时,不要再次单击它!每次单击该按钮时,验证文件都会更改,因为它似乎是动态生成的。

只需修复所有TLS问题,然后登录到门户,下载文件,上传到服务器,然后验证。

我确实在苹果的支持下完成了其中的一些工作,他们正在考虑在验证页面中添加一些文档,说明需要哪些密码,这样其他人就不会遇到同样的问题。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57409633

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档