1.在webconfig文件中添加配置
a.在configSections节点下中添加如下代码。
<section name="casClientConfig" type="DotNetCasClient.Configuration.CasClientConfiguration,DotNetCasClient" />
b.添加casClientConfig配置。
<casClientConfig casServerLoginUrl="https://ip:port/cas/login"
casServerUrlPrefix="https://ip:port/cas/"
serverName="http://ip:port/"
notAuthorizedUrl="~/NotAuthorized.aspx"
cookiesRequiredUrl="~/CookiesRequired.aspx"
redirectAfterValidation="true"
gateway="false"
renew="false"
singleSignOut="true"
ticketTimeTolerance="5000"
ticketValidatorName="Cas20"
serviceTicketManager="CacheServiceTicketManager"
gatewayStatusCookieName="CasGatewayStatus" />
casServerLoginUrl为Cas Server登录地址,casServerUrlPrefix去掉后边的login,serverName为Net Client客户端的地址
c.在<system.web><httpModules>节点中添加配置。
<add name="DotNetCasClient" type="DotNetCasClient.CasAuthenticationModule,DotNetCasClient" />
d.找到authentication节点,修改 forms。
<forms loginUrl="https://ip:port/cas/login" timeout="30" defaultUrl="~/Default.aspx" cookieless="UseCookies" slidingExpiration="true" path="/" />
loginUrl为 Cas Server登录地址
e.<system.webServer><modules>节点修改如下。
<modules>
<remove name="DotNetCasClient" />
<add name="DotNetCasClient" type="DotNetCasClient.CasAuthenticationModule,DotNetCasClient" />
</modules>
f. system.diagnostics中增加sources节点。
<sources>
<source name="DotNetCasClient.Config" switchName="Config" switchType="System.Diagnostics.SourceSwitch">
<listeners>
<add name="TraceFile" />
</listeners>
</source>
<source name="DotNetCasClient.HttpModule" switchName="HttpModule" switchType="System.Diagnostics.SourceSwitch">
<listeners>
<add name="TraceFile" />
</listeners>
</source>
<source name="DotNetCasClient.Protocol" switchName="Protocol" switchType="System.Diagnostics.SourceSwitch">
<listeners>
<add name="TraceFile" />
</listeners>
</source>
<source name="DotNetCasClient.Security" switchName="Security" switchType="System.Diagnostics.SourceSwitch">
<listeners>
<add name="TraceFile" />
</listeners>
</source>
</sources>
2.重定向问题处理
a.检查上述配置项,serverName以及path配置不对均会导致重定向问题。
b.重定向问题出现在 获取到ticket,重定向到server端时出现 “请求被中止: 未能创建 SSL/TLS 安全通道。”。(我当时出现在验证ticket时即152行出现异常)
在发起get请求的时候首先去掉https证书验证(即33行checkValidationResult始终返回的true,或者直接干掉这行),其次增加34行。至此重定向问题得以解决。