No principal was found in the response from the CAS server

按网上的配置了

public String casServerUrlPrefix = "http://cas-server.com:8080/cas";

public String casServerLoginUrl = "http://cas-server.com:8080/cas/login";

其它的都没问题,结果一直报错,

No principal was found in the response from the CAS server
No principal was found in the response from the CAS server


搞了半天,结果发现是cas-server的上下文配错了,没有加cas上下文,导致Cas20ServiceTicketValidator    : Server response异常,返回了casLoginView.jsp页面

而正常的应该是这样:
<cas:serviceResponse xmlns:cas='http://www.yale.edu/tp/cas'>
    <cas:authenticationSuccess>
        <cas:user>test</cas:user>


    </cas:authenticationSuccess>
</cas:serviceResponse>

蛋疼....
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
这个错误是因为您正在尝试删除拥有模式(schema)的数据库主体(database principal)。在 SQL Server 中,模式是一种逻辑容器,可以用来组织和管理数据库对象,如表、视图、存储过程等。每个数据库主体都可以拥有一个或多个模式。如果您尝试删除一个拥有模式的数据库主体,将会收到如上所述的错误消息。 要解决这个问题,您需要按照以下步骤操作: 1. 首先,使用以下语句查找拥有模式的数据库主体的名称和模式的名称: ``` USE [database_name]; SELECT s.name AS schema_name, dp.name AS principal_name FROM sys.schemas s INNER JOIN sys.database_principals dp ON dp.principal_id = s.principal_id WHERE dp.name = 'principal_name'; ``` 请将 "database_name" 替换为您的数据库名称,将 "principal_name" 替换为您要删除的数据库主体名称。 2. 然后,将该数据库主体从其模式中移除。例如,以下语句将名为 "principal_name" 的数据库主体从名为 "schema_name" 的模式中移除: ``` USE [database_name]; ALTER AUTHORIZATION ON SCHEMA::[schema_name] TO dbo; ``` 请将 "database_name" 替换为您的数据库名称,将 "schema_name" 替换为上一步中找到的模式名称。 3. 最后,您可以使用 DROP USER 或 DROP LOGIN 语句删除该数据库主体。例如,以下语句将名为 "principal_name" 的数据库主体删除: ``` USE [database_name]; DROP USER [principal_name]; ``` 请将 "database_name" 替换为您的数据库名称,将 "principal_name" 替换为要删除的数据库主体名称。 请注意,在执行任何删除操作之前,请务必备份您的数据库以防止数据丢失。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值