问题
I have developed POC to check possibility of sharing the authentication cookie between SharePoint web application and ASP.NET MVC web application to achieve single sign-on as quite a few resources on web shows that this is possible, please see http://labs.3pillarglobal.com/wp-content/uploads/2012/12/Single-Sign-On-White-paper.pdf document to see the implementation steps required to implement same.
My sharePoint web application using claims based authentication with forms based auth and AD membership provider. ASP.NET MVC web application also using forms based authentication with active directory membership provider. I ‘d make sure that both application should have the same machine key defined in the web.config so that cookies encrypted by one application can be decrypted by the other application as specified in Single-Sign-On document.
SharePoint web application hosted on localhost:7070. ASP.NET web application hosted on localhost:8081 on my local machine.
After implementing this concept on my local machine as specified in the document, when i first opened asp.net mvc web application it redirect me to login page where i supplied active directory user credential and once authenticated it redirect me to home page. on this page i have link to sharepoint web page when i click on this link, i've below expectation:
when I clicked on SharePoint web page link same cookies (generated when authenticated by asp.net MVC app) should be passed to the SharePoint web application. I have checked with fiddler – same cookies are being passed to both web app.
SharePoint web page should be opened successfully with same user but this is not happening. I’m getting following error. I’m guessing that this is due to SharePoint web app is unable to decrypt the cookies.
Exception of type 'System.ArgumentException' was thrown. Stack trace indicating error in Microsoft.SharePoint.Administration.Claims.SPClaimEncodingManager.DecodeClaimFromFormsSuffix(String encodedValue)
Please help me on this. Please let me know in case of any information is missing or any extra information is required.
来源:https://stackoverflow.com/questions/25749937/single-sign-on-between-sharepoint-2010-web-application-and-asp-net-mvc-web-appli