當前位置: 首頁>>代碼示例>>Python>>正文


Python ssl_peer_verification.SUBJ_ALT_NAME_SUPPORT屬性代碼示例

本文整理匯總了Python中ndg.httpsclient.ssl_peer_verification.SUBJ_ALT_NAME_SUPPORT屬性的典型用法代碼示例。如果您正苦於以下問題:Python ssl_peer_verification.SUBJ_ALT_NAME_SUPPORT屬性的具體用法?Python ssl_peer_verification.SUBJ_ALT_NAME_SUPPORT怎麽用?Python ssl_peer_verification.SUBJ_ALT_NAME_SUPPORT使用的例子?那麽, 這裏精選的屬性代碼示例或許可以為您提供幫助。您也可以進一步了解該屬性所在ndg.httpsclient.ssl_peer_verification的用法示例。


在下文中一共展示了ssl_peer_verification.SUBJ_ALT_NAME_SUPPORT屬性的3個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Python代碼示例。

示例1: get_subj_alt_name

# 需要導入模塊: from ndg.httpsclient import ssl_peer_verification [as 別名]
# 或者: from ndg.httpsclient.ssl_peer_verification import SUBJ_ALT_NAME_SUPPORT [as 別名]
def get_subj_alt_name(peer_cert):
    # Search through extensions
    dns_name = []
    if not SUBJ_ALT_NAME_SUPPORT:
        return dns_name

    general_names = SubjectAltName()
    for i in range(peer_cert.get_extension_count()):
        ext = peer_cert.get_extension(i)
        ext_name = ext.get_short_name()
        if ext_name != b'subjectAltName':
            continue

        # PyOpenSSL returns extension data in ASN.1 encoded form
        ext_dat = ext.get_data()
        decoded_dat = der_decoder.decode(ext_dat,
                                         asn1Spec=general_names)

        for name in decoded_dat:
            if not isinstance(name, SubjectAltName):
                continue
            for entry in range(len(name)):
                component = name.getComponentByPosition(entry)
                if component.getName() != 'dNSName':
                    continue
                dns_name.append(str(component.getComponent()))

    return dns_name 
開發者ID:deis,項目名稱:controller,代碼行數:30,代碼來源:certificate.py

示例2: get_subj_alt_name

# 需要導入模塊: from ndg.httpsclient import ssl_peer_verification [as 別名]
# 或者: from ndg.httpsclient.ssl_peer_verification import SUBJ_ALT_NAME_SUPPORT [as 別名]
def get_subj_alt_name(peer_cert):
    # Search through extensions
    dns_name = []
    if not SUBJ_ALT_NAME_SUPPORT:
        return dns_name

    general_names = SubjectAltName()
    for i in range(peer_cert.get_extension_count()):
        ext = peer_cert.get_extension(i)
        ext_name = ext.get_short_name()
        if ext_name != 'subjectAltName':
            continue

        # PyOpenSSL returns extension data in ASN.1 encoded form
        ext_dat = ext.get_data()
        decoded_dat = der_decoder.decode(ext_dat,
                                         asn1Spec=general_names)

        for name in decoded_dat:
            if not isinstance(name, SubjectAltName):
                continue
            for entry in range(len(name)):
                component = name.getComponentByPosition(entry)
                if component.getName() != 'dNSName':
                    continue
                dns_name.append(str(component.getComponent()))

    return dns_name 
開發者ID:war-and-code,項目名稱:jawfish,代碼行數:30,代碼來源:pyopenssl.py

示例3: get_subj_alt_name

# 需要導入模塊: from ndg.httpsclient import ssl_peer_verification [as 別名]
# 或者: from ndg.httpsclient.ssl_peer_verification import SUBJ_ALT_NAME_SUPPORT [as 別名]
def get_subj_alt_name(peer_cert):
    # Search through extensions
    dns_name = []
    if not SUBJ_ALT_NAME_SUPPORT:
        return dns_name

    general_names = SubjectAltName()
    for i in range(peer_cert.get_extension_count()):
        ext = peer_cert.get_extension(i)
        ext_name = ext.get_short_name()
        if ext_name.decode() != 'subjectAltName':
            continue

        # PyOpenSSL returns extension data in ASN.1 encoded form
        ext_dat = ext.get_data()
        decoded_dat = der_decoder.decode(ext_dat,
                                         asn1Spec=general_names)

        for name in decoded_dat:
            if not isinstance(name, SubjectAltName):
                continue
            for entry in range(len(name)):
                component = name.getComponentByPosition(entry)
                if component.getName() != 'dNSName':
                    continue
                dns_name.append(str(component.getComponent()))

    return dns_name 
開發者ID:syncloud,項目名稱:platform,代碼行數:30,代碼來源:certbot_generator.py


注:本文中的ndg.httpsclient.ssl_peer_verification.SUBJ_ALT_NAME_SUPPORT屬性示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。