Назначение свойств ролей для пользователя CAS или реестра служб CAS

Мне удалось настроить шаблон CAS Overlay 6.2.x может аутентифицировать пользователя, зарегистрированного в MongoDB. Вот мой конфиг:

  1. CAS Свойства

    "name":"cas.authn.mongo.name","value":"users"
    "name":"cas.authn.mongo.database-name","value":"users"
    "name":"cas.authn.mongo.collection","value":"users"
    "name":"cas.authn.mongo.username-attribute","value":"username"
    "name":"cas.authn.mongo.password-attribute","value":"password"
    "name":"cas.authn.mongo.user-id","value":"casuser"
    "name":"cas.authn.mongo.password","value":"Mellon"
    "name":"cas.authn.mongo.attributes","value":"lastname,useremail,usertel"
    "name":"cas.authn.mongo.clientUri","value":"mongodb://casuser:Mellon@IP:port/users?authSource=admin&readPreference=primary&appname=MongoDB%20Compass%20Community&ssl=false"
    
  2. И это свойства пользователя в коллекции User

    "username":"root",
    "password":"root",
    "lastname":"root",
    "useremail":"xxx",
    "usertel":"xxx"
    

Но я столкнулся с проблемой, связанной с сервисом CAS Management Web App.

Вот журнал веб-приложения CAS Management:

WARN [org.apereo.cas.mgmt.authz.CasRoleBasedAuthorizer] - <Unable to authorize access, since the authenticated profile [#CasProfile# | id: root | attributes: {credentialType=UsernamePasswordCredential, isFromNewLogin=false, authenticationDate=2020-08-26T08:51:16.865441Z[UTC], authenticationMethod=users, successfulAuthenticationHandlers=users, longTermAuthenticationRequestTokenUsed=false} | roles: [] | permissions: [] | isRemembered: false | clientName: CasClient | linkedId: null |] does not contain any required roles> 

Вот мой реестр служб для веб-приложения CAS Manaement:

{
  "@class" : "org.apereo.cas.services.RegexRegisteredService",
  "serviceId":"^https://cas-server-domain:8088/cas-management.+",
  "name" : "casManagement",
  "id" : 1,
  "evaluationOrder" : 1,
  "allowedAttributes":["cn","mail"]
}

Сервер CAS успешно создал и авторизовал токен доступа для пользователя (id = root), но в CAS Management отсутствует роль пользователя.

Я не знаю, как назначить РОЛЬ для пользователя или указать роль пользователя, зафиксированную в реестре служб.

Пожалуйста, помогите мне.

Заранее спасибо.

0 ответов

Другие вопросы по тегам