# zhangkaitao/shiro-example

**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/zhangkaitao-shiro-example).**

4,775 stars · 3,858 forks · HTML

## Links

- GitHub: https://github.com/zhangkaitao/shiro-example
- awesome-repositories: https://awesome-repositories.com/repository/zhangkaitao-shiro-example.md

## Topics

`shiro`

## Description

This project is a reference implementation and a collection of code samples for deploying the Apache Shiro security framework within Java-based web applications. It serves as a demonstration for implementing authentication, authorization, and user identity management.

The implementation features distributed session management to coordinate user states across multiple server instances for high availability. It also includes samples for third-party OAuth2 integration, enabling external account authentication, and single sign-on support to grant access to multiple related applications.

The project covers broad security capabilities including role-based access control with dynamic URL permissions and resource access restrictions. It also demonstrates the use of security filters for request interception, concurrent login control, and the encryption of sensitive data.

## Tags

### Security & Cryptography

- [Apache Shiro Implementations](https://awesome-repositories.com/f/security-cryptography/apache-shiro-implementations.md) — Serves as a reference implementation for deploying the Apache Shiro security framework in Java applications.
- [Reference Implementations](https://awesome-repositories.com/f/security-cryptography/authentication-and-authorization/shiro-based-access-controls/reference-implementations.md) — Provides a collection of code samples demonstrating authentication and authorization using Apache Shiro.
- [Distributed Session Storage](https://awesome-repositories.com/f/security-cryptography/identity-access-management/session-management/server-side-session-stores/distributed-session-storage.md) — Coordinates user session state across multiple server instances using a shared external data store for high availability. ([source](https://github.com/zhangkaitao/shiro-example#readme))
- [User Identity Verification](https://awesome-repositories.com/f/security-cryptography/identity-authentication/user-identity-verification.md) — Provides a system for verifying user identities to ensure secure access to the application. ([source](https://github.com/zhangkaitao/shiro-example#readme))
- [Java Security Frameworks](https://awesome-repositories.com/f/security-cryptography/java-security-frameworks.md) — Implements role-based access control and identity verification within Java-based web applications.
- [Permission-Based Access Control](https://awesome-repositories.com/f/security-cryptography/permission-based-access-control.md) — Provides a security model where access to resources is granted based on permissions assigned to users or roles. ([source](https://github.com/zhangkaitao/shiro-example#readme))
- [Role-Based Access Control](https://awesome-repositories.com/f/security-cryptography/role-based-access-control.md) — Restricts system operations by mapping users to roles and roles to granular permissions.
- [User Identity Management](https://awesome-repositories.com/f/security-cryptography/user-identity-management.md) — Manages user profiles, authentication, and the assignment of roles and permissions.
- [Web Application Security](https://awesome-repositories.com/f/security-cryptography/web-application-security.md) — Implements a security layer using filters and interceptors to protect web endpoints and pages. ([source](https://github.com/zhangkaitao/shiro-example/blob/master/README.md))
- [Concurrent Session Restrictions](https://awesome-repositories.com/f/security-cryptography/concurrent-session-restrictions.md) — Limits the number of simultaneous active sessions a single user can maintain across devices. ([source](https://github.com/zhangkaitao/shiro-example/blob/master/README.md))
- [OAuth2 Integration](https://awesome-repositories.com/f/security-cryptography/oauth2-integration.md) — Connects to OAuth2 providers to enable secure user authorization and external account sign-in. ([source](https://github.com/zhangkaitao/shiro-example/blob/master/README.md))
- [Dynamic Permission Refresh](https://awesome-repositories.com/f/security-cryptography/permission-based-access-control/dynamic-permission-refresh.md) — Allows real-time updates of resource access rules by loading permission sets from a database.
- [URL Permission Mapping](https://awesome-repositories.com/f/security-cryptography/permission-based-access-control/dynamic-permission-refresh/url-permission-mapping.md) — Provides the ability to update resource access rules for URLs in real-time without restarting the application. ([source](https://github.com/zhangkaitao/shiro-example/blob/master/README.md))
- [Session Lifecycle Management](https://awesome-repositories.com/f/security-cryptography/session-lifecycle-management.md) — Manages the creation, rotation, and expiration of user sessions to track state across multiple requests. ([source](https://github.com/zhangkaitao/shiro-example/blob/master/README.md))
- [Single Sign-On Solutions](https://awesome-repositories.com/f/security-cryptography/single-sign-on-solutions.md) — Implements single sign-on to grant access to multiple related applications with one authentication. ([source](https://github.com/zhangkaitao/shiro-example#readme))
- [Third-Party Authentication Providers](https://awesome-repositories.com/f/security-cryptography/third-party-authentication-providers.md) — Integrates external identity providers using OAuth2 protocols for user authentication.

### Software Engineering & Architecture

- [Security Filter Chains](https://awesome-repositories.com/f/software-engineering-architecture/request-interception-control/identity-request-interception/security-filter-chains.md) — Uses a chain of security filters to enforce authentication and authorization on incoming HTTP requests.

### Data & Databases

- [Server-Side Session Stores](https://awesome-repositories.com/f/data-databases/session-state-management/server-side-session-stores.md) — Provides server-side session storage to maintain user state across distributed server instances.
