问题标签 [integrated-security]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
14 回答
6998 浏览

sql-server - SQL Server/Windows 集成安全对任何事情都有好处吗?

Windows 用户权限和任何一组 SQL Server GRANT 之间的区别似乎是不相关的概念。通常情况下,它似乎实际上是使用数据库角色的伪登录来实现的;但这并不能有效地映射回 Windows 权限。假设单登录身份验证,为什么不使用最简单的数据库角色呢?

编辑:
到目前为止,我们已经获得了您不需要在应用程序中存储密码的单一好处;但这似乎更像是一个微不足道的有益结果,而不是设计目标;还有许多其他更直接的方法可以实现这一点,而无需紧密耦合两个宇宙的整个安全设备。

再次编辑:
除了单一登录和 SD 维护组的能力之外,没有其他人有任何好处可以建议,从而复制 SQL Server 中已经存在的组功能(基于相同的用户登录)?

小组问题有几个缺陷,包括假设 AD 经理同样有资格维护这两者;并且它排除了不属于 AD 的任何网络连接(从而将您锁定在 MS 技术中。)

用最佳实践的术语来说,你已经建立了系统的耦合,这通常被认为是一件坏事。

0 投票
4 回答
3848 浏览

sql-server - SQL Server 身份验证还是集成安全性?

我们有一些企业 Intranet 用户使用 WinForms 应用程序在带有 SQL Server 的系统上工作。设置了集成安全性,允许所有用户更新和删除权限,其中应用程序安全性限制了表更新的方式和位置。

但是,一些用户是拥有 SQL 查询工具的高级用户,可以直接访问数据库以构建报告。但是,通过集成安全性,它们在不应具有的表上具有默认更新权限,因为应用程序将规则应用于更新。

这是一个更适合为应用程序提供中央 SQL 身份验证登录的示例,而用户获得集成安全性的只读权限?

0 投票
1 回答
889 浏览

asp.net - Windows 集成身份验证与具有集成安全性的 MS-SQL 2000 数据库连接冲突

我们正在.NET 2.0 平台上开发一个 Intranet Web 应用程序。该应用程序使用集成 Windows 身份验证进行单点登录。用户有权根据他们所在的 Active Directory 组使用不同的模块。

直到完成身份验证和授权为止,一切正常。但是当应用程序尝试连接到 MSSQL Server 上的数据库时,问题就开始了。

根据我们客户的安全政策,即使已加密,也不应将数据库用户或密码数据保存在连接字符串或注册表中。所以我们被迫在连接字符串中使用 Integrated Security=SSPI。

IIS 上的应用程序池由他们使用有权访问数据库的身份用户配置。

当我们停用 Windows 集成身份验证时,我们使用应用程序池的身份用户连接到数据库。但是,当启用集成身份验证时,应用程序会尝试使用登录用户凭据连接到数据库。

我们尝试了集成身份验证的每一种组合,无论有没有模拟,都可以解决这个问题。

有没有办法解决这个冲突?

0 投票
3 回答
4518 浏览

java - java模拟使用windows身份验证连接到sql server

现在我用经典的asp和visual basic 6构建了以下架构

我有一个用 VB6 开发的 COM+ 组件,它连接到数据库。我通过一个配置了集成安全性的 .udl 文件来设置 DB conf。

在 Web 服务器 (IIS) 上,我使用 com+ 管理器注册组件,并将其配置为在帐户名下运行,例如 mydomain\appAccount...

在 sql 2005 中,我给 mydomain\appAccount 适当的权限

从asp,我只是使用带有server.createobject的组件...

我想用java开发一个类似的解决方案,问题如下:

可能吗?

如何配置域帐户以连接到 sql server 2005 db?

我应该在哪里存储 db conf?我应该在哪里配置域帐户?在 tomcat / jetty 配置中?

我希望解决方案尽可能简单直接(我试图避免使用 glassfish 或 jboss 之类的东西)

嗯,非常感谢...

0 投票
1 回答
508 浏览

asp.net - 对 UNC 共享 DB 文件的 ASP.NET 应用程序访问可用作 IIS 虚拟目录,但不能用作 IIS 网站

这个要死我了。我有一个使用集成安全性的 ASP.net (2.0 Framework) 应用程序。IIS 已正确设置,并且可以作为默认网站之外的虚拟目录正常工作。我的 OLEDB 连接 (Jet 4.0) 工作正常,并通过网络共享 (\GIS1\GIS Server - PublicWorks_StreetSigns) 连接到数据库文件。

但是,当我创建一个 IIS“网站”并将其指向完全相同的主目录时,我得到一个错误......

从 DBF 获取数据时出错。'\GIS1\GIS Server - PublicWorks_StreetSigns' 不是有效路径。

我是否必须在网站上做一些不同于默认网站的虚拟操作才能完成这项工作?我已经根据网站设置对虚拟设置进行了三次检查,一切都是一样的。

提前致谢。

0 投票
3 回答
848 浏览

windows-authentication - 如何让 Vault 使用来自 NAnt 的 Windows 身份验证?

