c# – Word加载项:获取用于从SharePoint打开文档的用户凭据
发布时间:2020-12-15 21:45:22 所属栏目:百科 来源:网络整理
导读:我们正在开发C#和 WPF的Word加载项. 这些文档是从位于另一个域中的SharePoint打开的,并使用加载项进行处理. 打开文档时,MS Word会要求提供SharePoint域的凭据. 在Word加载项中,我需要检索这些凭据或任何安全令牌,以便与SharePoint进行集成. 当我尝试使用C#中
我们正在开发C#和
WPF的Word加载项.
这些文档是从位于另一个域中的SharePoint打开的,并使用加载项进行处理. 在Word加载项中,我需要检索这些凭据或任何安全令牌,以便与SharePoint进行集成. 当我尝试使用C#中的CredentialsCache时,我获得了本地Windows /域帐户的凭据,但没有获得Sharepoint域帐户的凭据. 我了解Word存储SharePoint的凭据,因为我可以签入/签出并保存而无需重新输入密码. 但是我可以以某种方式从代码中获取这些凭据以访问SharePoint服务而无需重新提示密码吗? 解决方法
如果被调用的Web服务使用Windows集成安全性,则从当前WindowsIdentity创建NetworkCredential应足以允许Web服务使用当前用户Windows登录.但是,如果Web服务使用不同的安全模型,则无法从当前标识中提取用户密码……这本身就不安全,允许您(开发人员)窃取您的用户密码.您可能需要为用户提供一些提供密码的方法,并且如果您不希望他们不得不重复提供密码,请将其保存在某个安全缓存中.
编辑:要获取当前标识的凭据,请使用以下命令: Uri uri = new Uri("http://tempuri.org/"); ICredentials credentials = CredentialCache.DefaultCredentials; NetworkCredential credential = credentials.GetCredential(uri,"Basic"); (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |