Tomcat JAAS 身份验证和授权
ava 认证和授权服务(JAAS)是一种用于验证用户身份以确定安全等级的 Tomcat Realm ( org.apache.catalina.Realm)的实现。 需求Tomcat 7.0, MVC (推荐 Spring MVC)和数据库(推荐 Mysql) 1. 配置appNameappName 属性的值将被传递给 LoginContext (javax.security.auth.login.LoginContext) 构造函数,以指定实现LoginModule ( javax.security.auth.spi.LoginModule) 的实体名称。 LoginModule 是一个提供了特定类型的身份验证的可插拔接口。 LoginContext 通过读取配置(javax.security.auth.login.Configuration) 指定登录程序中的登录模块(S)。 |
K6F
|
一个登录配置包括以下信息 :
?
一个登录配置中可能包括不只一个的登录模块。 ModuleClass 是登录模块的完整相称类名。Flag 值 ( Required, Requisite, Sufficient, Optional ) 则控制身份验证的行为。 ModuleOptions则直接将值传递给底层登录模块,它的格式是一个用空格分割的列表。 将下列 Tomcat JAAS Realm 配置添加到 Tomcat server.xml 文件中:
?
在 tomcat/conf 文件夹中创建 jass.config 文件:
?
在 tomcat/bin 文件夹中创建 setenv.bat 文件,并添加下列配置:
?
|
K6F
|
||||||||
其它翻译版本(1) |
2. 登录模块当 logincontext 读取配置时,登录模块将初始化,包括 Subject ( javax.security.auth.Subject),回叫处理(javax.security.auth.callback.CallBackHandler),共享登录模块以及 LoginModule-specific 选项。
?
第一个被 LoginContext 调用来实际处理身份验证的方法是 Login 方法,它将返回 true 或 false 。如果验证成功,commit 方法将被调用。
?
?
你需要将 tomcat/lib 中的三个类都封装到 jar 中,一边在启动时加载。 |
K6F
|
登录处理器 在这个例子中我们使用的是 Spring MVC,但作为测试,你可使用任何其他的请求处理器,或者只是一个 Servlet:
?
5. 安全约束 在 web.xml 中增加一个安全约束 ( org.apache.catalina.deploy. SecurityConstraint) 和角色授权的资源访问:
?
然后添加登录和登录错误页
?
|
红薯
|
6. 用户密码和角色
?
登录表单
?
|
Tomcat JAAS 身份验证和授权相关推荐
- java验证身份证合法性_Java安全性,第2部分:身份验证和授权
关于本教程 本教程是关于什么的? 也许没有比应用程序安全更重要的软件工程主题. 攻击是昂贵的,无论是来自内部还是外部,而且某些攻击可能会使软件公司承担赔偿责任. 随着计算机(尤其是Internet)技 ...
- iis授权mysql验证_ASP.NET Web API身份验证和授权
本文是作者所理解和翻译的内容. 这篇文章包括两部分:身份验证和授权. 身份验证用来确定一个用户的身份.例如,Alice用她的用户名和密码登陆系统,服务器用她的用户名和密码来确定她的身份. 授权是判断一 ...
- ASP.NET Web API身份验证和授权
英语原文地址:http://www.asp.net/web-api/overview/security/authentication-and-authorization-in-aspnet-web-a ...
- .NET6之MiniAPI(九):基于角色的身份验证和授权
身份验证是这样一个过程:由用户提供凭据,然后将其与存储在操作系统.数据库.应用或资源中的凭据进行比较. 在授权过程中,如果凭据匹配,则用户身份验证成功,可执行已向其授权的操作. 授权指判断允许用户执行 ...
- 开源软件加密授权方案_身份验证和授权作为开源解决方案服务
开源软件加密授权方案 通过实施身份验证和授权(a&a)机制为所有用户数据设计集中式服务. 我将分享我的经验并最终确定解决方案的结论. 该设计包括客户端(Web应用程序)和服务器(A&A ...
- 身份验证和授权作为开源解决方案服务
通过实施身份验证和授权(a&a)机制为所有用户数据设计集中式服务. 我将分享我的经验并最终确定解决方案的结论. 该设计包括客户端(Web应用程序)和服务器(A&A中心). 术语: 1. ...
- 使用JWT的ASP.NET CORE令牌身份验证和授权(无Cookie)——第2部分
目录 介绍 用户角色 如何创建自定义授权特性? AuthorizeAttribute AuthorizeFilter 如何在控制器和操作方法级别设置权限? 检查用户权限的扩展方法 如何在操作方法(内联 ...
- 使用JWT的ASP.NET CORE令牌身份验证和授权(无Cookie)——第1部分
目录 介绍 JWT(JSON Web令牌) ASP.NET Core中的JWToken配置 用户模型类 创建令牌 第1步 第2步 第4步 令牌存储 中间件 自定义中间件app.Use() 中间件app ...
- security工作笔记004---.NET Web安全性-身份验证和授权(一)之Principal
JAVA技术交流QQ群:170933152 1.概述 为了确保应用程序的安全,安全性有几个重要方面需要考虑.一是应用程序的用户,访问应用程序的是一个真正的用户,还是伪装成用户的某个人?如何确定这个用户 ...
- 使用kubectl访问Kubernetes集群时的身份验证和授权
全栈工程师开发手册 (作者:栾鹏) 架构系列文章 kubectl是日常访问和管理Kubernetes集群最为常用的工具. 当我们使用kubeadm成功引导启动(init)一个Kubernetes集群的 ...
最新文章
- 【一语点醒梦中人】如何优雅地合并两个JSON对象 → Object.assign(a, b)和Object.assign({}, a, b)的区别
- 设计模式系列3-----C++实现命令模式(Command Pattern)
- 业界首发丨网易云信虚拟人解决方案,首创客户端+云端双渲染技术
- centos6 mysql 导出sql_centos环境下如何导出数据库
- 一劳永逸:域名支持通配符,ASP.NET Core中配置CORS
- [BUUCTF-pwn]——picoctf_2018_buffer overflow 2
- 用Python实现快速排序
- jquery页面滚动显示浮动菜单栏锚点定位效果
- 【pyqt5学习——信号与槽】实例计时器(解决界面卡顿问题)
- java dao 单元测试_Spring Service、Dao进行Junit单元测试
- eclipse配置python开发环境_eclipse怎样搭建Python开发环境
- 前端npm install失败
- 详解 Ops 智能运维机器人,故障处理又快又准!
- python描述器descriptor_python装饰器decorator、描述器descriptor
- c语言指针教学word,C语言中的指针和指针教学
- 沟通CTBS助华盛集团实现财务集中管理
- 卡巴斯基离线病毒库升级办法
- 【易错点 学习笔记】Solidity语法constant/view/pure
- caffe cmake matlab,编译caffe时候抛出的错误
- RTSP拉流h265(hevc)+AAC关键节点详解!史上最全RTSP+hevc 交互全记录!