【问题标题】:Refreshing safariViewController causes OAuth2 to fail刷新 safariViewController 导致 OAuth2 失败
【发布时间】:2018-01-31 18:23:27
【问题描述】:

我对有问题的库(Keycloak)提出了类似的问题,但我觉得它实际上可能与库外的代码有关。

我正在尝试使用带有 Aerogear OAuth2 的 Safari 视图控制器,以便通过 Google 登录。

但是,在尝试登录时,如果您在登录过程中尝试刷新,我会收到来自 Keycloak 的错误 - 这是“无访问令牌”的访问管理服务。

let keycloakHost = ServerConfigurator.sharedInstance.keycloakUrl

config = KeycloakConfig(
    clientId: "company-name",
    host: keycloakHost,
    realm: "master",
    isOpenIDConnect: true)

config.webView = .safariViewController

config.webViewHandler = self.webViewHandler
oauthModule = KeycloakOAuth2Module(config: config, session: KeycloakClient.session)

我很难找到为什么 Safari 视图控制器刷新会导致这样的错误。

可能与新会话有关吗?由于它仅在刷新时发生并且仅在 Safari 视图控制器中发生,我的一部分感觉就像我对视图控制器进行了一些错误配置。

【问题讨论】:

    标签: ios swift safari oauth-2.0


    【解决方案1】:

    您好,我遇到了类似的问题,但我通过 keycloak 客户端解决了

    在我的领域 - 客户端 - Yourclient - 设置搜索访问类型并公开

    再试一次就可以成功登录

    【讨论】:

    • 如何在配置中进行设置?
    • 在你的keycloak客户端中,路径如下:Realm - client - Yourclient - Settings search Access Type and put public
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-12-10
    • 2021-09-18
    • 1970-01-01
    • 2012-10-13
    • 2018-01-24
    相关资源
    最近更新 更多