我可以检查活动目录中的用户,如果他存在,那么我允许他打开应用程序窗口,但是如果应用程序有多级权限怎么办?我是否在活动目录中创建特殊的权限组并检查用户是否属于其中一个? 。应用程序可以自动登录,还是总是需要输入密码?
答案 0 :(得分:0)
Active Directory可以为应用程序实现两个相关但独立的功能:授权和身份验证。
身份验证验证使用您的应用程序的人是有效用户。如果您拥有用户的凭据(即应用程序提示用户输入其用户名和密码),则可以通过使用其用户名/密码尝试连接来针对AD对其进行身份验证。
授权可让您确定特定用户在您的应用程序中拥有的权限级别。 Active Directory组是实现各种权限级别的相对简单且灵活的方式。通常,我将创建非常细粒度的权限组,这些权限组表示用户可以在应用程序中执行的每个安全操作(即CanDeleteWidgets,CanAddWidgets,CanEditWidgets)。然后创建功能或角色组,您可以在其中放置该角色的用户(即经理,协调员,技术人员等)。最后,您只需将角色组嵌套到权限组中,因此,例如,如果业务要求是Managers可以删除窗口小部件,则应将Managers组添加为CanDeleteWidgets组的成员。虽然这可能看起来更复杂,但它可以非常简单地响应不断变化的业务安全要求(即“技术人员需要能够删除小部件” - 一块蛋糕。将技术人员角色组添加到CanDeleteWidgets权限组,你就是完成)。
就自动登录而言,是的,您可以通过多种方式自动登录用户。对于winforms应用程序,您应该能够获取当前登录的用户并使用它。对于Web应用程序,如果您可以使用集成身份验证,则最终会得到相同的结果。您的Web服务器将处理身份验证部分,并通过服务器头变量发送用户的DOMAIN \ USERNAME。