Visual Guard .NET 应用程序访问控制

在当今的数字化时代,应用程序的安全性至关重要。确保用户的身份验证权限管理是保护数据和应用程序功能不被未授权访问的关键。Visual Guard .NET 是一个全面的.NET应用程序访问控制解决方案,它结合了身份验证、权限和审计功能。本文将展示如何使用Visual Guard .NET来重用Windows账户进行身份验证,并根据用户权限调整应用程序。

Visual Guard.NET能为您做什么?

Visual Guard.NET 通过自动使用当前的Windows账户对用户进行身份验证,无需请求任何用户凭据即可打开应用程序,并自动执行用户权限。以下是应用程序根据用户权限进行调整的示例:

以下截图展示了由Visual Guard实施限制的员工表单,一个字段被隐藏,一个按钮被禁用。

您可能需要限制对敏感数据的访问。以下示例过滤了一个列表,以隐藏用户不应访问的记录。如果需要,您还可以隐藏列或特定字段。

先决条件

本教程需要安装Microsoft Visual Studio 2008或Visual Studio 2005。以下代码示例是用于集成到winform C#应用程序中的。winform VB.NET或ASP.NET的代码示例可以在这里找到。

步骤1:在Visual Guard中声明Windows账户

为此,您将使用Visual Guard控制台(无需编码)。使用默认的管理员账户(用户名='Admin'/密码='pwd')登录Visual Guard控制台。管理员拥有对所有功能的完全访问权限。其他角色适用于仅执行开发、身份管理和审计任务的开发人员、管理员和审计员。

在控制台中,打开“仓库=>用户”,右键单击并选择“添加Windows用户或组”。

步骤2:将Visual Guard集成到您的应用程序中

将Visual Guard集成到您的应用程序非常简单。在Visual Studio(2005或2008)中打开您的项目,并添加Visual Guard程序集作为项目的引用。

using System; using System.Collections.Generic; using System.Windows.Forms; using Novalys.VisualGuard.Security; using Novalys.VisualGuard.Security.WinForm; namespace ADdemo { static class Program { /// /// 主程序入口点 /// [STAThread] static void Main() { Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); // 加载安全 VGAuthorizationState state = VGSecurityManager.LoadSecurity(System.Security.Principal.WindowsIdentity.GetCurrent()); if (state.IsFailed) { if (state.IsUserNotFound) { MessageBox.Show("您的账户未在安全仓库中声明"); } else if (state.IsUserNotAuthorized) { MessageBox.Show("您未被授权登录此应用程序"); } } else { Application.Run(new Form1()); } } } }

步骤3:定义权限并授予Windows账户

用户被授予角色,角色包含权限集,权限集包含权限,权限包含技术操作。默认情况下,权限是硬编码在应用程序中的。使用Visual Guard,您可以在Visual Guard中声明权限(而不是在应用程序中编写代码),Visual Guard将在运行时动态应用它们。

大多数Visual Guard权限包括更改对象属性以限制用户访问(禁用或隐藏控件,过滤网格等)。Visual Guard还提供更复杂的权限以满足特定需求(使用数据库中的值,依赖条件等)。

右键单击“权限”,选择“新建权限”,并将其命名为“隐藏员工地址”。右键单击此新权限,选择“新建属性操作”(意味着您将定义一个将在应用程序中更改属性的操作)。

Visual Guard权限编辑器将打开。此向导将允许您定义:

  • 何时执行此操作(在哪个事件下,满足哪个条件)
  • 您想要更改的对象、控件和属性
  • 这些属性应该取的值

如前所述,这只是一个存储在VG仓库中的声明,您不需要在应用程序中编写代码。

选择此操作修改的对象。在这一点上,Visual Guard使用.NET反射列出了您应用程序中的所有对象。然后,您可以选择对象“Employee”进行修改。

定义何时执行此操作。默认情况下,操作将在Visual Guard加载安全性后立即执行。您可以在应用程序中触发任何事件时执行操作,还可以定义此操作执行的条件。

选择您想要修改的控件和属性,选择您想要修改的属性,并更改其值。例如,在案例中,将决定隐藏地址和出生日期字段:

  • 在权限编辑器中:
  • 同时选择所有相应的字段
  • 选择“可见”属性
  • 选择“false”作为此属性的值
  • 点击“完成”按钮。

现在权限已定义;您仍然需要将此权限授予用户。因此,您应该:

  • 将此新权限包含在权限集中(拖放)
  • 将此权限集授予角色(拖放)
  • 将此角色授予用户账户(用户名/右键单击/编辑角色列表)。
沪ICP备2024098111号-1
上海秋旦网络科技中心:上海市奉贤区金大公路8218号1幢 联系电话:17898875485