是否有关于如何根据用户名/密码为iCloud用户生成“票证”的分步说明。 我想构建一个访问iCloud数据(服务器到服务器)的服务,而无需存储iCloud用户名或密码。

我的理解是您使用用户名/密码从iCloud生成Kerberos票证。 这是基于iOS for Sunrise如何使用iCloud凭据访问我们的日历的答案 但我没有在网上找到如何做到这一点的说明。

有谁知道这是怎么做到的吗? 谢谢!

===============>>#1 票数:3

让我首先指出,默认情况下,iCloud应用程序存储在容器中“沙盒化”。 签名的应用程序只能访问自己的容器,而无需使用API​​密钥对其他应用程序容器进行身份验证。 您可以使多个应用程序共享同一个容器,或者在需要时在同一个应用程序中使用多个容器,但实质上您必须是所有应用程序的开发人员或具有执行此操作的明确权限。 查看将iCloud合并到您的应用程序中启用CloudKit以获取更多详细信息。

其他 (非appstore)应用程序和服务可以通过CloudKit Web服务进行身份验证以使用应用程序的数据:

  1. 对iCloud进行身份验证(基于重定向,因此凭据仍然不会泄露,只有用户和iCloud服务器本身才知道);
  2. 使用您的应用程序API密钥进一步验证;

正如Adam Taylor已经指出的那样, 这里详细描述了这个过程。

以上所述,如果我理解正确, 您希望能够访问所有用户的iCloud数据 我认为,由于多种原因,您将无法这样做:

  1. 数据受应用程序密钥保护,因此除了基本凭据之外,您还需要访问容器;
  2. 我确信Apple有一个设计策略,绝不会以纯文本形式询问用户凭据。 明确要求用户提供凭据将违反他们的策略,即使事实证明它不是,因为您必须在某处输入/发送凭据,因此凭证不会对您有所帮助。 但是,所有iCloud身份验证机制都只能由最终用户请求身份验证。

这就是为什么我不相信只使用用户凭据并访问所有iCloud数据的原因。 现在,我为什么日出工作2美分:

据我所知,Sunrise应用程序可以工作,因为日历数据设计为通过CalDav共享,它适用于具体的URL,因此您可以在各种日历客户端应用程序中导入和链接您的日历。 可以通过一些调查找到该URL。 CalDAV类似于IMAP和POP3用于邮箱访问。

非常友好地详细说明您尝试提取的数据类型(特定于苹果应用程序,特定于开发人员应用程序,文档,键值对或其他内容),而我或其他用户可能会进一步帮助您。

  ask by cortfr translate from so

未解决问题?本站智能推荐:

1回复

认证服务器建议

我想知道..我正在为我们的小型企业设置身份验证服务器,作为学习的机会,但它也必须具有功能性和可用性。 要求是:-用户通过该服务器在笔记本电脑上登录-用户登录到我们的NAS(Samba共享)-用户可以登录到多个服务和服务器-我希望它给我一种访问控制的形式-必须是linux / CentOS的
1回复

让IIS在Intranet环境中模拟Windows用户到SQL服务器

我正在使用C#和ASP.NET MVC开发一个Intranet站点。 我在一台机器上安装了SQL Server,而在另一台机器上运行IIS。 我希望用户访问Intranet站点,而不提示用户Internet Explorer将用户Windows凭据发送到IIS,然后将这些凭据传递给sql s
1回复

当链接的服务器位于同一服务器上时,Diff服务器上的客户端是否为双跳?

我正在努力解决一个谜。 我们有两个驻留在同一服务器上的SQL Server实例。 SQL实例A链接到SQL实例B。使用直通身份验证进行连接。 呼叫服务在另一台服务器上。 没有为Kerberos委派设置任何设置,没有SPN,没有委派信任等等。但是,通过链接服务器连接运行分布式查询时,我们没
1回复

通过kerberos或任何安全协议将linux客户端应用程序验证为Windows服务器应用程序

我需要一些指南或关键字,可以用于其他研究。 假设有使用C ++编写的客户端和服务器应用程序。 有可能将blob从客户端传递到服务器,反之亦然。 在Windows上,我们可以介绍Kerberos利用率,生成,处理此类Blob,接受它,模拟线程等。msdn上有一些示例。 它不是那么简单,
3回复

如何从我自己的应用程序与kerberos服务器进行交互

我的网络有一个用于用户名/密码验证的kerberos服务器。 运行我的应用程序的机器具有正常运行的kerberos客户端,因此用户可以使用kinit等。 如何从我自己的自定义应用程序以编程方式与服务器交互? 示例的首选语言是C. 我希望我的应用程序的用户在访问某些功能之前对ker
1回复

.NET应用程序Kerberos,Sharepoint和Sql服务器身份验证

在由IIS托管的C#Web应用程序中,我希望使用技术用户连接到数据库,而我的web.config(用户AD)中没有任何凭据。 此外,我的应用程序通过kerberos身份验证与Sharepoint库进行通信。 模式 我的问题是我不知道该怎么做。 到目前为止,数据库凭据都位于web.
1回复

在apache2 Web服务器上设置Kerberos身份验证

我正在尝试设置一个Web服务器,以便在向用户显示页面之前使用kerberos对用户进行身份验证。 我已经按照一些在线说明进行操作,但是当我到达网页并输入凭据时,该页面将再次重新加载登录窗口,并使我再次登录。 如果在登录窗口中单击“取消”,则会显示“ 401错误”页面,提示我无权访问该页面。
3回复

支持在Java 6上运行的JMX客户端/服务器上的Kerberos身份验证/授权

我有我的JMX服务器,它注册从本地文件读取的bean,并根据需要将它们提供给其他JMX客户端。 可以使用“jconsole”或在Tomcat容器下运行的Java应用程序访问服务器。 我想要的是添加身份验证,以防止“未知”身份访问JMX服务器。 为此,我使用以下JVM选项添加了Kerbe
2回复

我无法从Ansible主机通过AD向Windows机器进行身份验证。 Ubuntu 16.10上的“在Kerberos数据库中找不到服务器”

我无法从Ansible主机通过AD向Windows机器进行身份验证。 我有一张有效的kerberos票- 我的kerberos配置对我来说很好- 运行测试命令时ansible windows -m win_ping -vvvvv 我可以SSH到目标机器 我还可以
1回复

使用iCloud身份验证方法验证用户是否在我的应用程序中拥有帐户

我刚刚读了一篇文章,其中解释了如何从iCloud获取令牌以执行iOS平台的身份验证。 我们如何将Android和iOS与这种方法结合起来? Android如何知道该用户拥有iOS帐户? 我需要问哪种凭证来验证用户是否已在iOS平台上拥有帐户?