❶ shior名词解释
Shiro是什么
1、Apache Shiro是java的一个安全框架。对比另一个安全框架Spring Sercurity,它更简单和灵活。
2、Shiro 可以非常容易的开发出足够好的应用,其不仅可以用在JavaSE环境,也可以用JavaEE环境。
3、Shiro可以帮助我们完成:认证、授权、加密、会话管理、Web集成、缓存等。
shiro有三大核心组件:
1、Subject:是shiro提供给外界的唯一接口,外界发起的请求都必须通过subject,也就是说 Shiro 的对外API 核心就是 Subject。Subject 代表了当前“用户”, 这个用户不一定是一个具体的人,与当前应用交互的任何东西都是 Subject,如网络爬虫,机器人等;与 Subject 的所有交互都会委托给 SecurityManager;Subject 其实是一个门面,SecurityManager 才是实际的执行者;
2、SecurityManager:安全管理器;是 Shiro 的核心;所有与安全有关的操作都会与SecurityManager 交互;且其管理着所有 Subject;它负责与 Shiro 的其他组件进行交互,它相当于 SpringMVC 中DispatcherServlet 的角色
3、Realm:Shiro 从 Realm 获取安全数据(如用户、角色、权限),就是说SecurityManager 要验证用户身份,那么它需要从 Realm 获取相应的用户进行比较以确定用户身份是否合法;也需要从 Realm 得到用户相应的角色/ 权限进行验证用户是否能进行操作;可以把 Realm 看成 DataSource
❷ shiro是什么
Shiro是Apache旗下一个强大的Java安全框架,主要用于实现用户身份认证、权限授权、加密和会话管理等功能。
主要功能:
- 身份认证:Shiro可以验证用户身份,确保用户是他们所声称的人。这是通过比较用户提供的凭证(如用户名和密码)与存储在系统中的凭证来实现的。
- 权限授权:一旦用户身份得到验证,Shiro可以进一步确定用户是否有权访问特定的资源或执行特定的操作。这是通过检查用户的角色和权限来实现的。
- 加密:Shiro提供了加密功能,以保护敏感数据。这包括数据在存储和传输过程中的加密,以确保数据的安全性。
- 会话管理:Shiro可以管理用户的会话,包括会话的创建、维护和销毁。这有助于跟踪用户的活动,并在用户注销或会话超时时清理资源。
核心组件:
- Subject:即“当前操作用户”,代表了当前与系统交互的用户实体。Subject提供了与用户交互的API,如登录、注销等。
- SecurityManager:是Shiro的核心,管理所有用户的安全操作。它负责协调Shiro的安全功能,如认证、授权、加密和会话管理等。
- Realms:充当了Shiro与应用安全数据间的“桥梁”。Realm负责从数据源(如数据库、LDAP等)获取安全数据,并将其提供给Shiro进行认证和授权等操作。
总之,Shiro是一个功能强大且易于使用的Java安全框架,它通过提供身份认证、权限授权、加密和会话管理等功能,帮助开发人员构建安全的应用程序。
❸ java权限框架有哪些
Java权限框架主要包括以下几种:
Apache Shiro
- 简介:Apache Shiro是一个功能强大且易于使用的Java安全框架,提供了身份验证、授权、密码和会话管理等核心安全功能。
- 特点:Shiro框架设计简洁直观,开发者可以快速轻松地将其集成到应用程序中,以满足各种安全需求。
Kasai
- 简介:Kasai是一个基于Java的认证与授权框架,专注于为多用户应用程序提供一个安全、易于管理的许可方案。
- 特点:Kasai框架提供了完善的认证和授权机制,帮助开发者构建安全的应用程序环境,同时简化了权限管理的复杂性。
OpenSAML
- 简介:OpenSAML是一组开源的Java与C++类库,实现了SAML(Security Assertion Markup Language)1.0与1.1规范。
- 特点:OpenSAML主要用于处理SAML断言和协议,支持Web服务之间的安全认证和授权,是构建基于SAML的安全应用的重要工具。
Acegi(Spring Security前身)
- 简介:Acegi安全系统是一个专为Spring Framework设计的安全框架,能够与流行的Web容器无缝集成。
- 特点:Acegi提供了全面的安全功能,包括身份验证、授权、访问控制等,是Spring应用程序中常用的安全解决方案。需要注意的是,Acegi现已被Spring Security所取代,但了解其历史背景对于理解Java安全框架的演变仍有帮助。
jGuard
- 简介:jGuard是一个基于JAAS(Java Authentication and Authorization Service)的Java安全框架,主要用于解决Web应用程序的访问控制问题。
- 特点:jGuard提供了灵活且强大的访问控制机制,能够帮助开发者轻松地实现基于角色的访问控制(RBAC)等安全策略。
这些Java权限框架各有特色,开发者可以根据具体的应用场景和安全需求选择合适的框架来构建安全的应用程序。