为CAS Apereo版本cas-overlay-template-6.0启用REST服务

我想为CAS Apereo版本cas-overlay-template-6.0启用REST服务(在Ubuntu 16.04上)

我已完成以下步骤:

第1步:为REST API添加编译以构建build.gradle文件

root@ubuntu16:~/cas-overlay-template-6.0# nano build.gradle
And add two line below under dependencies clock
compile "org.apereo.cas:cas-server-support-rest:6.0.0"
compile "org.apereo.cas:cas-server-support-rest-services:6.0.0"

为CAS Apereo版本cas-overlay-template-6.0启用REST服务

第2步:清理构建

root@ubuntu16:~/cas-overlay-template-6.0# ./build.sh clean

为CAS Apereo版本cas-overlay-template-6.0启用REST服务

第3步:再次构建源代码

root@ubuntu16:~/cas-overlay-template-6.0# ./build.sh run

但是在第3步中,出现了这样的错误。

CAS is configured to accept a static list of credentials for authentication. While this is generally    useful for demo purposes,it is STRONGLY recommended that you DISABLE this authentication method (by     setting 'cas.authn.accept.users' to a blank value) and switch to a mode that is more suitable for production.>
2019-12-30 01:17:55,465 WARN [org.apereo.cas.config.support.authentication.acceptUsersAuthenticationEventExecutionPlanconfiguration] - <>
2019-12-30 01:17:55,806 INFO [org.apereo.cas.config.CasPersonDirectoryConfiguration] - <Found and added static attributes [[email]] to the list of candidate attribute repositories>
2019-12-30 01:17:59,004 WARN [org.apereo.cas.web.CasWebApplicationContext] - <Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'registeredServiceResourceRestController' defined in class path resource [org/apereo/cas/support/rest/config/RestServicesConfiguration.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.apereo.cas.support.rest.RegisteredServiceResource]: Factory method 'registeredServiceResourceRestController' threw exception; nested exception is org.springframework.beans.factory.BeanCreationException: No attribute name is defined to enforce authorization when adding services via CAS REST APIs. This is likely due to misconfiguration in CAS settings where the attribute name definition is absent>

为CAS Apereo版本cas-overlay-template-6.0启用REST服务

为CAS Apereo版本cas-overlay-template-6.0启用REST服务

我不知道什么是冤屈的? 请帮助我启用REST服务。 预先谢谢你。

ccqhjjf 回答:为CAS Apereo版本cas-overlay-template-6.0启用REST服务

删除此:

compile "org.apereo.cas:cas-server-support-rest-services:6.0.0"

此模块执行此操作:

  

调用CAS将应用程序注册到其自己的服务注册表中。 REST调用必须使用基本身份验证进行身份验证,其中凭据由现有CAS身份验证策略进行身份验证并接受,此外,必须使用通过CAS配置在CAS配置中指定的预配置角色/属性名称和值来授权已身份验证的主体。 CAS属性。请求的主体必须是应以JSON格式注册的服务定义,并且当然,必须将CAS配置为接受主体中定义的特定服务类型。此请求接受的媒体类型为application / json。

因此,如果不需要功能,可以将其删除。

如果确实需要,则需要定义属性名称/值,以便在错误消息告诉您时可以强制执行授权。

  

在通过CAS REST API添加服务时,未定义属性名称来强制授权。这很可能是由于缺少属性名称定义的CAS设置中的配置错误。

因此,请定义:

# cas.rest.attributeName=
# cas.rest.attributeValue=

PS不要添加不需要的东西。

本文链接:https://www.f2er.com/2841083.html

大家都在问