• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

Python certificate.create_from_pem函数代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了Python中rhsm.certificate.create_from_pem函数的典型用法代码示例。如果您正苦于以下问题:Python create_from_pem函数的具体用法?Python create_from_pem怎么用?Python create_from_pem使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。



在下文中一共展示了create_from_pem函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Python代码示例。

示例1: test_cert_with_carriage_returns

 def test_cert_with_carriage_returns(self):
     # make sure it can parse a cert where the "-----" etc. lines end with
     # "\r\n" instead of just "\n". Failure to parse in this case was
     # discovered when trying to parse an employee-sku cert that jbowes
     # emailed to mhrivnak. the origin of the offending carriage returns is
     # unknown.
     crcert = certdata.ENTITLEMENT_CERT_V3_0.replace('-\n', '-\r\n')
     create_from_pem(crcert)
开发者ID:barnabycourt,项目名称:python-rhsm,代码行数:8,代码来源:certificate2-tests.py


示例2: _check_extensions

    def _check_extensions(self, cert_pem, dest, log_func):
        """
        Checks the requested destination path against the entitlement cert.

        :param cert_pem: certificate as PEM
        :type  cert_pem: str
        :param dest: path of desired destination
        :type  dest: str
        :param log_func: function used for logging
        :type  log_func: callable taking 1 argument of type basestring
        :return: True iff request is authorized, else False
        :rtype:  bool
        """
        cert = certificate.create_from_pem(cert_pem)

        # Extract the repo portion of the URL
        repo_dest = dest[dest.find(RELATIVE_URL) + len(RELATIVE_URL):]

        try:
            valid = cert.check_path(repo_dest)
        except AttributeError:
            # not an entitlement certificate, so no entitlements
            log_func('The provided client certificate is not an entitlement certificate.\n')
            valid = False
        if not valid:
            log_func('Request denied to destination [%s]' % dest)

        return valid
开发者ID:ipanova,项目名称:pulp_rpm,代码行数:28,代码来源:oid_validation.py


示例3: _check_extensions

    def _check_extensions(self, cert_pem, dest, log_func, repo_url_prefixes):
        """
        Checks the requested destination path against the entitlement cert.

        :param cert_pem: certificate as PEM
        :type  cert_pem: str
        :param dest: path of desired destination
        :type  dest: str
        :param log_func: function used for logging
        :type  log_func: callable taking 1 argument of type basestring
        :param repo_url_prefixes: list of url prefixes to strip off before checking against cert
        :type  repo_url_prefixes: list of str
        :return: True iff request is authorized, else False
        :rtype:  bool
        """
        cert = certificate.create_from_pem(cert_pem)

        valid = False
        for prefix in repo_url_prefixes:
            # Extract the repo portion of the URL
            repo_dest = dest[dest.find(prefix) + len(prefix):]
            try:
                valid = cert.check_path(repo_dest)
            except AttributeError:
                # not an entitlement certificate, so no entitlements
                log_func('The provided client certificate is not an entitlement certificate.\n')
            # if we have a valid url check, no need to continue
            if valid:
                break

        if not valid:
            log_func('Request denied to destination [%s]' % dest)

        return valid
开发者ID:hgschmie,项目名称:pulp,代码行数:34,代码来源:oid_validation.py


示例4: build

    def build(self, bundle):
        keypem = bundle['key']
        crtpem = bundle['cert']
        key = Key(keypem)

        cert = create_from_pem(crtpem)
        return (key, cert)
开发者ID:tkolhar,项目名称:subscription-manager,代码行数:7,代码来源:certlib.py


示例5: build_cert

    def build_cert(self, bundle):
        """Split a cert bundle into a EntitlementCertificate and a Key."""
        keypem = bundle['key']
        crtpem = bundle['cert']

        key = Key(keypem)
        cert = create_from_pem(crtpem)

        return (key, cert)
开发者ID:cgwalters,项目名称:subscription-manager,代码行数:9,代码来源:entcertlib.py


示例6: _get_cert

 def _get_cert(self, fn):
     if fn.endswith('.gz'):
         f = GzipFile(fn)
     else:
         f = open(fn)
     try:
         pem = f.read()
         return create_from_pem(pem)
     finally:
         f.close()
