openid / openid/AppAuth-iOS

Broken redirection in case of multiple external agents

Open
#932 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bug
Dominant language
Objective-C
Stars
2k
Forks
867
Avg merge
4d 48m
Merged PRs (30d)
1

Description

Describe the bug
My app opens login page on browser for user authentication, and if browser also use his own external user agent (some card reader app) instead of username and password then last external user agent will not redirect connection back to app's browser but will create new instance of browser separated from app and redirect there. If browser doesn't use his own external agent but login with username and password then redirection is not broken and result is sent back to my app.

To Reproduce
Steps to reproduce the behavior:

  1. Start a OIDExternalUserAgentSession, using for example: OIDAuthState.authState(...)
  2. Browser login page must have additional authentication methods besides the username and password used by external applications.
  3. On login page use another authentication method that use own external user agent
  4. Second external user agent returns result to new instance of browser, insted of external user agent

Expected behavior
Redirection goes back to root app

Screenshots
/

Environment

  • Device: iPhone 13
  • OS: 18.5
  • Browser: Safari

Additional context
/

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the OIDExternalUserAgentSession flow initiated through OIDAuthState.authState(...) and reproduce the behavior on iPhone 13 with Safari when a second external authentication method opens its own user agent. Done means the authentication result redirects back to the root app rather than a separate browser instance.

Written by the indexing model from the issue text.

Assessment

Tech stack
objective-c
Domain
authentication, mobile
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.