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

[Thread] SSO Auth Tracking #23794

Open
1 of 6 tasks
kdumontnu opened this issue Mar 29, 2023 · 4 comments
Open
1 of 6 tasks

[Thread] SSO Auth Tracking #23794

kdumontnu opened this issue Mar 29, 2023 · 4 comments
Labels
type/feature Completely new functionality. Can only be merged if feature freeze is not active. type/proposal The new feature has not been accepted yet but needs to be discussed first.

Comments

@kdumontnu
Copy link
Contributor

kdumontnu commented Mar 29, 2023

Feature Description

External auth was initially implemented in gitea with the intention of providing an alternate, parallel method for user login to cloud services (eg. GitHub, OpenID, etc.), and has subsequently been extended to include enterprise services, like Azure AD, Okta, etc.

There are a number of issues in the current implementation that don't work when configuring gitea for integration with a single sign-on tool for provisioning users with access control. These range from quality of life to potential security issues if not properly mitigated. Some of these already have associated issues/PRs, but some do not. The goal here should be to enable Gitea accounts to be fully managed from an external auth provider, which is a requirement for most enterprise applications.

This issue serves as a tracking thread for "SSO compatibility" for Gitea. I will start by drafting a list here of related issues and then linking them to existing issues or creating new issues if they don't exist.

@kdumontnu kdumontnu added type/proposal The new feature has not been accepted yet but needs to be discussed first. type/feature Completely new functionality. Can only be merged if feature freeze is not active. labels Mar 29, 2023
@lunny
Copy link
Member

lunny commented Mar 30, 2023

There are also #7056, #21672

@garymoon
Copy link
Contributor

garymoon commented Apr 5, 2023

Point number 2 (Check external auth for all user interaction) also applies to SSH keys in addition to API keys.

Addressing this point can involve checking the expiry property on the current access token, attempting a refresh if it's expired, and denying access if the access token's expired and a refresh fails. Access key validity periods vary, but as an example Google's live for an hour, so the refresh round-trip should be prohibitively expensive UX-wise.

@Adphi
Copy link

Adphi commented Nov 21, 2023

This issue is also related #14270.

@kdumontnu
Copy link
Contributor Author

I believe this PR #31572 is the last feature needed to effectively close this issue. There are some other issues I linked to in here, but the are more tangential + additional capability.

We should now have everything we need to set up Gitea w/ SSO identity provider.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
type/feature Completely new functionality. Can only be merged if feature freeze is not active. type/proposal The new feature has not been accepted yet but needs to be discussed first.
Projects
None yet
Development

No branches or pull requests

4 participants