我想用 NAnt (V0.86.3317.0) 在 SourceGear Vault (V4.1.4) 中执行一些任务。

有什么方法可以让 Vault 使用 NAnt 的 Windows 身份验证来创建连接?

我用来初始化保险库连接的 NAnt 块是:

由于我正在与其他开发人员一起开发该项目,因此将用户名和密码硬编码到 NAnt 构建文件中并不是一个好主意。username和都是命令password中的必需选项。vaultsetloginoptions

其他替代品(全部带有渔获物)包括:

(a) 将“管理员”帐户硬编码到 NAnt 属性中并使用该帐户登录保险库。这不是很好,因为我们随后松散了谁负责 NAnt 脚本执行的签入/签出操作的审计跟踪。当解决方案签出文件时,它也会导致问题(部分脚本确保在 Vault 中生成标签之前将所有文件签回源代码管理)。

(b) 使用 NAnt 代码中的 C# 脚本来动态设置用户名和密码的属性...除了我们仍然遇到从用户获取密码的问题

(c) 从 Vault 客户端读取存储的配置文件信息并使用它进行连接(除非我不确定它的存储位置)。

0 投票
2 回答
1102 浏览

asp.net - ASP.NET > SqlServer;信任与委托

我们有一个系统,他们的客户需要集成 Windows 身份验证。这是一个 ASP.NET 3.5 应用程序,连接到 Sql Server 2005。Web 服务器是 Server 2003 R2 SP2。数据库服务器是 Server 2003 SP2(不是 R2)。

在数据库服务器中,我运行了以下脚本

我现在在 Windows 用户组“myDomain\myUserGroup”中有 3 个用户。所有三个用户的帐户都被标记为受信任的委派。AD 中的 Web 服务器帐户被标记为受信任以进行委派。

Web 应用程序被标记为使用 Windows 身份验证(所有其他身份验证均已关闭)。web.config 有以下几行:

然而,当我尝试使用用户组中的用户连接到 Web 应用程序时,出现错误:

我的连接字符串是从这样构造的 Sql ConnectionStringBuilder 构建的:

如果我在 web.config <identity /> 行上对允许的帐户之一进行硬编码,则它可以工作。但是,如果我取消硬编码帐户并尝试从客户端机器传递身份。我得到了错误。

所以似乎我没有为多跳集成登录场景正确配置一些东西,但我不知道是什么。

提前致谢!

0 投票
3 回答
5548 浏览

asp.net - asp.net 通过 kerberos 集成 windows 身份验证到 sql server

拜托,有人可以提供一种简单直接的方法来启用 ASP.NET > Kerberos > Sql Server 吗?

我们有clientMachine > webServer > databaseServer。客户坚持网站必须拉取 Windows 登录而不提示,因此需要 Kerberos 和集成身份验证。它还必须将用户模拟到数据库服务器上,从而引发双跳。

我们的域是一个 Windows 2003 域,据我所知,这意味着 Kerberos 已启用。在加入域的计算机上,登录时,kerbtray 向我显示我有大量票证,因此它显然可以正常工作。

AD 中的 Web 和数据库服务器计算机帐户都是“受信任的委派”。
必须访问系统的 AD 用户帐户都是“受信任的委派”。
当一切正常时,我会添加更多用户,现在是两个。

Sql Server 实例在数据库服务器上的 LocalSystem 下运行,据我所知,这意味着它根本不需要弄乱那些 SPN 的东西。

然而,当我尝试使用任一用户登录时,我得到

表示双跳失败。进一步的事实是,在 db 服务器上的应用程序日志中有大量来自“MSSQL”的条目说同样的事情。

我真的不敢相信这有多难……我的意思是,IIS、SQL 和 Windows 都是微软,他们不能说得更好吗???

总而言之,我有

  • kerberos 域,
  • db 和 web 服务器都受信任的委派
  • 受信任委托的用户
  • AD 组中的用户
  • AD 组作为 sql 中的登录名(和 db 中的用户)
  • IIS 关闭匿名、集成打开、基本和摘要关闭
  • 启用集成的 IE

0 投票
2 回答
6839 浏览

asp.net - 集成 Windows 身份验证和 SSL

我的 Intranet 上有一个管理网站,目前通过 IIS使用集成 Windows 身份验证。我们希望将此应用程序移至公共网站并使用 SSL 保护它,以便我们的用户可以从任何地方访问它。

我一直计划使用 HttpModule 从 http 重定向到 https,但它看起来不适用于集成身份验证(登录弹出窗口出现在重定向之前)。

我是否在 IIS 中使用“需要 SSL”复选框?这似乎不是那么用户友好,因为如果用户忘记使用 https URL,他们会得到一个漂亮的胖错误页面而不是温和的重定向。

在这个情况下,你会怎么做?

0 投票
2 回答
161 浏览

asp.net - 我可以提供触发 Windows 身份验证的链接吗?

是否可以在 web.config 设置为 Forms 的项目中的一个页面上尝试 Windows 集成安全身份验证的链接?