feat: add Google Workspace SSO configuration per school
All checks were successful
Build & Push / Build & Push image (push) Successful in 39s
All checks were successful
Build & Push / Build & Push image (push) Successful in 39s
- Implemented Google SSO management in the school settings, allowing schools to configure their own OAuth2 credentials. - Added fields for Client ID and Client Secret in the edit school modal and school detail page. - Introduced functionality to save and clear Google SSO settings via API. - Updated UI to display current SSO status and instructions for setting up Google OAuth2. - Created a new database migration to add `google_client_id` and `google_client_secret` columns to the schools table.
This commit is contained in:
29
backend/migrations/versions/0003_school_google_sso.py
Normal file
29
backend/migrations/versions/0003_school_google_sso.py
Normal file
@@ -0,0 +1,29 @@
|
||||
"""schools: voeg Google Workspace SSO credentials toe per school
|
||||
|
||||
Revision ID: 0003
|
||||
Revises: 0002
|
||||
Create Date: 2026-03-03
|
||||
|
||||
Elke school heeft zijn eigen Google Workspace omgeving en dus
|
||||
zijn eigen OAuth2 client_id en client_secret. Deze worden per school
|
||||
opgeslagen en nooit blootgesteld via de API (enkel of ze ingesteld zijn).
|
||||
"""
|
||||
from alembic import op
|
||||
import sqlalchemy as sa
|
||||
|
||||
revision = '0003'
|
||||
down_revision = '0002'
|
||||
branch_labels = None
|
||||
depends_on = None
|
||||
|
||||
|
||||
def upgrade():
|
||||
op.add_column('schools',
|
||||
sa.Column('google_client_id', sa.String(255), nullable=True))
|
||||
op.add_column('schools',
|
||||
sa.Column('google_client_secret', sa.String(255), nullable=True))
|
||||
|
||||
|
||||
def downgrade():
|
||||
op.drop_column('schools', 'google_client_secret')
|
||||
op.drop_column('schools', 'google_client_id')
|
||||
Reference in New Issue
Block a user