- 浏览: 2158634 次
- 性别:
- 来自: 合肥
文章分类
- 全部博客 (401)
- Agile (16)
- Apache Commons (3)
- Architecture (8)
- DB.MongoDB (5)
- DB.Mysql (3)
- DB.Oracle (34)
- DirectoryService (1)
- DotNet (1)
- English (3)
- Groovy (0)
- Html (28)
- Java (67)
- Java.Aixs (7)
- Java.Cache (2)
- Java.jPBM (1)
- Java.Resin (6)
- Java.Spring (4)
- Java.Struts2 (5)
- Java.Tomcat (16)
- Javascript (45)
- Javascript.Google Map (2)
- Javascript.Jquery (8)
- Life (15)
- Maven&Ant (4)
- Network (5)
- OS.Linux (45)
- OS.Windows (10)
- OS.Windows.Office (1)
- PlayFramework (15)
- Python (28)
- Reading notes (11)
- Security (13)
- Server.Apache (3)
- Server.Nginx (7)
- Test (6)
- Tool (15)
- Work.Solution (15)
- Other (20)
- SSO&CAS&Identity (13)
最新评论
-
hutuxiansheng123:
防火墙、Iptables、netfilter/iptables、NAT 概述 -
dacoolbaby:
非常棒的正则表达式,非常适用。万分感谢。
用python分析nginx的access日志 -
loot00:
您好! 我也遇到了相同的错误信息。我是用f_link_lob ...
LOB variable no longer valid after subsequent fetch -
feihangchen:
@OnApplicationStop public clas ...
Play framework 1.2.3 Jobs定时任务、异步任务、引导任务、触发任务、关闭任务 -
洞渊龙王:
谢谢了
www.w3.org被qiang导致logback报错:Connect reset
参考:http://www.playframework.org/documentation/1.2.3/secure
Play Secure模块放置在play安装目录\modules\secure下,包含在play标准的发布包中。简单的Secure模块被设计用来帮助用户在应用程序中提供验证和授权管理。它提供了一个简单的控制器controllers.Secure,在里面定义了一些拦截器,你能很容易地使用@With注解把这些拦截器加到自己的控制器中。
启用Secure模块:
在/conf/dependencies.yml文件中增加如下内容:
导入Secure模块的默认路由:
导入Secure模块的默认路由并不是必须的,用户可以定义自己的路由,也可以混合2者一起使用。
在conf/routes中通过如下命令导入默认的模块路由:
这里被导入的路由内容如下:
使用拦截器保护controller:
如下使用@With注解来保护控制器(必须验证通过才能使用该控制器)
自定义验证方法:
默认情况下,登陆页面接受所有的用户名和密码。为了给应用程序增加安全保护,只需要按如下步骤定制下它。
访问验证通过的用户:
使用Security.connected方法来取得验证通过的用户
增加授权检查 check注解:
可以使用@check注解来告诉Secure模块,检查当前连接的用户是否有操作控制器、或者其中的方法的权限。
默认情况下,secure模块会一直检查所有checks,你可以通过在自己的Security类中重写方法来修改默认行为。
Play Secure模块放置在play安装目录\modules\secure下,包含在play标准的发布包中。简单的Secure模块被设计用来帮助用户在应用程序中提供验证和授权管理。它提供了一个简单的控制器controllers.Secure,在里面定义了一些拦截器,你能很容易地使用@With注解把这些拦截器加到自己的控制器中。
启用Secure模块:
在/conf/dependencies.yml文件中增加如下内容:
require: - play -> secure
导入Secure模块的默认路由:
导入Secure模块的默认路由并不是必须的,用户可以定义自己的路由,也可以混合2者一起使用。
在conf/routes中通过如下命令导入默认的模块路由:
# Import Secure routes * / module:secure
这里被导入的路由内容如下:
# import these default routes as : # * / module:secure # ~~~~ GET /login Secure.login POST /login Secure.authenticate GET /logout Secure.logout
使用拦截器保护controller:
如下使用@With注解来保护控制器(必须验证通过才能使用该控制器)
@With(Secure.class) public class Application extends Controller { public static void index() { render(); } }
自定义验证方法:
默认情况下,登陆页面接受所有的用户名和密码。为了给应用程序增加安全保护,只需要按如下步骤定制下它。
- 在controllers包下创建一个继承自controllers.Secure.Security的方法
- 重写authenticate(String username, String password)方法
- 也可以重写其他方法,如onAuthenticated, onDisconnected来修改应用程序行为
package controllers; public class Security extends Secure.Security { static boolean authenticate(String username, String password) { User user = User.find("byEmail", username).first(); return user != null && user.password.equals(password); } }
访问验证通过的用户:
使用Security.connected方法来取得验证通过的用户
@With(Secure.class) public class Application extends Controller { public static void index() { String user = Security.connected(); render(user); } }
增加授权检查 check注解:
可以使用@check注解来告诉Secure模块,检查当前连接的用户是否有操作控制器、或者其中的方法的权限。
@With(Secure.class) public class Application extends Controller { … @Check("isAdmin") public static void delete(Long id) { … } }
默认情况下,secure模块会一直检查所有checks,你可以通过在自己的Security类中重写方法来修改默认行为。
package controllers; public class Security extends Secure.Security { … static boolean check(String profile) { User user = User.find("byEmail", connected()).first(); if ("isAdmin".equals(profile)) { return user.admin; } else { return false; } } }
发表评论
-
xml 字符串和xml Document相互转换、xml Document内容输出到http response
2012-11-05 10:07 5567import java.io.ByteArrayOutpu ... -
isAssignableFrom & isInstance
2012-11-02 14:34 1228java.lang.Object extended by ja ... -
Struts 1.1 ExceptionHandler(转)
2012-11-02 10:20 1432转自:SSH项目中利用Exce ... -
X.509、数字签名、CA(Certificate Authority)、自签名证书、PKI
2012-10-18 14:22 6324X.509是由国际电联电信委员会(ITU-T)为单点登录(SS ... -
keytool、keystore、jarsigner、生成自签名证书
2012-10-18 10:27 8051Keytool是Java的密钥和数字证书管理工具,位于JDK_ ... -
Play framework Controllers控制器、action链式调用、返回的HTTP状态码
2012-09-20 10:36 3208Playframework中的控制器放在controllers ... -
Java 类初始化顺序
2012-08-21 14:07 1103class Parent { // 静态变量 pu ... -
java嵌套类、静态嵌套类、内部类
2012-08-21 10:29 2111官网文档:Nested Classes 什么是嵌套类及内部类 ... -
java静态类、静态方法、静态变量、实例变量、线程本地变量、静态线程本地变量
2012-08-21 10:24 1885静态类: 只有嵌套类才 ... -
ProcessBuilder 和 Runtime
2012-07-17 09:26 20943ProcessBuilder.start() 和 Runtim ... -
Play framework 1.2.3 使用缓存、Memcached集成
2012-07-13 09:25 3702play框架包含一个缓存lib,这个lib是用来和Memcac ... -
Play framework 1.2.3 Jobs定时任务、异步任务、引导任务、触发任务、关闭任务
2012-07-12 16:05 13419Play framework是一个web应 ... -
对称加密、PBE基于密码加密、PKCS
2012-07-05 11:07 7802对称加密:采用单钥密码系统的加密方法,同一个密钥可以同时用作信 ... -
(转)xml schema xsd 入门
2012-06-28 16:05 2470理解XML Schema: XML Schema 初步 (I) ... -
XmlRootElement JAXB注解
2012-06-28 15:23 39092@Retention(value=RUNTIME) @T ... -
jaxb xml数据绑定
2012-06-28 14:22 1323XML Schema编辑工具:XML Spy 常见的XML绑 ... -
(转)jpa 注解
2012-06-25 16:00 1334转自:jpa 注解 1.设置Po ... -
(转)JPA(Java Persistence API)简介
2012-06-25 14:20 1546转自JPA基础(一):全 ... -
Play 内置模板标签(1.2.3版本)
2012-06-18 14:03 5010Play framework 1.2.3 Built-in t ... -
play plugin插件 实现类似Servlet中的拦截器效果
2012-06-15 15:05 3649play plugin和module的区别见:play Mod ...
相关推荐
play2-auth, Play2.x 身份验证和授权模块 用于身份验证和授权的 Play2.x MODULE [Gitter](https://badges.gitter.im/Join chat 。svg )!这里 MODULE 为 Play2.x 应用程序提供身份验证和授权功能 Sc
在Play Framework中,安全模块是一个重要的组件,它帮助开发者实现基本的认证(Authentication)和授权(Authorization)功能,确保应用的安全性。 安全模块Secure module 提供了一个基础的控制器`controllers....
deadbolt-2, Play Framework的授权模块 Deadbolt 2-- 播放 2的授权系统 锁是一种强大的授权机制,用于定义对某些控制器方法或者视图部分的访问权限。有关完整的指南,请参考闩锁网站。GitHub中的deadbolt-2 库是一...
在Web开发中,Session和Cookie是两种常见的会话管理机制。Cookie主要负责在客户端和服务器之间传递信息,而Session则是服务器端存储用户状态的一种手段。本文重点讨论的是Cookie中的两个重要属性:`secure`和`...
Play-Utils 可能包含了对 Play Security 模块的扩展,提供了更高级的认证和授权机制,比如基于 JWT(JSON Web Tokens)的身份验证。 5. **缓存管理**: 为了提高性能,缓存策略是必要的。Play-Utils 可能集成了...
在Play框架中,可以利用其内置的安全模块,如`play.api.libs.concurrent.Execution.Implicits.defaultContext`和`play.api.data.Forms`来处理表单验证和密码加密。 2. **身份验证与授权**: 注册后,用户需要通过...
PlayFramework是一个高性能的Java和Scala框架,它支持Web应用的快速开发,并且主要...通过结合声明式验证规则和自定义验证器,以及支持国际化的错误消息,PlayFramework的验证框架成为了构建可信赖Web应用的重要工具。
10. **安全(Security)**:Play提供了基本的身份验证和授权机制,如`play-authenticate`插件,可以实现用户注册、登录、权限控制等功能。 综上所述,"学生信息管理系统"项目涵盖了Play Framework的基础知识,包括...
安卓车机carplay 配合carplay模块
您仍然可以将现有的 Secure 模块与 Deadbolt 一起使用来提供身份验证,并且在身份验证是在您的应用程序之外处理的情况下,您可以将授权机制连接到使用的任何身份验证系统。特征使用AND 、 OR 和NOT组合定义访问在类...
Play Framework的验证机制允许开发者在多个层次上对数据进行验证,确保应用程序的数据质量和安全性。它可以轻松地集成到控制器和模型中,提供了丰富的验证规则和自定义验证的能力,使得开发更加高效且可控。通过这些...
13. **模块和依赖管理**:Play支持模块化开发,通过模块仓库可以轻松添加和管理第三方组件。依赖管理通过`dependencies.yml`文件和`play dependencies`命令实现,支持动态版本和冲突解决。 14. **数据库演化**:...
- **安全性和性能**:考虑使用Play的安全模块,如CSRF保护、身份验证,同时注意优化数据库查询和资源加载,提升应用性能。 5. **社区和文档支持** - Play框架拥有活跃的社区和详尽的官方文档,遇到问题时可以查阅...
`play-services-plugins`是Google提供的一个开源项目,旨在帮助开发者更方便地集成和管理Google Play服务的各个部分。下面我们将详细探讨这个项目的各个方面及其相关知识点。 首先,`play-services-plugins`主要由...
- `scripts/`:启动和管理Play应用的脚本。 - `license.txt`:框架的许可证文件,规定了使用权限和条件。 要开始使用Play 1.2.7,首先确保你的系统已安装Java,然后解压此zip包,进入`play-1.2.7`目录,运行`play`...
该项目是具有身份验证和授权功能的多模块播放应用程序的示例实现。 这附有一篇。 Play 被选为开发此应用程序的主要框架,因为它具有惊人的生态系统、插件和其他好处,例如 Akka、CoffeeScript 支持 Web Sockets 等等...
8. **状态管理**:Play支持无状态和有状态应用。无状态应用更易于扩展,而有状态应用可以保持用户会话信息。 9. **测试支持**:Play提供内置的测试工具,如FakeRequest和TestServer,方便编写单元测试和集成测试。 ...
#Description 这是一个用于 Play 的 RESTfull 授权和认证库! Java 中的框架 2。 它面向 SPA(单页应用程序)和移动客户端。 授权部分复制 OAuth 2.0 流程。 #Requirements 至少玩 2.3.x #Installation ##...
9. **模块化**:Play框架鼓励模块化开发,开发者可以轻松地添加和替换功能模块,以满足特定项目需求。 10. **广泛的社区支持**:Play拥有活跃的社区,提供大量的第三方模块和丰富的文档,便于开发者解决问题和学习...
1. **依赖管理**:在AndroidManifest.xml中声明所需的权限和服务,并在build.gradle文件中添加相应的依赖项。 2. **版本控制**:保持对Google Play服务版本的跟踪,确保与应用中其他依赖的一致性。 3. **API使用**:...