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

Unified Auth Service / Project #36

Draft
wants to merge 1 commit into
base: main
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 3 additions & 1 deletion content/docs/contributor/meta.json
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,9 @@
"zotistics",
"zotmeal",
"zotnfound",
"zotmeet"
"zotmeet",
"---Special Projects---",
"unified-auth"
],
"root": true
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
---
title: Inclusion & Exclusion
description: Adding and removing projects from Unified Auth.
---
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
{
"title": "Inclusion & Exclusion",
"pages": []
}
29 changes: 29 additions & 0 deletions content/docs/contributor/unified-auth/index.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
---
title: Unified Auth
description: ICSSC's unified authentication service for all projects.
---

Across many of our projects, authentication is a common prerequisite for other features. To bring together our fragmented authentication experince, for both developers and users, Unified Auth allows all projects to easily authenticate users.

## Core Features

Unified Auth allows users to sign in with Google OAuth. Only supporting Google OAuth is an intentional decision, as all UCI students to provisioned accounts. We've currently opted not to request access to UCI SSO/Shibboleth to reduce complexity and development time. After sign in, users are redirected through all projects to authenticate them on each domain. This ensures that users are signed into _all_ projects whenever they sign into _any_ project.

## Architecture

Unified Auth can be roughly broken down into two parts — handing user verification, and "universal" sign in. More specifically, it is a Hono project running on Cloudflare Workers.

<Cards>
<Card
href="/docs/contributor/unified-auth/init-authentication"
title="Initialization & User Authentication"
>
Redirecting to Unified Auth and verifying user identities.
</Card>
<Card
href="/docs/contributor/unified-auth/universal-sign-in"
title="Universal Sign In"
>
Unified Auth's redirect loop mechanism for signing user's into all projects.
</Card>
</Cards>
5 changes: 5 additions & 0 deletions content/docs/contributor/unified-auth/meta.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
{
"title": "Unified Auth",
"icon": "ScanFace",
"pages": ["inclusion-exclusion"]
}