65.9K
CodeProject 正在变化。 阅读更多。
Home

使用 Visual Guard 保护您的 Saas 应用程序

emptyStarIconemptyStarIconemptyStarIconemptyStarIconemptyStarIcon

0/5 (0投票)

2011 年 6 月 1 日

CPOL

12分钟阅读

viewsIcon

27358

您是否正在为 SaaS 应用程序创建安全系统?Visual Guard 将为您提供帮助!本文将列出在您的项目中需要考虑的重要问题,以及 Visual Guard 提供的解决方案,以避免安全漏洞或限制您发展的性能限制。

摘要

您是否正在为 SaaS 应用程序创建安全系统?Visual Guard 将为您提供帮助!本文将列出在您的项目中需要考虑的重要问题,以及 Visual Guard 提供的解决方案,以避免安全漏洞或限制您发展的性能限制。

引言

SaaS 应用程序的安全性应兼顾强度和灵活性

系统强度将通过以下方式保证应用程序安全:

  • 在订阅限制内控制用户访问
  • 确保共享应用程序的用户之间的数据机密性
  • 消除安全漏洞,保护您免受外部攻击

系统灵活性将通过以下方式促进您的业务发展:

  • 促进您的商业模式的演变和您产品提供的创建
  • 响应与用户管理相关的客户需求(见下文)
  • 支持可扩展性:优化性能并简化大量用户和安全组件的管理

本文介绍了 Visual Guard 的技术和功能规范,这些规范使您能够实现这两个目标。您将能够设计您的 SaaS 应用程序的安全性,满足您短期内的需求,同时预测您业务的未来发展以及与之相关的额外需求。

将管理权限委派给您的客户?

最初,您可能自己管理用户和访问权限。

随着用户数量的增加,您和您的客户可能希望委派某些管理权限,以便您的客户能够自己管理其用户和帐户。

Visual Guard 提供

  • 非技术用户也可访问的管理界面,允许您将用户管理委派给本地业务经理
  • 此管理界面包含所有常用访问控制功能,并通过 Internet 提供访问(帐户管理、组和访问权限分配、安全数据可视化和控制……)

Visual Guard WebConsole Dashboard

Visual Guard WebConsole 管理仪表板

Visual Guard User Management

Visual Guard WebConsole 用户管理

要详细了解此管理界面

如果您开发的是多租户 SaaS 应用程序(一个应用程序的单一实例供多个客户使用),您应该将客户的管理权限限制在其自己的用户帐户范围内:您不希望他们能够修改其他客户的帐户!

更一般地说,Visual Guard 通过三种方式限制委派的访问权限

  • 将用户帐户管理限制在客户或客户用户子集。例如,销售经理只能定义其销售团队的访问权限
  • 限制管理操作的类型。例如,业务经理无法创建新用户帐户。但是,他们可以为现有帐户分配访问权限。
  • 限制管理到特定应用程序。例如,人力资源经理可以管理对薪酬模块的访问控制,但不能管理对库存管理模块的访问控制。

结合这些标准,Visual Guard 能够根据您客户的组织和需求,覆盖多种场景,委派不同级别的管理权限。

要详细了解多租户应用程序的安全性

单点登录:简化您用户的生活

如果您的产品目录包含一系列应用程序,Visual Guard 可以提供单点登录 (SSO) 功能,以简化您的用户体验

  1. 他们可以访问多个应用程序,并在它们之间自由切换
  2. 如果应用程序调用安全 Web 服务,用户也将为所使用的每个 Web 服务进行身份验证
  3. 每个用户登录第一个站点后,就可以访问其他站点,而无需重新输入其凭据(单点登录)

Visual Guard SSO 系统包含以下功能:

1 – 用户会话管理

当用户从一个站点切换到另一个站点时,Web SSO 系统会

  • 识别用户
  • 为访问的每个站点重新创建其会话
  • 加载并应用安全数据(属性、角色、权限……)

注意:Visual Guard Web SSO 包含管理安全令牌的机制(创建、传输和保护令牌)。这些机制经过优化,以避免性能问题(例如,它不会“简单地”对用户进行身份验证,然后为每个访问的页面重新加载其安全性:当访问次数增加时,响应时间会变得过长)。

2 – 为单点登录系统提供前端

