LDAP-仅允许组中的用户登录,

时间:2019-07-11 16:55:07

标签: python flask ldap flask-login

我正在为我的组织构建一个小的Flask应用程序。 我让我的应用程序使用LDAP,因为我们组织中的任何人都可以登录。但是,我想将可以使用此应用程序的用户限制为特定组中的用户。

我正在使用flask_ldap3_login和Flask-login配对来登录用户。

这就是我与整个组织合作的结果。 我不确定我还需要添加(或删除)什么,从而也将有效用户限制为仅特定组中的用户(如果可能的话)。

'''

class Config:
   LDAP_HOST = 'domain.local'
   LDAP_BASE_DN = 'dc=domain, d=local'
   LDAP_USER_DN = 'ou=employee'
   LDAP_USER_SEARCH_SCOPE = 'SUBTREE'
   LDAP_USER_RDN_ATTR = 'cn'
   LDAP_USER_LOGIN_ATTR = 'mail'
   LDAP_BIND_USER_DN = 'USER'
   LDAP_BIND_USER_PASSWORD = 'PASS'

'''

我要访问的目录的层次结构是:

  • domain.local
      • 我要的
        • authorized_users

所以主要来说,我不确定我需要指定什么才能只允许该组中的用户登录。我尝试添加LDAP_GROUP_DN和LDAP_GROUP_SEARCH_SCOPE,但是所有内容要么都在所有人中登录,要么没有人登录。

我很好奇我是否忽略了某些内容,例如可能我只是在BASE_DN中丢失了某些内容,或者可能使用了错误的SEARCH_SCOPE。向正确方向的任何推动将不胜感激!

1 个答案:

答案 0 :(得分:0)

我认为您混淆了身份验证和授权。 身份验证证明用户就是他所声称的人。 通过身份验证后,应该可以读取用户条目及其所在的组,以授权他使用或不使用该应用程序。