美文网首页程序员
iOS APP 证书状态监控

iOS APP 证书状态监控

作者: 一束荆棘 | 来源:发表于2020-11-05 18:34 被阅读0次

苹果企业证书现在已经无法申请购买,企业大多数都在使用第三方签名,而第三方证书因为会给多个不同的APP签名,导致APP 签名经常性掉签,为了保证APP签名在失效后及时重签,所以写了这个脚本。

语言:Python
第三方平台:蒲公英

1、上传 .ipa 安装包到蒲公英平台
2、使用蒲公英平台的在线证书检测对安装包进行检测
3、对返回数据进行解析
4、判断签名状态进行钉钉提醒

代码:


import requests
import re
import time
import json


def certificate_inspection():
    """
    :return:
        APP名称:XXX
        状态:掉签
        证书名称:Wondors Information Co., LTD1.
        证书过期时间:( 113 天后过期 )
        时间:2020-11-05 15:38:14
    """
    url = "https://www.pgyer.com/tools/certificate"
    headers = {
        "Cookie": "pgyx2_session=XXXXXX"  
          #登录蒲公英平台网页端在request header 中获取 Cookie中的 pgyx2_session 参数
          #多次验证登录态只需要 pgyx2_session,网页退出后也不回影响pgyx2_session 使用
    }
    data = {
      # url 为蒲公英平台下载短连接 如 https://www.pgyer.com/RFpA 可在应该概述页面获取
        "url": "RFpA", 
        'password': ""
    }
    response = requests.post(url=url, data=data, headers=headers)
    try:
        res = response.json()
    except Exception as e:
        pass
    else:
        if '掉签' in res['extra']['status']:
            ding_message(
                text='APP名称:{3}\n状态:{0}\n证书名称:{1}\n证书过期时间:{2}\n时间:{4}\n下载验证:https://download.xxx.com/'.format(
                    re.findall(".*>(.*)<.*", res['extra']['status'])[0],
                    res['extra']['name'],
                    re.findall(".*>(.*)<.*", res['extra']['certExpiredSpan'])[0].strip(),
                    res['extra']['appName'],
                    time.strftime("%Y-%m-%d %H:%M:%S", time.localtime(), )))
        elif '登录' in res['extra']['status']:
            ding_message(text='请检查脚本登录状态!')


def ding_message(text):
    # 钉钉机器人
    webhook = "https://oapi.dingtalk.com/robot/send?access_token=XXXXXXXXXXX"
    header = {
        "Content-Type": "application/json",
        "Charset": "UTF-8"
    }
    message = {

        "msgtype": "text",
        "text": {
            "content": text
        },
        "at": {"isAtAll": True}}
    message_json = json.dumps(message)
    requests.post(url=webhook, data=message_json, headers=header)


certificate_inspection()

相关文章

  • iOS APP 证书状态监控

    苹果企业证书现在已经无法申请购买,企业大多数都在使用第三方签名,而第三方证书因为会给多个不同的APP签名,导致AP...

  • iOS App 证书监控

    最近App Store停止个人申请个人开发者证书,导致公司超级签名无法使用,被迫找第三方证书签名。第三方证书签名不...

  • 申请iOS推送证书p12

    iOS APP需要推送通知,要用到iOS推送证书,分为测试调试用的iOS推送证书(开发环境)和上架到App Sto...

  • (转)iOS 开发中的各种证书及App签名原理

    iOS 开发中的各种证书 iOS App 签名的原理 iOS 签名机制挺复杂,各种证书,Provisioning ...

  • iOS 证书小结

    iOS 证书小结 iOS开发需要开发者账号,如果要发布app还需要申请对应的证书。证书就是用来对app包进行加密,...

  • 【6】iOS开发·上架流程

    iOS证书配置请参考上一篇iOS开发证书配置,本文仅讲述App上架的步骤。 一、App Store Connect...

  • iOS开发中的证书和密钥

    iOS开发中的证书和密钥iOS App 签名的原理iOS 签名机制

  • APICloud_开发控制台

    概览 关键信息预览. 端开发 :app端 端设置: 证书: Android证书_____iOS证书 代码:版本控...

  • iOS上架App Store之苹果发布证书的申请流程

    iOS发布证书用于上架App Store,当开发好APP后需要上架就要用iOS底部证书有p12及mobilepro...

  • iOS 打包选项区别

    save for iOS App Store Deployment: 用来发布到App Store, 使用发布证书...

网友评论

    本文标题:iOS APP 证书状态监控

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