【问题标题】:How to get username and password of windows authentication from code如何从代码中获取windows认证的用户名和密码
【发布时间】:2015-01-07 18:18:07
【问题描述】:

我需要将登录用户的 WINDOWS AUTHENTICATION 详细信息传递给 pdf 转换器以使其工作。 这个我试过了

PdfConverter.AuthenticationOptions.Username = CredentialCache.DefaultNetworkCredentials.UserName;
PdfConverter.AuthenticationOptions.Password = CredentialCache.DefaultNetworkCredentials.Password;

但这无济于事。转换器在本地工作,但在启用 Windows 身份验证的服务器中返回 404 错误。

如何使用代码获取凭据?

【问题讨论】:

  • 您是否真的需要为外部 PDF 转换器指定您的应用程序用户凭据。听起来很吓人...您是否尝试过 AuthenticationOptions.UseDefaultCredentials,它的默认值为 true,但仅当您不指定 UserName 时?
  • 不幸的是,我们只有一个旧版本的许可证,它没有 UseDefaultCredentials 属性。 AuthenticationOptions 对我来说只有两个属性(用户名和密码)。
  • 是的,它看起来对我来说也很可怕,但我无法想象这里有其他解决方案......
  • 您拥有许可证,因此有权要求足够安全的功能。您是否联系了他们的支持团队并确认了这一点?如果不是我建议你这样做,可能是值得的。
  • Windows 身份验证的全部意义在于密码永远不会传递到远程端点——只是证明用户在过去的某个适当的时间点知道/知道他们的密码。

标签: c# asp.net asp.net-mvc evopdf


【解决方案1】:

试试这个:-(你可以使用WindowsIdentity

WindowsIdentity id = HttpContext.Current.Request.LogonUserIdentity;
String UserName = id.Name;

我认为我们无法检索密码,因为密码存储在 Windows 中。

【讨论】:

    【解决方案2】:

    您应该升级到使用当前 Windows 的凭据从 IIS 访问网页的最新版本。如果需要,可以使用 HtmlToPdfConverter.AuthenticationOptions.UseDefaultCredentials 属性禁用此功能

    【讨论】:

      猜你喜欢
      • 2012-10-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-08-23
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多