How manojnewgen/aspclassicproject works
This repository implements an Okta SAML authentication gateway that connects a Classic ASP application to a .NET web service. The principal flow authenticates with Okta, validates and maps the SAML identity, classifies and resolves or onboards a local user, then creates a short-lived database token for the legacy application. Logout clears the bridge session and returns the user through Okta logout. The Classic ASP bridge and database-backed token exchange are evident from the tree and sampled service; wiring within unsampled ASP pages is not asserted beyond the documented bridge role.
Main entry points: AuthController.cs Auth Controller · schema.sql Application SQL · OktaSamlProvider.cs Okta SAML Provider · Program.cs Web Host
Components 18
Web Gateway
- Web Host
src/OktaSamlIntegration.Web/Program.cs - Auth Controller
src/OktaSamlIntegration.Web/Controllers/AuthController.cs - SAML Error Middleware
src/OktaSamlIntegration.Web/Middleware/SamlExceptionMiddleware.cs
SAML Authentication
- Okta SAML Provider
src/OktaSamlIntegration.Infrastructure/Providers/OktaSamlProvider.cs - SAML Validator
src/OktaSamlIntegration.Infrastructure/Services/SamlValidator.cs - XML Signature Verifier
src/OktaSamlIntegration.Infrastructure/Cryptography/XmlSignatureVerifier.cs - Replay Detector
src/OktaSamlIntegration.Infrastructure/Services/MemoryCacheReplayDetector.cs
Identity Services
- Group Classification
src/OktaSamlIntegration.Infrastructure/Services/UserClassificationService.cs - User Lookup
src/OktaSamlIntegration.Infrastructure/Services/DefaultUserLookupService.cs - User Onboarding
src/OktaSamlIntegration.Infrastructure/Services/DefaultUserOnboardingService.cs
Legacy Bridge
- ASP Login
classic-asp/Login.asp - ASP Callback
classic-asp/LoginCallback.asp - ASP Session Check
classic-asp/check_session.asp - ASP Logout
classic-asp/Logout.asp - Session Token Service
src/OktaSamlIntegration.Infrastructure/Services/DefaultSessionService.cs
Persistent State
- Application SQL
db/schema.sql
Other components
- User
- Okta IdP
Connections 25
- User → ASP Login: opens login
- ASP Login → Web Host: requests gateway
- Web Host → Auth Controller: routes requests
- Auth Controller → Okta SAML Provider: starts challenge
- Okta SAML Provider → Okta IdP: redirects SAML request
- Okta IdP → Okta SAML Provider: posts assertion
- Okta SAML Provider → SAML Validator: validates response
- SAML Validator → XML Signature Verifier: checks signature
- SAML Validator → Replay Detector: checks replay
- Auth Controller → Group Classification: resolves group type
- Group Classification → Application SQL: reads group mappings
- Auth Controller → User Lookup: resolves local user
- User Lookup → Application SQL: reads user mappings
- User Lookup → User Onboarding: onboards missing user
- User Onboarding → Application SQL: writes user records
- Auth Controller → Session Token Service: creates bridge token
- Session Token Service → Application SQL: writes session token
- ASP Callback → Application SQL: redeems session token
- ASP Session Check → Application SQL: checks session
- User → ASP Logout: requests logout
- ASP Logout → Auth Controller: requests gateway logout
- Auth Controller → Session Token Service: destroys local session
- Auth Controller → Okta IdP: redirects SLO
- Web Host → SAML Error Middleware: installs middleware
- SAML Error Middleware → Auth Controller: forwards requests