首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Apple推送通知认证密钥(沙盒&生产)

Apple推送通知认证密钥(沙盒&生产)
EN

Stack Overflow用户
提问于 2016-09-24 10:25:35
回答 1查看 20.7K关注 0票数 22

最近,我注意到在为给定的iOS客户端创建证书时出现了一个新选项。

该选项的标题为

苹果推送通知认证密钥(沙盒&生产)

获取用于生成服务器端令牌的身份验证密钥。您可以使用这些令牌作为通知请求证书的替代方案。

一个认证密钥可以用于多个应用,并且不会过期。

如何设置它呢?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-09-24 13:06:52

基于苹果推送通知令牌的身份验证是使用提供商证书连接到APN的替代方案。提供者API支持JSON Web Token (或JWT),这是一种开放标准,可以将身份验证声明与推送消息一起传递给APN。

要生成提供程序令牌,请获取用于签署令牌的私钥,如Creating a Universal provider Tokenin App Distribution Guide中所述。您应该构造一个包含10个字符的密钥ID (kid)的头部的令牌。令牌声明部分包含颁发者(iss),这是一个10个字符的团队ID。您的团队ID和密钥ID值可以从您的开发人员帐户获取。索赔还应包含在(iat)发布,这是生成令牌时从UTC纪元开始的秒数。必须使用使用P-256曲线的椭圆曲线数字签名算法(ECDSA)和指定为算法密钥(alg)中的值的SHA-256散列算法(ES256)对令牌进行签名。

{
    "alg": "ES256",
    "kid": "ABC123DEFG"
}
{
    "iss": "DEF123GHIJ",
    "iat": 1437179036
 }

有关其他信息以及用于生成签名JSON web令牌的可用库的列表,请参阅https://jwt.io

这是一个对JSON Web令牌(或JWT)进行签名的快速库:kylef/JSONWebToken.swift

注意:APN仅支持使用ES256算法签名的提供商令牌。不安全的JWT或使用其他算法签名的JWT将被拒绝,并返回一个指示无效提供程序令牌的响应。

来源:APPLE : Provider Authentication Tokens

WWDC2016-第724期:Token Based Authentication

PS:

最大的不同之处在于,密钥方式不会过期,而证书将在一年后过期。

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

https://stackoverflow.com/questions/39671902

复制
相关文章

相似问题

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