1

我一直在使用 jasig .net cas 客户端。我在本地计算机上设置了 cas 服务器,可以使用https://localhost:8443/cas-server-webapp-3.4.12/login

我在帐户控制器登录操作上设置了授权属性。

我正在关注此网址https://wiki.jasig.org/pages/viewpage.action?pageId=32210981中给出的所有内容

当我运行该应用程序时,它确实进入了 cas 登录页面,但在身份验证后它返回,http://localhost:1672/然后在浏览器中它给出错误,因为“页面没有正确重定向”。

我不知道我是怎么得到这个错误的,一切都在 web.config 中正确设置。

请帮忙

当我使用http://localhost:8080/cas-server-webapp-3.4.12/login(非安全网址)而不是https://localhost:8443/cas-server-webapp-3.4.12/login(安全网址)时,它可以工作。

我认为我的自签名证书有问题。是否可以创建有效的证书并使用它。至少我应该尝试创建一个有效的证书并尝试。但我不知道如何创建有效的证书。还请告诉我如何创建有效的证书。我尝试了谷歌但没有成功找到如何创建有效证书,以便浏览器不显示“自签名证书错误”。

4

3 回答 3

4

根据我自己的经验,除了让自签名证书正常工作:

我必须将自签名证书从SSO服务器安装到托管 webapp 的 Windows 2008 Server)。

Trusted Root Cert Authorities在用户帐户和机器帐户下安装证书。

您可以在MMC添加证书管理单元下执行此操作。

使用 IE 测试您的设置以浏览到有问题的 sso 服务器。您应该不会再看到有关证书的警告。记得用 IE 来检查,其他浏览器似乎并不关心 Trusted Root Cert 的设置。

接下来,当部署 ASP MVC 时,我必须使用经典的应用程序池,并且对于我的 cas 配置设置,web.config将 theproxyTicketManager和 the都保留gatewayStatusCookieName为空字符串。

我直接连接到 sso 服务器,所以这两个被取出,否则协议错误和无限循环。

然后不再抱怨无限重定向循环。

于 2012-11-15T07:06:58.460 回答
2

我发现了问题所在。当我们使用安全连接时,我们需要在双方、CAS 服务器端和我们的 web 应用程序端都有 SSL 证书。

所以在CAS服务器端它必须是

https://localhost:8443/cas-server-webapp-3.4.12/login

在我们的网络应用程序端,它必须是

https://servername/mywebapp

如果您使用的是自签名证书,请确保运行 CAS 的服务器信任 Web 应用程序的证书。

于 2012-06-02T17:37:55.757 回答
1

您应该在 web.config 中指定成功登录后的返回 url(只是服务器而不是整个 url)示例:您的应用程序已开启http://localhost:8080/someWebApp/

当您进入登录页面时,您可以在查询字符串参数上看到已编码的返回 url

<casClientConfig casServerLoginUrl="https://localhost:8443/cas-server-webapp-3.4.12/login" 
                   casServerUrlPrefix="https://localhost:8443/cas-server-webapp-3.4.12/" 
                   serverName="http://localhost:8080" 
                   notAuthorizedUrl="~/notAuthorized.html" 
                   cookiesRequiredUrl="~/CookiesRequired.html" 
                   redirectAfterValidation="true" 
                   renew="false" 
                   singleSignOut="true" 
                   ticketValidatorName="Cas20" 
                   serviceTicketManager="CacheServiceTicketManager"/>
于 2012-05-29T14:36:09.657 回答