Apple MusicKit开发人员令牌

时间:2018-01-20 20:15:57

标签: ios token

我正在关注Apple的musickit指南,我一直在寻找很长时间来解决以下问题:

Guide apple

我已经创建了令牌。

Token

但我不知道下一步该做什么:"用你的MusicKit私钥签名(请参阅创建一个MusicKit私钥)。然后使用带有P-256曲线和SHA-256哈希算法的椭圆曲线数字签名算法(ECDSA)对令牌进行加密。在算法标题键(alg)"中指定值ES256。

我不知道如何加密ECDSA或在哪里。

我不知道在哪里放置私人关键字。

2 个答案:

答案 0 :(得分:0)

以下是为NodeJS生成令牌的示例代码:

const fs = require('fs');
const jwt = require('jsonwebtoken');

const privateKey = fs.readFileSync('AuthKey_1234.p8').toString(); // file downloaded when you created your key
const jwtToken = jwt.sign({}, privateKey, {
  algorithm: 'ES256',
  expiresIn: '180d',
  issuer: '1234V73RKG', // Your team ID
  header: {
    alg: 'ES256',
    kid: '1234VPQXH4' // ID from the Key with MusicKit permissions
  }
});


console.log("token:", jwtToken, "\n");

JWT节点模块为您完成了所有艰苦的工作。

答案 1 :(得分:0)

如果您仍然对此感到好奇,那么pelauimagineering's example对我来说非常合适。

如果您还没有: 下载 pip ,然后下载两个库: pyjwt 密码学

在终端上执行:

$ sudo easy_install pip
$ sudo pip install pyjwt
$ sudo pip install cryptography  
  • 克隆pelauimagineering的存储库并编辑music_token.py 文件,用您下载的.p8密钥替换秘密变量。
  • 将keyId替换为在developer.apple.com上找到的值 在证书>密钥下,然后单击您所应用程序的密钥 下载的.p8文件,您将在其中看到密钥ID。
  • 最后,用在开发人员帐户developer.apple.com/account上找到的10位数字密钥替换.py文件上的teamId变量,然后单击“成员身份”标签,您将看到10位数字ID。请记住,您需要开发者令牌才能执行此操作,费用为每年99美元。