开发者ID:Lorquas,项目名称:subscription-manager,代码行数:10,代码来源:productid.py


示例7: _is_valid

def _is_valid(cert_pem):
    '''
    validates the cert's common name as being pulp's identity

    :param cert_pem: PEM encoded client certificate sent with the request
    :type  cert_pem: string
    '''

    cert = certificate.create_from_pem(cert_pem)
    cn = cert.subject()['CN']

    return cn == IDENTITY_CN
开发者ID:AndreaGiardini,项目名称:pulp_rpm,代码行数:12,代码来源:identity_validation.py


示例8: _get_cert

 def _get_cert(self, filename):
     if filename.endswith('.gz'):
         f = GzipFile(filename)
     else:
         f = open(filename)
     try:
         pem = f.read()
         if type(pem) == bytes:
             pem = pem.decode('utf-8')
         cert = create_from_pem(pem)
         cert.pem = pem
         return cert
     finally:
         f.close()
开发者ID:Januson,项目名称:subscription-manager,代码行数:14,代码来源:productid.py


示例9: _get_certificate

def _get_certificate():
    """
    Get the parsed certificate from the environment

    :rtype: rhsm.certificate2.EntitlementCertificate, or None
    """
    env = request.environ
    pem_str = env.get('SSL_CLIENT_CERT', '')
    if not pem_str:
        return None
    cert = certificate.create_from_pem(pem_str)
    # The certificate may not be an entitlement certificate in which case we also return None
    if not isinstance(cert, certificate2.EntitlementCertificate):
        return None
    return cert
开发者ID:ampersand8,项目名称:crane,代码行数:15,代码来源:app_util.py


示例10: verify_valid_entitlement

    def verify_valid_entitlement(self):
        """
        Verify that a valid entitlement was processed.

        @return: True if valid, False otherwise.
        """
        try:
            cert = create_from_pem(self.get_cert_content())
            # Don't want to check class explicitly, instead we'll look for
            # order info, which only an entitlement cert could have:
            if not hasattr(cert, 'order'):
                return False
        except CertificateException:
            return False
        ent_key = Key(self.get_key_content())
        if ent_key.bogus():
            return False
        return True
开发者ID:splice,项目名称:subscription-manager,代码行数:18,代码来源:managerlib.py


示例11: get_certs_for_enabled_repos

    def get_certs_for_enabled_repos(self, enabled_repos):
        """
        Find enabled repos that are providing product certificates
        """
        lst = []
        cache = self.read_productid_cache()
        if cache is None:
            cache = {}

        # skip repo's that we don't have productid info for...
        for repo in enabled_repos:
            try:
                with dnf.util.tmpdir() as tmpdir:
                    filename = self._download_productid(repo, tmpdir)
                    if filename:
                        cert = self._get_cert(filename)
                        if cert is None:
                            log.debug('Repository %s does not provide cert' % repo.id)
                            continue
                        lst.append((cert, repo.id))
                        cache[repo.id] = cert.pem
                    elif repo.id in cache and cache[repo.id] is not None:
                        cert = create_from_pem(cache[repo.id])
                        lst.append((cert, repo.id))
                    else:
                        # We have to look in all repos for productids, not just
                        # the ones we create, or anaconda doesn't install it.
                        self.meta_data_errors.append(repo.id)
            except Exception as e:
                log.warning("Error loading productid metadata for %s." % repo)
                log.exception(e)
                self.meta_data_errors.append(repo.id)

        if self.meta_data_errors:
            log.debug("Unable to load productid metadata for repos: %s",
                      self.meta_data_errors)

        if len(cache) > 0:
            self.write_productid_cache(cache)

        return lst
开发者ID:Januson,项目名称:subscription-manager,代码行数:41,代码来源:product-id.py


示例12: parse_cert

