CAS 6.x - запрос об обходе - PullRequest
1 голос
/ 17 мая 2019

В настоящее время я работаю над CAS в версии 6.1.Я включил OIDC и создал сервис, который также работает.

Проблема, с которой я сталкиваюсь, заключается в том, что при каждом входе в систему пользователь перенаправляется на экран подтверждения / согласия, где он должен предоставить службе доступ.

Согласно документации,OidcRegisteredService расширяет OAuthRegisteredService, и доступные параметры конфигурации для службы OAuth также применяются к службе OIDC.

Поэтому я использовал параметр "bypassApprovalPrompt": true

К сожалению, это не сработало вообще,

При дальнейшем исследовании я обнаружил класс конфигурации org.apereo.cas.services.consent.DefaultRegisteredServiceConsentPolicy, где я установил для ключа «enabled» значение false.

Это также не сработало.

2019-05-17 16:38:54,041 TRACE [org.apereo.cas.support.oauth.web.views.OAuth20ConsentApprovalViewResolver] - <Bypassing approval prompt for service [OidcRegisteredService(super=OAuthRegisteredService(super=AbstractRegisteredService(serviceId=^http://(onlineservice2|ncvosproxy2-.+)\.company\.de(:[0-9]+)?(/.*)?, name=Onlineservice, theme=null, informationUrl=null, privacyUrl=null, responseType=null, id=2010, expirationPolicy=DefaultRegisteredServiceExpirationPolicy(deleteWhenExpired=false, notifyWhenDeleted=false, expirationDate=null), proxyPolicy=org.apereo.cas.services.RefuseRegisteredServiceProxyPolicy@1, proxyTicketExpirationPolicy=null, serviceTicketExpirationPolicy=null, singleSignOnParticipationPolicy=null, evaluationOrder=0, usernameAttributeProvider=org.apereo.cas.services.DefaultRegisteredServiceUsernameProvider@87297e2, logoutType=BACK_CHANNEL, requiredHandlers=[], environments=[], attributeReleasePolicy=ReturnAllAttributeReleasePolicy(super=AbstractRegisteredServiceAttributeReleasePolicy(attributeFilter=null, principalAttributesRepository=DefaultPrincipalAttributesRepository(), consentPolicy=DefaultRegisteredServiceConsentPolicy(enabled=false, excludedAttributes=null, includeOnlyAttributes=null), authorizedToReleaseCredentialPassword=false, authorizedToReleaseProxyGrantingTicket=false, excludeDefaultAttributes=false, authorizedToReleaseAuthenticationAttributes=true, principalIdAttribute=null, order=0)), multifactorPolicy=DefaultRegisteredServiceMultifactorPolicy(multifactorAuthenticationProviders=[], failureMode=UNDEFINED, principalAttributeNameTrigger=null, principalAttributeValueToMatch=null, bypassEnabled=false), logo=./images/onlineservice.svg, logoutUrl=null, accessStrategy=DefaultRegisteredServiceAccessStrategy(order=0, enabled=true, ssoEnabled=true, unauthorizedRedirectUrl=null, delegatedAuthenticationPolicy=DefaultRegisteredServiceDelegatedAuthenticationPolicy(allowedProviders=[], permitUndefined=true), requireAllAttributes=true, requiredAttributes={}, rejectedAttributes={}, caseInsensitive=false), publicKey=null, properties={}, contacts=[]), clientSecret=xxxxxxxxxxxxxx, clientId=onlineservice, bypassApprovalPrompt=true, generateRefreshToken=false, jwtAccessToken=false, supportedGrantTypes=[], supportedResponseTypes=[]), jwks=null, jwksAuthenticationMethod=client_secret_basic, signIdToken=true, encryptIdToken=true, idTokenEncryptionAlg=null, idTokenSigningAlg=null, idTokenEncryptionEncoding=null, sectorIdentifierUri=null, applicationType=web, subjectType=public, dynamicallyRegistered=false, implicit=false, dynamicRegistrationDateTime=null, scopes=[])]: [null]>
2019-05-17 16:38:54,042 TRACE [org.apereo.cas.support.oauth.web.views.OAuth20ConsentApprovalViewResolver] - <callbackUrl: [https://sso2.company.de:8443/cas/oidc/authorize?response_type=code&scope=openid&client_id=onlineservice&state=Ev9kuSd-M6eB7inyzc8MimIBP9Q&redirect_uri=http%3A%2F%2Fonlineservice2.company.de%2Fsecure%2Fredirect_uri&nonce=H_n_BDMb3scnes75g-qra5pzKvUL-O1zYs_HlnoM8T8]>

Моя цель - обойти любой экран согласия.

1 Ответ

0 голосов
/ 26 июня 2019

bypassApprovalPrompt должен сделать работу.Похоже, что более поздние версии CAS 6.1 исправили это поведение, как отмечено здесь: https://groups.google.com/a/apereo.org/forum/#!searchin/cas-user/bypassApprovalPrompt%7Csort:date/cas-user/x6MxkLv4bVo/ta7HMEi5BAAJ

...