# sahat/satellizer

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/sahat-satellizer).**

7,801 stars · 1,109 forks · TypeScript · MIT

## Links

- GitHub: https://github.com/sahat/satellizer
- Homepage: https://satellizer-sahat.rhcloud.com
- awesome-repositories: https://awesome-repositories.com/repository/sahat-satellizer.md

## Description

Satellizer is an authentication library for AngularJS applications designed to manage user sign-in and session persistence using security tokens. It functions as a client-side implementation for exchanging credentials for tokens and attaching authorization headers to network requests.

The library handles identity integration through a token manager that supports both email-based authentication and external OAuth providers. It enables the authorization of users via third-party services using secure popup windows and allows for linking or unlinking external accounts to a user profile.

The project covers the broader surface of client-side session management, including user account registration, the parsing of token payloads to extract identity claims, and the automatic injection of authorization headers into API requests. It also provides utilities for saving and retrieving security tokens from browser storage to maintain state across refreshes.

## Tags

### Security & Cryptography

- [Token Authentication](https://awesome-repositories.com/f/security-cryptography/token-authentication.md) — Implements stateless token-based authentication to manage user sign-in and session persistence. ([source](https://github.com/sahat/satellizer/blob/master/bower.json))
- [Token-Based Authentication](https://awesome-repositories.com/f/security-cryptography/token-based-authentication.md) — Implements a complete security mechanism using cryptographic tokens to verify identity across requests. ([source](https://github.com/sahat/satellizer/blob/master/package.json))
- [Authorization Header Management](https://awesome-repositories.com/f/security-cryptography/authentication-clients/client-to-server-authentication/authorization-header-management.md) — Automatically injects security tokens into outgoing HTTP request headers for API authorization. ([source](https://github.com/sahat/satellizer))
- [Authentication Header Injection](https://awesome-repositories.com/f/security-cryptography/authentication-header-injection.md) — Injects authentication tokens into outgoing HTTP requests by adding authorization headers.
- [Email Authentication Strategies](https://awesome-repositories.com/f/security-cryptography/email-authentication-strategies.md) — Verifies user identity via email addresses and password-based credentials for sign-in. ([source](https://github.com/sahat/satellizer/))
- [Authentication Libraries](https://awesome-repositories.com/f/security-cryptography/identity-access-management/authentication-strategies/authentication-frameworks-plugins/authentication-libraries.md) — Acts as a dedicated authentication library for managing sign-in and session persistence in AngularJS applications.
- [OAuth and Identity Providers](https://awesome-repositories.com/f/security-cryptography/identity-access-management/authentication-strategies/user-facing-login-methods/oauth-identity-providers.md) — Integrates external OAuth identity providers to allow users to sign in via third-party services.
- [OAuth Authentication](https://awesome-repositories.com/f/security-cryptography/oauth-authentication.md) — Integrates OAuth 2.0 tokens for secure service communication and user authorization. ([source](https://github.com/sahat/satellizer))
- [OAuth Provider Integrations](https://awesome-repositories.com/f/security-cryptography/oauth-authentication/oauth-provider-integrations.md) — Integrates with external OAuth providers to authorize users via secure token flows. ([source](https://github.com/sahat/satellizer/))
- [Credential Exchanges](https://awesome-repositories.com/f/security-cryptography/secure-token-exchange/credential-exchanges.md) — Converts user email and password sets into secure session tokens through server-side verification.
- [Social Authentication Providers](https://awesome-repositories.com/f/security-cryptography/social-authentication-providers.md) — Authenticates users through third-party social identity services using secure protocols. ([source](https://github.com/sahat/satellizer/blob/master/package.json))
- [AngularJS Integrations](https://awesome-repositories.com/f/security-cryptography/token-authentication/angularjs-integrations.md) — Provides a token-based authentication implementation specifically designed as an AngularJS service.
- [Token-based Authorization](https://awesome-repositories.com/f/security-cryptography/token-based-authorization.md) — Implements a client-side system for exchanging credentials for tokens and authorizing API requests.
- [Token Management](https://awesome-repositories.com/f/security-cryptography/token-management.md) — Provides utilities for saving, retrieving, and removing active access tokens from browser storage. ([source](https://github.com/sahat/satellizer/blob/master/README.md))
- [Token Payload Parsing](https://awesome-repositories.com/f/security-cryptography/token-payload-parsing.md) — Extracts user identity claims and metadata directly from security tokens to determine access levels.
- [Web Sign-in Flows](https://awesome-repositories.com/f/security-cryptography/web-sign-in-flows.md) — Implements the sign-in flow for authenticating users via email and password and storing the resulting token. ([source](https://github.com/sahat/satellizer))
- [Authentication Status Validation](https://awesome-repositories.com/f/security-cryptography/authentication-status-validation.md) — Verifies the presence and validity of tokens in browser storage to determine authentication status. ([source](https://github.com/sahat/satellizer/blob/master/README.md))
- [Account Linking](https://awesome-repositories.com/f/security-cryptography/identity-access-management/identity-management/account-linking.md) — Connects user profiles to third-party platforms to enable multiple login methods. ([source](https://github.com/sahat/satellizer/))
- [JWT Claim Extractors](https://awesome-repositories.com/f/security-cryptography/jwt-authentication/jwt-claim-extractors.md) — Parses JWT payloads to extract user identity claims for application-level access control.
- [Popup Authorization Flows](https://awesome-repositories.com/f/security-cryptography/oauth-authentication/oauth-token-retrievals/oauth-flow-implementations/popup-authorization-flows.md) — Handles external identity provider authorization by launching secure window popups to capture access tokens.
- [OAuth Token Management](https://awesome-repositories.com/f/security-cryptography/oauth-token-management.md) — Manages the authorization flow and token exchange with external OAuth providers using secure popups.
- [User Session Termination](https://awesome-repositories.com/f/security-cryptography/session-management/user-session-termination.md) — Enables programmatic ending of user sessions by removing security tokens from browser storage. ([source](https://github.com/sahat/satellizer/blob/master/README.md))
- [Authentication Token Caching](https://awesome-repositories.com/f/security-cryptography/token-authentication/authentication-token-caching.md) — Provides local storage mechanisms for security tokens to maintain user sessions across page refreshes. ([source](https://github.com/sahat/satellizer))
- [Authentication Token Extraction](https://awesome-repositories.com/f/security-cryptography/token-based-authentication/authentication-token-extraction.md) — Extracts user identity claims and metadata directly from security tokens to determine application state. ([source](https://github.com/sahat/satellizer/blob/master/README.md))
- [User Account Creators](https://awesome-repositories.com/f/security-cryptography/user-account-creators.md) — Registers new users by submitting email and password credentials to a backend service. ([source](https://github.com/sahat/satellizer))
- [Third-Party Login Linking](https://awesome-repositories.com/f/security-cryptography/user-account-management/third-party-login-linking.md) — Associates a current user session with an external provider to allow signing in via multiple services. ([source](https://github.com/sahat/satellizer/blob/master/README.md))

### Data & Databases

- [Browser Storage Persistence](https://awesome-repositories.com/f/data-databases/state-persistence/browser-storage-persistence.md) — Saves and retrieves security tokens from browser storage to maintain user sessions across page refreshes.

### Web Development

- [Session Persistence](https://awesome-repositories.com/f/web-development/client-side-storage/session-persistence.md) — Manages client-side session persistence by tracking and storing security tokens in the browser.
- [Authentication Services](https://awesome-repositories.com/f/web-development/angularjs-api-integration/authentication-services.md) — Provides authentication logic as a shared singleton service within the AngularJS framework.

### Networking & Communication

- [Request Header Configuration](https://awesome-repositories.com/f/networking-communication/request-header-configuration.md) — Provides tools for defining and managing custom HTTP request headers used for authentication. ([source](https://github.com/sahat/satellizer/blob/master/README.md))
