本文整理汇总了Python中cryptography.x509.DirectoryName方法的典型用法代码示例。如果您正苦于以下问题:Python x509.DirectoryName方法的具体用法?Python x509.DirectoryName怎么用?Python x509.DirectoryName使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类cryptography.x509
的用法示例。
在下文中一共展示了x509.DirectoryName方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: _serialize
# 需要导入模块: from cryptography import x509 [as 别名]
# 或者: from cryptography.x509 import DirectoryName [as 别名]
def _serialize(self, value, attr, obj):
general_names = []
name_type = None
if value:
for name in value._general_names:
value = name.value
if isinstance(name, x509.DNSName):
name_type = "DNSName"
elif isinstance(name, x509.IPAddress):
if isinstance(value, ipaddress.IPv4Network):
name_type = "IPNetwork"
else:
name_type = "IPAddress"
value = str(value)
elif isinstance(name, x509.UniformResourceIdentifier):
name_type = "uniformResourceIdentifier"
elif isinstance(name, x509.DirectoryName):
name_type = "directoryName"
elif isinstance(name, x509.RFC822Name):
name_type = "rfc822Name"
elif isinstance(name, x509.RegisteredID):
name_type = "registeredID"
value = value.dotted_string
else:
current_app.logger.warning(
"Unknown SubAltName type: {name}".format(name=name)
)
continue
general_names.append({"nameType": name_type, "value": value})
return general_names
示例2: format_general_name
# 需要导入模块: from cryptography import x509 [as 别名]
# 或者: from cryptography.x509 import DirectoryName [as 别名]
def format_general_name(name):
"""Format a single general name.
>>> import ipaddress
>>> format_general_name(x509.DNSName('example.com'))
'DNS:example.com'
>>> format_general_name(x509.IPAddress(ipaddress.IPv4Address('127.0.0.1')))
'IP:127.0.0.1'
"""
if isinstance(name, x509.DirectoryName):
value = format_name(name.value)
else:
value = name.value
return '%s:%s' % (SAN_NAME_MAPPINGS[type(name)], value)
示例3: get_common_name
# 需要导入模块: from cryptography import x509 [as 别名]
# 或者: from cryptography.x509 import DirectoryName [as 别名]
def get_common_name(self):
"""Get a value suitable for use as CommonName in a subject, or None if no such value is found.
This function returns a string representation of the first value that is not a DirectoryName,
RegisteredID or OtherName.
"""
for name in self.value:
if isinstance(name, (x509.DirectoryName, x509.RegisteredID, x509.OtherName)):
continue
return name.value
示例4: test_dirname
# 需要导入模块: from cryptography import x509 [as 别名]
# 或者: from cryptography.x509 import DirectoryName [as 别名]
def test_dirname(self):
self.assertEqual(parse_general_name('/CN=example.com'), x509.DirectoryName(x509.Name([
x509.NameAttribute(NameOID.COMMON_NAME, 'example.com'),
])))
self.assertEqual(parse_general_name('dirname:/CN=example.com'), x509.DirectoryName(x509.Name([
x509.NameAttribute(NameOID.COMMON_NAME, 'example.com'),
])))
self.assertEqual(parse_general_name('dirname:/C=AT/CN=example.com'), x509.DirectoryName(x509.Name([
x509.NameAttribute(NameOID.COUNTRY_NAME, 'AT'),
x509.NameAttribute(NameOID.COMMON_NAME, 'example.com'),
])))