美文网首页
AppStoreConnect的Token生成

AppStoreConnect的Token生成

作者: 佛祖拿屠刀 | 来源:发表于2020-02-06 20:37 被阅读0次

    JWT Token生成方案

    我当时找TestFlight的自动化方案找了半天没有一点点文章介绍,所以我就写一下。

    以下是Api的文档,然后Api里面的Token怎么生成本文来赘述一下。
    AppStoreConnect Api

    生成一个ApiKey

    1. 管理员身份的账号登陆 AppStoreConnect
    2. 打开 用户和访问,选择API Keys
    3. 点击 生成API Key 或者 + 按钮
    4. 输入一个当前key的别名
    5. 选择key的规则
    6. 点击生成
    7. 然后就会有一个名称,keyid,下载链接和其他信息。
    8. 点击下载 (这个东西很宝贵,不要外传)

    生成一个Request Token

    1. 生成一个 JWT Header
    2. 生成一个 JWT Payload
    3. 生成一个 JWT

    生成一个 JWT Header

    • Key id :在 用户和访问 -> API Keys 里面
    Header Field Value
    alg - 加密类型 ES256
    kid - Key id {KeyID}
    typ - Token 类型 JWT
    {
    "alg": "ES256",
    "kid": "2X9R4HXF34",
    "typ": "JWT"
    }
    

    生成JWT Payload

    • issuer id:在 用户和访问 -> API Keys 里面
    Payload Field Value
    iss - Issuer id {issue id}
    exp - 过期时间 {exp time}
    aud - Audience appstoreconnect-v1
    {
    "iss": "57246542-96fe-1a63-e053-0824d011072a",
    "exp": 1528408800,
    "aud": "appstoreconnect-v1"
    }
    

    生成一个 JWT

    • Private Key:ApiKey中有个下载链接,下载下来的AuthKey_xxxx.p8文件

    使用上面生成的 jwt header , jwt payload ,Private key使用gen_jwt_s.rb生成一个

    生成方案如下

    
        sudo gem install jwt
    
        ruby gen_jwt_s.rb 
    

    然后按照指引一步步操作即可

    1. 输入kid
    2. 输入issueid
    3. 输入AuthKey_xxxx.p8文件地址

    这个是我用rb写的一个简单的demo,想获得其他语言的支持请看JWT.io

    使用 Request

    替换以下的[signed token]为生成的token即可使用

    curl -v -H 'Authorization: Bearer [signed token]' 
    "https://api.appstoreconnect.apple.com/v1/apps"
    

    相关文章

      网友评论

          本文标题:AppStoreConnect的Token生成

          本文链接:https://www.haomeiwen.com/subject/ahauxhtx.html