Visual Guard Web SSO 的前端

  • 允许用户在访问网站之前进行身份验证。Visual Guard SSO 本地支持多种类型的用户帐户(登录名/密码、Windows 帐户……)
  • 记住用户凭据的全部或部分,以避免用户在每次访问时都需要重新输入(例如,用户名和密码)
  • 自动重定向用户在同一个 SSO 联合的站点之间导航:用户将直接到达第二个站点,并且其安全配置文件将自动应用

一个保留给系统管理员的部分允许您个性化 SSO 前端的呈现方式并定义某些设置。

Web SSO - Login Form

当用户连接到第一个站点时,他们将看到登录窗口,在那里他们可以选择帐户类型并输入其凭据

Web SSO - Logging in with saved identites

用户可以选择保存某些凭据。下次访问时,他们可以使用系统中记住的帐户

3 – 促进应用程序集成到 SSO 系统

  • 集成 Visual Guard SSO 不需要对应用程序进行任何更改
  • 集成过程与应用程序类型和使用的开发技术无关

4 – 支持复杂配置

Visual Guard Web 单点登录支持以下情况:

  • 并非所有站点都在同一网络(LAN 或 WAN)中
  • 并非所有用户帐户都存储在与 SSO 相同的网络中
  • 并非所有站点都属于同一个 Web 域
  • 并非所有站点都使用相同的技术开发

在每种情况下,Visual Guard 都会自动处理特定的约束。您可以在 企业应用程序的 Web SSO 页面上找到更多信息。

如果您的用户可以重用现有帐户怎么办?

大多数 SaaS 应用程序都要求您为每个用户创建一个新帐户。问题是用户已经拥有多个帐户,这会给公司带来巨大的支持成本(请参阅 密码的真实成本)。

某些客户可能希望重用其现有用户帐户(例如,其 Windows 帐户)。Visual Guard 允许您将应用程序的访问权限授予由其他组织管理的帐户。因此,您可以联合来自多个客户或合作伙伴的用户帐户,并定义他们对您系统的访问权限。

要详细了解联合用户帐户和管理其访问权限

为您的商业模式变化做好准备

管理界面必须经过精心设计,以管理大量用户和访问权限(指导管理员执行操作和搜索,优化安全存储库的响应时间……)。

当应用程序投入生产时,用户身份验证过程和访问权限的计算必须得到优化,以避免长时间等待。例如,每次用户打开新页面都需要访问安全存储系统的系统,在用户和页面浏览量增加时,出现性能问题的可能性更大。

案例 1:默认 SaaS 模型。
应用程序由供应商托管,并集成了 Visual Guard。用户通过 Internet 访问它。

客户按时间限制、定期付费使用您的应用程序。

商业模式:按使用付费
软件交付模式:SaaS

案例 2:出于安全或技术原因,客户可能要求您在其环境中安装应用程序。用户通过 LAN 或 Internet 访问它。

供应商仍然通过 Visual Guard 管理访问控制:客户按时间限制、定期付费使用该应用程序。

商业模式:按使用付费
软件交付模式:本地部署

案例 3:客户希望重用其用户帐户(例如,其 Windows 帐户)。

Visual Guard 授予现有帐户对您的 SaaS 应用程序的访问权限。

商业模式:按使用付费
软件交付模式:SaaS

案例 4:经典的软件交付模式。客户拥有应用程序的副本。他们自己管理访问控制。

软件供应商可以将其添加到其目录中(除了 SaaS 模型之外),以增加其产品供应。

Visual Guard 可轻松部署给客户(简单健全的管理工具,完整的文档……)。

尽管如此,这种类型的部署并不排除按使用付费模式。为此,您需要一个管理限时许可证密钥的系统。

商业模式:按使用付费或永久许可证
软件交付模式:本地部署

将安全性与业务逻辑分离

大多数项目编写应用程序代码来定义如何应用用户权限。例如,根据用户的角色,此代码将禁用菜单、隐藏控件、过滤数据列表……

因此,如果我们想更改应用程序安全性(例如,添加新的限制),我们就需要执行一个完整的开发周期(设计、编码、测试、部署)。

Visual Guard 开发了一项创新技术,以消除这些不便,并完全将安全性与业务逻辑分离

  1. Visual Guard 定义权限并将其存储在其安全数据库中。
  2. 当应用程序投入生产时,Visual Guard 从安全数据库加载用户的权限并动态应用它们。因此,应用程序中没有安全代码。

