本文整理汇总了Python中privacyidea.lib.resolvers.LDAPIdResolver.IdResolver.split_uri方法的典型用法代码示例。如果您正苦于以下问题:Python IdResolver.split_uri方法的具体用法?Python IdResolver.split_uri怎么用?Python IdResolver.split_uri使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类privacyidea.lib.resolvers.LDAPIdResolver.IdResolver
的用法示例。
在下文中一共展示了IdResolver.split_uri方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: test_06_slit_uri
# 需要导入模块: from privacyidea.lib.resolvers.LDAPIdResolver import IdResolver [as 别名]
# 或者: from privacyidea.lib.resolvers.LDAPIdResolver.IdResolver import split_uri [as 别名]
def test_06_slit_uri(self):
uri = "ldap://server"
server, port, ssl = LDAPResolver.split_uri(uri)
self.assertEqual(ssl, False)
self.assertEqual(server, "server")
self.assertEqual(port, None)
uri = "ldap://server:389"
server, port, ssl = LDAPResolver.split_uri(uri)
self.assertEqual(ssl, False)
self.assertEqual(server, "server")
self.assertEqual(port, 389)
uri = "ldaps://server:389"
server, port, ssl = LDAPResolver.split_uri(uri)
self.assertEqual(ssl, True)
self.assertEqual(server, "server")
self.assertEqual(port, 389)
uri = "ldaps://server"
server, port, ssl = LDAPResolver.split_uri(uri)
self.assertEqual(ssl, True)
self.assertEqual(server, "server")
self.assertEqual(port, None)
uri = "server"
server, port, ssl = LDAPResolver.split_uri(uri)
self.assertEqual(ssl, False)
self.assertEqual(server, "server")
self.assertEqual(port, None)
示例2: testconnection
# 需要导入模块: from privacyidea.lib.resolvers.LDAPIdResolver import IdResolver [as 别名]
# 或者: from privacyidea.lib.resolvers.LDAPIdResolver.IdResolver import split_uri [as 别名]
def testconnection(cls, params):
"""
Test if the given filename exists.
:param params:
:return:
"""
success = False
try:
(host, port, ssl) = IdResolver.split_uri(params.get("LDAPURI"))
server = ldap3.Server(host, port=port,
use_ssl=ssl,
connect_timeout=float(params.get("TIMEOUT",
5)))
l = IdResolver.create_connection(authtype=\
params.get("AUTHTYPE",
AUTHTYPE.SIMPLE),
server=server,
user=params.get("BINDDN"),
password=params.get("BINDPW"),
auto_referrals=not params.get(
"NOREFERRALS"))
l.open()
if not l.bind():
raise Exception("Wrong credentials")
# search for users...
l.search(search_base=params["LDAPBASE"],
search_scope=ldap3.SUBTREE,
search_filter="(&" + params["SEARCHFILTER"] + ")",
attributes=[ params["HOSTNAMEATTRIBUTE"] ])
count = len([x for x in l.response if x.get("type") ==
"searchResEntry"])
desc = _("Your LDAP config seems to be OK, %i machine objects "
"found.")\
% count
l.unbind()
success = True
except Exception as e:
desc = "%r" % e
return success, desc
示例3: load_config
# 需要导入模块: from privacyidea.lib.resolvers.LDAPIdResolver import IdResolver [as 别名]
# 或者: from privacyidea.lib.resolvers.LDAPIdResolver.IdResolver import split_uri [as 别名]
def load_config(self, config):
"""
This loads the configuration dictionary, which contains the necessary
information for the machine resolver to find and connect to the
machine store.
class=computer or sAMAccountType=805306369 (MachineAccount)
* hostname: attribute dNSHostName
* id: DN or objectSid
* ip: N/A
:param config: The configuration dictionary to run the machine resolver
:type config: dict
:return: None
"""
self.uri = config.get("LDAPURI")
if self.uri is None:
raise MachineResolverError("LDAPURI is missing!")
(self.server, self.port, self.ssl) = IdResolver.split_uri(self.uri)
self.basedn = config.get("LDAPBASE")
if self.basedn is None:
raise MachineResolverError("LDAPBASE is missing!")
self.binddn = config.get("BINDDN")
self.bindpw = config.get("BINDPW")
self.timeout = float(config.get("TIMEOUT", 5))
self.sizelimit = config.get("SIZELIMIT", 500)
self.hostname_attribute = config.get("HOSTNAMEATTRIBUTE")
self.id_attribute = config.get("IDATTRIBUTE", "DN")
self.ip_attribute = config.get("IPATTRIBUTE")
self.search_filter = config.get("SEARCHFILTER",
"(objectClass=computer)")
self.reverse_map = {self.ip_attribute: "ip",
self.hostname_attribute: "hostname",
self.id_attribute: "id"}
self.noreferrals = config.get("NOREFERRALS", False)
self.certificate = config.get("CACERTIFICATE")
self.authtype = config.get("AUTHTYPE", AUTHTYPE.SIMPLE)