码迷,mamicode.com
首页 > 其他好文 > 详细

Sharepoint 2013 通过Secure Store Service获取用户信息

时间:2015-06-23 17:37:44      阅读:105      评论:0      收藏:0      [点我收藏+]

标签:

1.在用Secure Store Service获取用户信息之前需要配置SSS。

2.以下代码是获取用户信息:

using (SPSite site = new SPSite(webUrl))
            {
                SecureStoreProvider prov = new SecureStoreProvider();
                SPServiceContext context = SPServiceContext.GetContext(site);

                prov.Context = context; //current user information
                try
                {
                    SecureStoreCredentialCollection cc = prov.GetCredentials(appId);
                    for (int i = 0; i < cc.Count; i++)
                    {
                        ISecureStoreCredential c = cc[i];
                        IntPtr ptr = System.Runtime.InteropServices.Marshal.SecureStringToBSTR(c.Credential);
                        string sDecrypString = System.Runtime.InteropServices.Marshal.PtrToStringUni(ptr);
                        credentialList.Add(sDecrypString);
                    }
                }
                catch (Exception ex)
                {
                    throw ex;
                }

注意:有的时候会在上图红线的地方报错:Secure Store Service did not performed the operation

造成这里的原因是我们的

SPServiceContext context = SPServiceContext.GetContext(site)的site我们用的SPContext.Current.Site.所以将此处的代码修改成如上
using (SPSite site = new SPSite(webUrl))就可以正常解决。

Sharepoint 2013 通过Secure Store Service获取用户信息

标签:

原文地址:http://www.cnblogs.com/lynn-lin/p/4595737.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!