SSB9 Tech Stack: Step 1 ‐ User Authentication - Arch-Node/personal_studies GitHub Wiki
Back to SSB9 Tech Stack Overview
1.1 Overview
Ellucian Self-Service Banner 9 (SSB9) uses Single Sign-On (SSO) authentication to manage user access. The authentication flow ensures secure login and seamless access across the platform.
1.2 User Initiates Login
- The user navigates to the Ellucian Self-Service URL (e.g.,
https://banner.university.edu/StudentSelfService
). - The system checks for an active session.
- If no session exists, the user is redirected to an authentication provider.
1.3 Authentication Methods
Ellucian supports various authentication protocols based on institutional preferences:
A. CAS (Central Authentication Service)
- The user is redirected to a CAS server (
https://auth.university.edu/cas/login
). - The user provides username and password.
- If valid, the CAS server issues a service ticket.
- The ticket is validated by Banner, granting access.
B. SAML (Shibboleth, ADFS, Okta, Azure AD)
- The user is redirected to a SAML Identity Provider (IdP).
- The IdP validates the user credentials and issues a SAML assertion.
- Depending on the institutional setup, the assertion may be validated by Ellucian Ethos Identity Service (optional) or handled internally.
- If valid, Banner 9 grants access.
C. OAuth2 / OpenID Connect (OIDC)
- The user is redirected to an OAuth2 provider (e.g., Azure AD, Google, Okta).
- The provider authenticates and issues an access token.
- The token is validated by Banner before access is granted.
D. Local Authentication (Legacy Banner Authentication)
- Credentials are checked against GOBUMAP (User Mapping Table) in the Banner database.
- Additional tables such as GOAFARS (Authentication Rules) and GOBEACC (User Access) may also be involved.
- This method is primarily for internal or legacy authentication but is not recommended for production due to security concerns.
1.4 Session Creation & Token Handling
- Upon authentication, a JWT (JSON Web Token) session is created.
- The token is stored in a secure HTTP-only cookie or session storage.
- Future requests include the token for authentication.
- Example API call with authentication:
GET /api/student/advising/appointments Authorization: Bearer {JWT_TOKEN}
1.5 Role and Permissions Validation
- The system queries GURUSRI (User Security Table) for role-based access control.
- Additional validation may involve GOBEACC to check access permissions.
- Roles define user permissions (e.g., student, faculty, admin).
- Unauthorized users are redirected to an access denied page.
1.6 Redirect to Self-Service Dashboard
- If authentication is successful, the user is redirected to the dashboard.
- The frontend (typically Angular/React or another JavaScript framework) loads data via API calls to display user-specific information.
Summary Flow
User → Authentication Provider (CAS/SAML/OAuth2) → Token Issued → Role Validation → Dashboard Access
Conclusion
SSB9 authentication ensures secure, role-based access to the system using industry-standard SSO protocols. The process integrates seamlessly with the frontend and backend, enabling a secure and efficient user experience.