def parse_cert():
        client_cert = '''
-----BEGIN CERTIFICATE-----
MIIEyjCCArKgAwIBAgIIISy0Q9KHEoMwDQYJKoZIhvcNAQEFBQAwMzELMAkGA1UE
BhMCVVMxEjAQBgNVBAoMCVZpcnR1b3p6bzEQMA4GA1UEAwwHUm9vdCBDQTAeFw0x
NjAxMjUwMDAwMDBaFw0xNzA5MDUwMDAwMDBaMCsxKTAnBgNVBAMTIGZmODA4MTgx
NTJlZjkxZGQwMTUyZWY5NWRlYWEwMDU2MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8A
MIIBCgKCAQEArhqai9AEoyIhX2wevUoEtFE2YPk/XIA+TDhUnd32N6u9hNe8LM3x
JqquLpFB1VQLbbPajogIUrmm4b62e+GpGYUEJP6kyeFf4QbXuUWbkwbgft2drvFA
wEzbv/Yi2i4SuDFjAIXez49ToK9PTfl6u3BhXqetPc5i+FGYtsc86txm53F+meO2
WXhEMAVCfXnw4/7QpCsXRfN5S4n+cu46teUFlaPAzGeflnFBrpdQwQw+IsFjsWds
kKTg07OVJ0PJ4sdH61fPtROAoQtdt668yTifk56vjEztrAjA/G+NkYEZngBj8zb+
InmN+3b7Fkw3EM3QuQQsanGA7Z7gtGdh6wIDAQABo4HpMIHmMBEGCWCGSAGG+EIB
AQQEAwIFoDALBgNVHQ8EBAMCBLAwXAYDVR0jBFUwU4AUJxLzb7nZOcojBlKHPKE4
d/zgUdChN6Q1MDMxCzAJBgNVBAYTAlVTMRIwEAYDVQQKDAlWaXJ0dW96em8xEDAO
BgNVBAMMB1Jvb3QgQ0GCAhABMB0GA1UdDgQWBBTJHgdTJ5WPg9c85XH3aQikHXPJ
4TATBgNVHSUEDDAKBggrBgEFBQcDAjASBgkrBgEEAZIICQYEBQwDMy4yMB4GCSsG
AQQBkggJBwQRBA942itJLS5hAAAGHgHBAmAwDQYJKoZIhvcNAQEFBQADggIBAHCz
PJgSvoaCkmuQGRFo2M5cF9IxfQ8wf9R0o9E2cbfH7hwDXUZoztlm6OhrdFJONfzO
i+i3VE2s2QkDyxV6RHFpJ4e3XoC9V5eiGI9X5xdY5d5jD+B5SjEd4WVpaRm+H6qK
eatUY1ldo9FVyMuMSWdj2J3Wzmrz16O4zpU/2gdwkYr//BsuCz6dTwsKoPK2+0FZ
EMixVZXT3osowu5huiJ42Of8arNFz85lTVXkY8X/3X/nABFU2+LfvGsXTrroy0yY
aWC7Katj5r/lnZCfy84nPT1wafyczJlZCZ37+rjlKga5Y06blLt4I36YDt42fi5w
A8CoiH/PI46bNJos2mvTd6+uzZnBh7ZR+kLI2+8eadDetsOfrqpfyUNcyCv2UFos
rJOt8K/oQuX4qidLaJscWaxcfP8rtmNEHj7tcRD4U/YhAk+oY43tyKDYh7V8ve9b
mfguLMq692DJGTgZ/v3Aq/UV1K26t+OMvpo1am+fyXLWSMeiBrTP9Sg+lT981057
NBnyV8bO1Js9FWs+yBLFh8dMVaGl4QdxMNBS+140gWkHJ349id9LMEjgwo+cVjYU
dDlq4c7RmzboDI3xccqDPJzBklp8bX1yQRx+dIcUV11ZCV6H1Nbcin6cZ+9Z+MFu
JdgBZ1ABr6Hq0KzACwFjsq6ybJOAstuqyL1SACri
-----END CERTIFICATE-----        
        '''.strip()
        
        path2check = '/test'
        cert = certificate.create_from_pem(client_cert)
        cert.check_path('/') # AttributeError: 'NoneType' object has no attribute 'value' 
        pass    
开发者ID:belonesox,项目名称:certificates-wtf,代码行数:36,代码来源:certparse.py


