Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Refactor LoginFlowManager interactions with GlobusApp #1018

Conversation

derek-globus
Copy link
Contributor

@derek-globus derek-globus commented Jul 30, 2024

Made some changes to the way LoginFlowManagers are handled in GlobusApp to improve the native login experience, support confidential clients in UserApps, and make it easier to configure the correct login_flow_manager.

Changelog

  • Changed the experimental GlobusApp class in the following ways (:pr:NUMBER):

    • LoginFlowManagers now insert GlobusApp.app_name into any Native
      client login flows as the prefill_named_grant.

    • GlobusAppConfig now accepts a login_redirect_uri parameter to specify
      the redirect URI for a login flow.

      • Invalid when used with a LocalServerLoginFlowManager.

      • Defaults to "https://auth.globus.org/v2/web/auth-code" for native
        client flows. Raises an error if not set for confidential ones.

    • UserApp now allows for the use of Confidential client flows with the use of
      either a LocalServerLoginFlowManager or a configured login_redirect_uri.

    • GlobusAppConfig.login_flow_manager now accepts shorthand string references
      "command-line" to use a CommandLineLoginFlowManager and
      "local-server" to use a LocalServerLoginFlowManager.

    • GlobusAppConfig.login_flow_manager also now accepts a
      LoginFlowManagerProvider, a class with a
      for_globus_app(...) -> LoginFlowManager class method.


📚 Documentation preview 📚: https://globus-sdk-python--1018.org.readthedocs.build/en/1018/

Copy link
Contributor

@ada-globus ada-globus left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Approved as I think this all functionally looks great. I do have some suggested changes vis-a-vis docs and a couple microscopic nits re: comments.

@derek-globus derek-globus merged commit 79f6b84 into globus:main Aug 2, 2024
15 checks passed
@derek-globus derek-globus deleted the refactor-login-flow-manager-interactions branch August 2, 2024 18:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants