Plone:列出所有 ldap 用户
Plone: list all ldap users
我正在尝试获取所有用户的列表 - 本地帐户和 ldap 帐户。
如果我知道用户 ID(ldap 或本地帐户),这很简单,我可以获取它并检查它的属性:
site = self.context.portal_url.getPortalObject() from
Products.CMFCore.utils import getToolByName
membership_tool = getToolByName(site, 'portal_membership')
membership_tool.getMemberById('some_user_id')
^ 这对两者都有效:ldap 和本地。
membership_tool.listMemberIds() # local accounts ids are listed
同:
users_tool = getToolByName(self, 'acl_users')
users_tool.getUserIds() # local accounts ids are listed
知道如何获取正在使用 ldap 帐户的用户列表吗?
通过在 portal_memberdata 工具中迭代 _members 的键来解决。我们为每个用户设置了一些字段。
md = getToolByName(self, 'portal_memberdata')
all_members = [x for x in md._members.keys()] # ids of ldap and local accounts are listed
我正在尝试获取所有用户的列表 - 本地帐户和 ldap 帐户。
如果我知道用户 ID(ldap 或本地帐户),这很简单,我可以获取它并检查它的属性:
site = self.context.portal_url.getPortalObject() from
Products.CMFCore.utils import getToolByName
membership_tool = getToolByName(site, 'portal_membership')
membership_tool.getMemberById('some_user_id')
^ 这对两者都有效:ldap 和本地。
membership_tool.listMemberIds() # local accounts ids are listed
同:
users_tool = getToolByName(self, 'acl_users')
users_tool.getUserIds() # local accounts ids are listed
知道如何获取正在使用 ldap 帐户的用户列表吗?
通过在 portal_memberdata 工具中迭代 _members 的键来解决。我们为每个用户设置了一些字段。
md = getToolByName(self, 'portal_memberdata')
all_members = [x for x in md._members.keys()] # ids of ldap and local accounts are listed