此解决方案具有以下优点:

  • 敏捷性:您可以在几分钟内更新安全规则,即使应用程序正在生产中。
  • 维护成本:更新安全性时无需更改代码。您避免了完整的开发周期,并且代码更易于维护。
  • 实施:集成很简单——您无需调整应用程序。这项技术支持所有现有的 .NET 应用程序。
  • 灵活性:该系统支持应用程序中的所有类型的权限/限制。

阅读更多

add permissions to an application
如何添加权限
到生产中的应用程序
add permissions to an application
如何集成 Visual Guard
到现有应用程序中

按使用付费账单和付款

如果您的商业模式基于按使用付费的 SaaS 模型,或者包含临时使用权,Visual Guard 可以让您提供:

  • 具有有限时间跨度的用户帐户
  • 一个 API,支持与计费系统协作,以自动更新每个帐户的到期日期
  • 一个允许销售团队或帮助台修改此信息的界面——例如,对唯一案例或错误的及时处理,立即对用户生效。

可靠性和性能

Visual Guard 的管理界面设计用于轻松管理大量用户和访问权限(指导管理员执行操作和搜索,优化安全存储库的响应时间……)。

当 SaaS 应用程序投入生产时,Visual Guard 身份验证用户并计算其访问权限的流程得到了优化,以避免长时间等待(系统无需在用户打开新页面时访问安全存储库,从而避免了用户和页面浏览量增加时的性能问题)。

防止安全漏洞

由于 SaaS 应用程序可通过 Internet 访问并管理客户数据,Visual Guard 创建了一个系统,该系统不易受到最常见的攻击类型的影响:

未经授权访问安全数据:

  • 安全数据不可通过直接 SQL 访问读取。Visual Guard 需要通过 SaaS 应用程序或管理界面进行安全连接来读取和修改此数据。
  • 密码等敏感数据已加密。

拒绝服务:Visual Guard 包括针对通过大量登录请求使系统饱和而导致系统不可用的尝试的保护。

未经授权的管理操作:用户可能会发现如何访问管理界面或管理访问控制的 API。Visual Guard 会阻止非法授予用户帐户额外的访问权限。

拦截机密信息

  • 在客户端浏览器和 Web 服务器之间:Visual Guard 支持 SSL/HTTPS 协议以及浏览器和 Web 服务器之间的通信加密……)
  • 在 SaaS 应用程序内的 .NET 组件之间:Visual Guard 依赖 Microsoft 代理系统 (Marshall) 来管理和保护此类通信

密码破解:Visual Guard 允许您定义复杂的密码策略,以防止密码破解(通过试错猜测密码)。

数据包嗅探:Visual Guard 包括对捕获数据包以查找网络传输中的密码或安全令牌的保护。黑客可以窃取这些令牌,冒充合法用户调用系统。

SQL 注入
Visual Guard 管理控制台包含搜索字段——例如,用于查找用户帐户。它已预先防范 SQL 注入,SQL 注入是指在搜索字段中插入 SQL 语句的部分,目的是查询机密信息或非法更改安全数据。

阅读有关 Visual Guard 安全性的更多信息

自行开发还是购买?

时间限制至关重要:我们在本文中看到,SaaS 应用程序的安全和访问控制涉及复杂的功能。对于内部项目,它们需要大量的时间投入和技术娴熟的开发人员。
如果您在有限的时间内工作,或者缺乏所需的专业知识,那么像 Visual Guard 这样的现成访问控制解决方案是您的最佳选择。

风险管理:Visual Guard 限制了短期风险(成本和时间超支、错误和安全漏洞),同时解决了其他长期挑战

  • 演进:查阅该解决方案的历史和过去版本:Visual Guard 跟随市场技术发展;定期发布新版本(请参阅 Visual Guard 更新列表)。
  • 产品和支持质量:Visual Guard 是一个稳定且部署良好的解决方案,您可以查阅其他用户的评论。
  • 持久性:Visual Guard 提供托管协议(源代码副本存放在第三方,如果提供商 Novalys 中断服务,第三方会将源代码发送给客户)
为什么不结合所有这些优势呢? Visual Guard 团队在选择如何随着市场发展不断改进其应用程序时,非常关注用户的需求。您可以从标准解决方案的优势(更稳定、更完整且成本更低)中受益,同时能够影响未来的发展,以更好地满足您的特定需求。

参考....

详细了解 Visual Guard 如何保护包括 SaaS 应用程序在内的任何内部组织结构中的应用程序安全

© . All rights reserved.