所谓非典型,就是不是按官方指南,github 上有标准的.net cas客户端demo 下载dotnet-cas-client-master 部署即可,这个是在web.config增加了拦截器,一是拦截软件的登录验证,二是使用.net和IIS本身内置的认证机制,而在实际做sso时,发现有些现有软件并没有使用这个认证机制,另外一个可能需求就是,做sso时不想太霸道,保留原来软件的认证登录,只是静静的增加多一个sso认证途径,这时,不对web.config做任何拦截修改,只是增加一个caslogin.aspx,访问指向这个网页时,才使用sso登录。当然,需要在未登录状态时允许访问这个页面。
不多废话,上源码,参考网上的代码,调试通过c#代码,有个老项目是VB.net的,又翻译成了VB.net源码,均调试可用。
c# 源码:
public partial class caslogin : System.Web.UI.Page
{
internal static bool CheckValidationResult(object sender, X509Certificate certificate, X509Chain chain, SslPolicyErrors errors)
{
return true; //处理非ssl连接导致重定向次数过多
}
protected void Page_Load(object sender, EventArgs e)
{
ServicePointManager.ServerCertificateValidationCallback = new System.