AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 405932
Accepted
Elroy Flynn
Elroy Flynn
Asked: 2012-07-09 20:08:35 +0800 CST2012-07-09 20:08:35 +0800 CST 2012-07-09 20:08:35 +0800 CST

ldap 客户端是否应该使用与最终用户不同的凭据来进行最终用户身份验证?

  • 772

简短形式:我是否应该使用一些众所周知的 uid 来验证 ldap 客户端,然后在该客户端中使用其他方法来验证用户输入的 uid 和 pw?

长格式:我们有一个基于 .net 的商业 Web 产品,在许多客户站点中实施,目前使用内部用户身份验证。

我正在研究使用 LDAP 对目录进行身份验证。由于我们的产品在各种环境中实施,我希望它能够在尽可能广泛的 LDAP 兼容目录服务和配置范围内兼容,包括但不限于 Active Directory。

除了身份验证之外,我还想使用用户的目录属性来确定他们是否有权使用该应用程序。我希望这将由用户在特定组中的成员身份来指示。该组的名称将成为应用程序的配置点。

目录服务仅用于确认用户标识、密码和组成员身份。在处理来自用户的后续请求时,应用程序不会假定用户的身份。所以,没有 FormsAuthenticationTicket。

我的第一个问题来自我审查过的身份验证示例,例如http://tldp.org/HOWTO/LDAP-HOWTO/authentication.html和http://msdn.microsoft.com/en-us/library /ff649227.aspx. 它们使用用户输入的 ID 和密码来验证 LDAP 客户端。我想这是合理的,但在我的例子中,客户端将继续进行其他 LDAP 搜索以确认组成员身份。我是否需要担心最终用户可能没有足够的目录权限来进行成员资格检查?在我看来,更好的做法是使用保留的凭据进行 ldap 客户端身份验证,然后通过其他方式确认用户输入的 uid/pw。或者,也许,绑定两次,一次使用用户凭据来验证它们,第二次使用内置凭据进行搜索。我应该这样做,还是我只是让事情变得比他们需要的更难?

authentication ldap application
  • 2 2 个回答
  • 399 Views

2 个回答

  • Voted
  1. Best Answer
    Joel E Salas
    2012-07-09T20:14:38+08:002012-07-09T20:14:38+08:00

    最小特权原则适用于此。您用于绑定到 LDAP 并枚举用户、组和任何其他相关信息的帐户绝对应该是一个“服务帐户”,而不是一个实际的人的帐户。

    与大多数人类用户相比,此帐户需要不同的权限。VP 的助手不需要能够枚举所有组并查看给定帐户是否存在,但是您用来绑定到 LDAP 的帐户确实需要这样做。

    • 2
  2. anderbubble
    2012-07-09T21:52:28+08:002012-07-09T21:52:28+08:00

    如果您使用系统帐户授予您的普通用户帐户没有的权限,您就获得了权限升级。(在您的示例中,您的应用程序的用户可以看到他们自己看不到的组成员资格。)没关系,但请注意任何权限升级都有可能被滥用。

    就个人而言,我更愿意编写我的 ACL,以便用户帐户拥有他们需要的任何权限,并使用我的 LDAP 服务器(而不是我的下游应用程序)来管理访问。为什么您的用户帐户不能看到他们属于哪些组?

    至于“最小权限”,这里指的是使用用户的凭据,因为他已经可以访问这些凭据。如果您使用共享系统帐户,那是——按照设计——普通用户没有的额外权限。

    • 0

相关问题

  • 如何在使用 RPC over HTTPS 时停止 Outlook 2007 要求提供凭据

  • 针对 Leopard 服务器的 OS X 登录身份验证

  • 允许用户更改其 Active Directory 密码的 Web 界面

  • MOSS 2007 无法使用 ActiveDirectoryMembershipProvider 配置表单身份验证

  • 通过 VPN 更改 Active Directory 密码

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve