gpt4 book ai didi

c# - 获取当前用户的 NetworkCredential (C#)

转载 作者:IT王子 更新时间:2023-10-29 04:00:05 25 4
gpt4 key购买 nike

我正在尝试从控制台应用程序调用 Web 服务,我需要为客户端提供 System.Net.NetworkCredential 对象。
是否可以为启动应用程序的用户创建一个 NetworkCredential 对象而不提示输入用户名/密码?

最佳答案

如果被调用的 Web 服务使用 Windows 集成安全性,从当前 WindowsIdentity 创建一个 NetworkCredential 应该足以允许 Web 服务使用当前用户的 Windows 登录.但是,如果 Web 服务使用不同的安全模型,则没有任何方法可以从当前身份中提取用户密码……这本身就是不安全的,允许您(开发人员)窃取您的用户密码.您可能需要为您的用户提供某种方式来提供他们的密码,如果您不希望他们不得不重复提供密码,则将其保存在某个安全的缓存中。

编辑:要获取当前身份的凭据,请使用以下命令:

Uri uri = new Uri("http://tempuri.org/");
ICredentials credentials = CredentialCache.DefaultCredentials;
NetworkCredential credential = credentials.GetCredential(uri, "Basic");

关于c# - 获取当前用户的 NetworkCredential (C#),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/949340/

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