Authentication & Authorization System

Implement JWT authentication, RBAC, and OAuth 2.0 for Angular and Node.js LMS applications.

Updated Aug 21, 2021
One-click install
npx skills add https://github.com/ZouZou/angular-sample-app --skill authentication-authorization-system
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: Authentication & Authorization System
Source: https://github.com/ZouZou/angular-sample-app/tree/main/.claude/skills/auth-system
Command: npx skills add https://github.com/ZouZou/angular-sample-app --skill authentication-authorization-system

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This Skill provides a production-ready authentication and authorization framework for the LMS, including user management, role-based access control, password security, email verification, and OAuth integrations.

Core Features & Use Cases

  • User management & RBAC: Roles like student, instructor, admin, and moderator with granular permissions.
  • Secure authentication: JWT-based login, session management, and account lockout.
  • Password & verification flows: Email verification, password reset, remember-me functionality, and 2FA (optional).
  • OAuth integration: Sign-in with Google and GitHub to streamline onboarding.
  • Profile management: User profiles with preferences and security settings.

Quick Start

Set up the authentication module for user sign-up, email verification, and JWT login.

Frequently Asked Questions about Authentication & Authorization System

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I implement JWT-based authentication for an LMS with user registration and login?

JWT-based authentication secures LMS login by issuing signed tokens after credential verification. This Skill provides user registration with email verification, secure JWT token generation, refresh token handling, and session management for Angular + Node.js projects, enabling stateless authentication across courses and enrollments.

What's the best way to set up role-based access control (RBAC) with permissions for different user types?

RBAC grants permissions based on user roles—student, instructor, admin, moderator—allowing granular control over course and enrollment access. This Skill defines role hierarchies, maps permissions to actions, and enforces access rules during request handling, supporting scalable permission assignment across LMS workflows.

Can I add OAuth 2.0 sign-in with Google and GitHub to my LMS?

Yes. OAuth 2.0 integration streamlines user onboarding by delegating authentication to third-party providers. This Skill handles OAuth token exchange, user account linking, profile data mapping, and storage of OAuth IDs, reducing sign-up friction while maintaining security.

How do I set up email verification and password reset workflows?

Email verification and password reset workflows confirm user identity and recover account access securely. This Skill generates verification tokens, manages email delivery, validates reset requests, and updates password hashes, protecting accounts from unauthorized access while maintaining user experience.

Does this support multi-factor authentication (2FA) and account lockout for security?

Yes. Optional 2FA adds a verification step using time-based codes, and account lockout blocks repeated failed login attempts. This Skill stores 2FA secrets, enforces lockout policies with configurable thresholds, and integrates session management to prevent credential compromise.

What does this require in terms of Node.js, Angular, and database setup to get started?

This Skill targets Angular + Node.js LMS projects and requires a database to store user entities with roles, statuses, hashed passwords, OAuth IDs, and 2FA secrets. It satisfies production-ready requirements for user management, token persistence, and permission mapping without external dependencies.