【问题标题】:How to set dynamic connection string username and password on ASP.Net MVC when connecting to AS400连接AS400时如何在ASP.Net MVC上设置动态连接字符串用户名和密码
【发布时间】:2019-11-20 15:22:57
【问题描述】:

我正在使用 ASP.Net MVC 重写一个旧的 Visual Basic 6 应用程序。

这个旧应用程序将根据用户输入的用户名和密码提取数据。它使用用户名和密码连接到 AS400 并获取不同的数据值(因为用户来自不同的公司)。

现在在 ASP MVC 应用程序上开发时,用户通过另一个门户页面登录并使用 cookie 身份验证。没有要传递给连接字符串的用户名和密码。这个 MVC 应用程序也需要使用登录信息来连接到 AS400。

我的问题是: 在 vb6 应用程序上,它为每个 AS400 连接使用用户名和密码。但在 ASP 应用程序上,我只得到 cookie 字符串。如果我想连接到 AS400,我必须创建一个通用帐户。但是,通用帐户无法区分用户的公司。我不确定 AS400 如何处理每个用户并提供不同的数据。

请给我一些建议和指导。太感谢了。

【问题讨论】:

    标签: asp.net asp.net-mvc vb6 connection-string ibm-midrange


    【解决方案1】:

    您有多种选择:

    1. 从门户获取凭据。

    不知道门户使用哪种身份验证,但这很可能是最糟糕的选择。传递明文凭据。

    1. 将 MVC 应用的用户映射到 AS400 凭据。

    我也会避免这个选项。必须有人维护这些映射。

    1. 向您的用户询问 AS400 凭据。

    易于实施。不是最好的用户体验,但接近旧应用的效果。

    1. 使用您的通用帐户并在连接字符串中为每个用户设置库列表。

    背景信息:登录后,AS400 会设置一个库列表。用于查找数据表等对象。在您的情况下,这些库列表很可能因公司而异。

    这是一个示例连接字符串:

        <add name="InforMASConnection" connectionString="DataSource=127.0.0.1;UserID=abc;Password=xyz;naming=1;Library List=WWKO000MAS,WWKD000MAS,WWBD000MAS,ARUBA_EW21" providerName="IBMDA400.DataSource" />
    

    与选项 2 一样,必须有人维护这些映射。

    1. 实施单点登录。

    在这种情况下,您必须与您的管理员交谈。必须配置。

    选项 5 是最好的用户体验,但最适合您的工作。我会选择选项 3。至少对于您的应用程序的第一个版本。

    【讨论】:

      猜你喜欢
      • 2017-05-28
      • 2015-06-29
      • 1970-01-01
      • 2011-04-15
      • 2016-09-22
      • 2015-08-03
      • 1970-01-01
      • 2016-06-22
      • 1970-01-01
      相关资源
      最近更新 更多