Single sign on CAS与OpenID连接-如何使用“连接”设置重定向URI参数&引用;而不是",#&引用;回拨后

Single sign on CAS与OpenID连接-如何使用“连接”设置重定向URI参数&引用;而不是",#&引用;回拨后,single-sign-on,cas,openid-connect,Single Sign On,Cas,Openid Connect,我安装了带OIDC的CAS,并添加了如下服务,它工作正常: { "implicit": true, "logoutType": "BACK_CHANNEL", "@class": "org.apereo.cas.services.OidcRegisteredService", "evaluationOrder": 1, "clientId": "TEST", "bypassApprovalPromp

我安装了带OIDC的CAS,并添加了如下服务,它工作正常:

 {
        "implicit": true,
        "logoutType": "BACK_CHANNEL",
        "@class": "org.apereo.cas.services.OidcRegisteredService",
        "evaluationOrder": 1,
        "clientId": "TEST",
        "bypassApprovalPrompt": true,
        "jsonFormat": true,
        "jwks": "file:\/etc\/cas\/jwks\/\/enc-test-42.pub.jwks",
        "signIdToken": true,
        "description": "Test",
        "generateRefreshToken": true,
        "idTokenEncryptionEncoding": "A128GCM",
        "name": "Test client",
        "clientSecret": "TEST",
        "id": 42,
        "idTokenEncryptionAlg": "RSA-OAEP-256",
        "scopes": ["java.util.HashSet", ["openid", "profile", "email", "address", "phone"]],
        "serviceId": "https:\/\/redirect-host/callback",
        "encryptIdToken": true
    }
为了使用CAS登录,我调用以下URL:

http://cas-server/oidc/authorize?response_type=id_token+token&client_id=TEST&redirect_uri=https:\/\/redirect-host/callback&scope=openid+profile+email+phone+address
登录可以正常工作,但在从CAS重定向到回调url后,accessToken将被附加到回调url,并带有“#”not“?”

我能把“#”改成“?”吗? 我需要有参数与?这样我就可以在回调服务器中读取它们。(例如,在PHP中使用$\u GET)

在CAS源代码中,我发现重定向URL正在“”中构建


敬请指教。

我不是OIDC方面的专家,但#是URI中的片段标识符。根据它应该

客户端在检索文档时不应该向服务器发送URI片段,并且如果没有本地应用程序的帮助(见下文),片段不会参与HTTP重定向


您可以在OIDC规范中找到更多信息。关于如何在片段标识符之后提取信息,有一个java脚本示例。

我不是OIDC方面的专家,但#是URI中的片段标识符。根据它应该

客户端在检索文档时不应该向服务器发送URI片段,并且如果没有本地应用程序的帮助(见下文),片段不会参与HTTP重定向


您可以在OIDC规范中找到更多信息。在如何在片段标识符之后提取信息方面有一个java脚本示例。

您需要研究OIDC协议,以了解
response\u type=id\u token+token
的含义,为什么要调用它,然后您需要研究
implicit:true
的作用以及为什么确实将其设置为true


简言之,您选择的机制只需要使用
。切换到不同的响应/授权类型,然后您可以利用查询字符串等。

您需要研究OIDC协议,以了解
response\u type=id\u token+token
的含义、调用它的原因,然后您需要研究
implicit:true
的作用以及您确实将其设置为true的原因

简言之,您选择的机制只需要使用
。切换到不同的响应/授权类型,然后可以利用查询字符串等

https://redirect-host/callback#accessToken=.....