gpt4 book ai didi

security - 通过参数+安全的数据源

转载 作者:行者123 更新时间:2023-12-02 21:58:48 24 4
gpt4 key购买 nike

我的问题更多地涉及其实现的安全性,而不仅仅是技术问题。

我已经开发了所有报告并位于报告服务器上。它们由使用 ASP.NET 中的 ReportViewer 控件的应用程序使用。

考虑到这些报告可能有不同的数据源,我在报告中创建了数据源的参数,并将连接字符串应用程序作为参数发送到报告。

到目前为止一切都很好,但是,这就是我的问题出现的地方。由于我使用了一个具有用户名和密码作为参数的 ConnectionString,我这里不会有安全缺陷吗?

我想听听您的意见,如果有人有更好的实现方法,请告诉我。

最佳答案

也许Expression-Based Connection Strings会有帮助吗?

文档有一个非常清晰的示例,即类似于以下内容的连接字符串:

="data source=" & Parameters!ServerName.Value & ";initial catalog=AdventureWorks

这些允许您仍然传递参数来定义数据源,但它还允许您单独存储凭据,这样您在调用报告时不必传递任何安全详细信息。

评论后添加:

以下是带有基于表达式的连接字符串的示例报告。

enter image description here

您可以看到连接字符串使用一个参数来确定其连接的确切位置;这可以根据您的需要进行更新。

凭证存储在数据源中;您可以存储凭据(请参阅上面的屏幕截图),也可以选择任何其他适合的选项,例如Windows 集成安全性。

所以它可能不太适合您,但这是满足此类可配置数据源要求的内置 SSRS 功能。

第二次编辑:

在上面的示例中,Parameters!ServerName.Value 确实是一个报表参数,您只需像创建其他参数一样创建它即可。根据报告的启动方式,您可以将其设为隐藏参数并处理代码中发送的实际值;这只是一个实现问题,完全取决于您。

对于基于表达式的连接字符串,数据源必须存储在报表中,并且其连接字符串在运行时确定。

因此,您可以根据一个或多个参数构建您需要的任何内容 - 它只是您正在构建的一个字符串值,因此您可以根据您的目的将其制作成任何您想要的内容;您可以将其指向所需的任何服务器/数据库组合。如果这不能回答您的问题,请澄清。

关于security - 通过参数+安全的数据源,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14811792/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com