示例13: _check_extensions

    def _check_extensions(self, cert_pem, dest, log_func, repo_url_prefixes):
        """
        Checks the requested destination path against the entitlement cert.

        :param cert_pem: certificate as PEM
        :type  cert_pem: str
        :param dest: path of desired destination
        :type  dest: str
        :param log_func: function used for logging
        :type  log_func: callable taking 1 argument of type basestring
        :param repo_url_prefixes: list of url prefixes to strip off before checking against cert
        :type  repo_url_prefixes: list of str
        :return: True iff request is authorized, else False
        :rtype:  bool
        """
        cert = certificate.create_from_pem(cert_pem)

        valid = False
        for prefix in repo_url_prefixes:
            if dest.startswith(prefix):
                # rhsm throws a ValueError if there's no leading /. Amusingly, it immediately
                # strips it off.
                repo_dest = os.path.join('/', os.path.relpath(dest, prefix))
                try:
                    valid = cert.check_path(repo_dest)
                except AttributeError:
                    # not an entitlement certificate, so no entitlements
                    log_func('The provided client certificate is not an entitlement certificate.\n')
                # if we have a valid url check, no need to continue
                if valid:
                    break

        if not valid:
            log_func('Request denied to destination [%s]' % dest)

        return valid
开发者ID:BrnoPCmaniak,项目名称:pulp,代码行数:36,代码来源:oid_validation.py


示例14: test_existsandvalid

 def test_existsandvalid(self, mock_exists, mock_read):
     mock_exists.return_value = True
     mock_read.return_value = certificate.create_from_pem(certdata.RHIC_CERT)
     testRhicCert = RhicCertificate()
     testRhicCert.cfg = StubConfig()
     self.assertTrue(testRhicCert.existsAndValid())
开发者ID:splice,项目名称:subscription-manager,代码行数:6,代码来源:test_certificate.py


示例15: test_factory_method_without_ent_data

 def test_factory_method_without_ent_data(self):
     data = certdata.ENTITLEMENT_CERT_V3_0.split('-----BEGIN ENTITLEMENT DATA-----')[0]
     cert = create_from_pem(data)
     self.assertTrue(cert.content is None)
     self.assertTrue(cert.order is None)
     self.assertEqual(cert.products, [])
开发者ID:barnabycourt,项目名称:python-rhsm,代码行数:6,代码来源:certificate2-tests.py


示例16: __init__

 def __init__(self, keystring, certstring):
     self.key = keystring
     # TODO: bad variables, cert should be the certificate object, x509 is
     # used elsewhere for the rhsm._certificate object of the same name.
     self.cert = certstring
     self.x509 = create_from_pem(certstring)
开发者ID:Januson,项目名称:subscription-manager,代码行数:6,代码来源:identity.py


示例17: setUp

 def setUp(self):
     self.prod_cert = create_from_pem(certdata.PRODUCT_CERT_V1_0)
开发者ID:barnabycourt,项目名称:python-rhsm,代码行数:2,代码来源:certificate2-tests.py


示例18: get_cert

 def get_cert(self):
     cert_content = self.get_cert_content()
     ent_cert = create_from_pem(cert_content)
     return ent_cert
开发者ID:aweiteka,项目名称:subscription-manager,代码行数:4,代码来源:managerlib.py


示例19: test_default_version

 def test_default_version(self):
     id_cert = create_from_pem(certdata.IDENTITY_CERT)
     self.assertTrue(isinstance(id_cert, IdentityCertificate))
     self.assertEquals('1.0', str(id_cert.version))
开发者ID:barnabycourt,项目名称:python-rhsm,代码行数:4,代码来源:certificate2-tests.py


示例20: test_creation

 def test_creation(self):
     id_cert = create_from_pem(certdata.IDENTITY_CERT)
     self.assertTrue(isinstance(id_cert, IdentityCertificate))
     self.assertEquals("URI:CN=redhat.local.rm-rf.ca", id_cert.alt_name)
     self.assertEquals("0f5d4617-d913-4a0f-be61-d8a9c88e1476", id_cert.subject['CN'])
     self.assertFalse(hasattr(id_cert, 'products'))
开发者ID:barnabycourt,项目名称:python-rhsm,代码行数:6,代码来源:certificate2-tests.py



注:本文中的rhsm.certificate.create_from_pem函数示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Python config.initConfig函数代码示例发布时间:2022-05-26
下一篇:
Python certificate.create_from_file函数代码示例发布时间:2022-05-26
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap