Question on code.
What can result CAS redirecting to /?
Can anybody point to the class which is responsible for this behavior.
On Wednesday, September 6, 2017 at 5:13:56 AM UTC+2, Zhang Yu wrote:
>
> env:
> Java 8, CAS 5.1.3, Tomcat 8.5 (standalone), IntelliJ, macOS Sierra.
>
> pom.xml:
>
> <properties>
> <cas.version>5.1.3</cas.version>
> </properties>
>
> <dependencies>
> <dependency>
> <groupId>org.apereo.cas</groupId>
> <artifactId>cas-server-webapp</artifactId>
> <version>${cas.version}</version>
> <type>war</type>
> <scope>runtime</scope>
> </dependency>
> <dependency>
> <groupId>org.apereo.cas</groupId>
> <artifactId>cas-server-support-jdbc</artifactId>
> <version>${cas.version}</version>
> </dependency>
> <dependency>
> <groupId>org.apereo.cas</groupId>
> <artifactId>cas-server-support-json-service-registry</artifactId>
> <version>${cas.version}</version>
> </dependency>
> <dependency>
> <groupId>org.apereo.cas</groupId>
> <artifactId>cas-server-webapp-config-security</artifactId>
> <version>${cas.version}</version>
> </dependency>
> <dependency>
> <groupId>org.apereo.cas</groupId>
> <artifactId>cas-server-support-oauth-webflow</artifactId>
> <version>${cas.version}</version>
> </dependency>
>
> <dependency>
> <groupId>com.oracle</groupId>
> <artifactId>ojdbc8</artifactId>
> <version>12.2.0.1</version>
> </dependency>
> </dependencies>
>
>
> CAS runs fine at http://127.0.0.1:8080.
>
> Registered a JSON service with CAS to act as a demo OAuth client:
>
> {
> "@class": "org.apereo.cas.support.oauth.services.OAuthRegisteredService",
> "serviceId": "http://(127.0.0.1|localhost):8081/login/oauth2/cas",
> "clientId": "clientid",
> "clientSecret": "clientSecret",
> "name": "OAuth20ClientDemo",
> "id": 1002,
> "description": "",
> "evaluationOrder": 0,
> "attributeReleasePolicy": {
> "@class": "org.apereo.cas.services.ReturnAllAttributeReleasePolicy"
> }
> }
>
> When CAS starts, it automatically generate another JSON service (which
> seems a bit weird, however I cannot tell whether it is normal or not):
>
> {
> @class: org.apereo.cas.services.RegexRegisteredService
> serviceId: http://localhost:8080/oauth2.0/callbackAuthorize.*
> name: RegexRegisteredService
> id: 103356745490349536
> description: OAuth Authentication Callback Request URL
> proxyPolicy:
> {
> @class: org.apereo.cas.services.RefuseRegisteredServiceProxyPolicy
> }
> evaluationOrder: 0
> usernameAttributeProvider:
> {
> @class:
> org.apereo.cas.services.DefaultRegisteredServiceUsernameProvider
> canonicalizationMode: NONE
> encryptUsername: false
> }
> attributeReleasePolicy:
> {
> @class: org.apereo.cas.services.DenyAllAttributeReleasePolicy
> principalAttributesRepository:
> {
> @class:
> org.apereo.cas.authentication.principal.DefaultPrincipalAttributesRepository
> expiration: 2
> timeUnit: HOURS
> }
> authorizedToReleaseCredentialPassword: false
> authorizedToReleaseProxyGrantingTicket: false
> excludeDefaultAttributes: true
> }
> multifactorPolicy:
> {
> @class:
> org.apereo.cas.services.DefaultRegisteredServiceMultifactorPolicy
> failureMode: CLOSED
> bypassEnabled: false
> }
> accessStrategy:
> {
> @class: org.apereo.cas.services.DefaultRegisteredServiceAccessStrategy
> enabled: true
> ssoEnabled: true
> requireAllAttributes: true
> caseInsensitive: false
> }
> }
>
> The demo client runs as another standalone Tomcat app at
> http://127.0.0.1:8081.
>
> Now comes the testing process.
>
> The first steps of the process look good:
>
> http://localhost:8081/login/oauth2/cas
> 302 ->
>
> http://127.0.0.1:8080/oauth2.0/authorize?client_id=clientid&redirect_uri=http://localhost:8081/login/oauth2/cas&response_type=code&state=2YqY0c
> 302 ->
>
> http://localhost:8080/login?service=http%3A%2F%2Flocalhost%3A8080%2Foauth2.0%2FcallbackAuthorize%3Fclient_name%3DCasOAuthClient%26client_id%3Dclientid%26redirect_uri%3Dhttp%3A%2F%2Flocalhost%3A8081%2Flogin%2Foauth2%2Fcas
>
> After inputing correct username/password in the form and press LOGIN, A
> POST is submitted to:
>
> http://localhost:8080/login?service=http%3A%2F%2Flocalhost%3A8080%2Foauth2.0%2FcallbackAuthorize%3Fclient_name%3DCasOAuthClient%26client_id%3Dclientid%26redirect_uri%3Dhttp%3A%2F%2Flocalhost%3A8081%2Flogin%2Foauth2%2Fcas
>
> The response is a 302 to the following url:
>
>
> http://localhost:8080/oauth2.0/callbackAuthorize?client_name=CasOAuthClient&client_id=clientid&redirect_uri=http://localhost:8081/login/oauth2/cas&ticket=ST-6-T71F2TDPjCsPF9d3Shby-localhost
>
> *Here comes the problem: The response of the above url
> (/callbackAuthorize) is a 302 redirection to '/' (root path of CAS), which
> then redirects to the login page (/login). *
>
> I think the expected behavior of /callbackAuthorize should be a
> redirection back to the client app at
> http://localhost:8081/login/oauth2/cas with the OAuth token issued.
>
> Did I get anything wrong or miss any configurations?
>
> Thanks.
>
>
>
--
- Website: https://apereo.github.io/cas
- Gitter Chatroom: https://gitter.im/apereo/cas
- List Guidelines: https://goo.gl/1VRrw7
- Contributions: https://goo.gl/mh7qDG
---
You received this message because you are subscribed to the Google Groups "CAS
Community" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion on the web visit
https://groups.google.com/a/apereo.org/d/msgid/cas-user/4b460b4b-5c27-47e0-b011-c53e08b71a96%40apereo.org.