`
jiajie0531
  • 浏览: 29561 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

rails4 9 Security

阅读更多

9.1 Basic Authentication

基本认证

如果你想要在线发布你的blog,任何人都能够增加,编辑和删除articles,或者删除comments。

 

Rails提供了一个简易的HTTP验证系统,在这种情况下能足以胜任。

 

在ArticlesController里,我们需要用一个方式来阻止访问任意的actions,如果访问者没有被认证的,这儿我们可以用Rails http_basic_authenticate_with 方法,如果在那个方法允许的情况下, 来允许访问所需求的action。

 

为了使用这个认证系统,我们明确规定它位于ArticlesController的顶部,在这个例子中,我们需要用户对于每一个action都要被认证,除了index和show,因此我们来编辑这个文件 app/controllers/articles_controller.rb:

classArticlesController < ApplicationController

 

  http_basic_authenticate_with name: "dhh", password: "secret", except: [:index, :show]

 

  defindex

    @articles= Article.all

  end

 

  # snipped for brevity

我们同样地只允许认证的用户来删除comments,因此在CommentsController中来编辑文件 app/controllers/comments_controller.rb

classCommentsController < ApplicationController

 

  http_basic_authenticate_with name: "dhh", password: "secret", only: :destroy

 

  defcreate

    @article= Article.find(params[:article_id])

    ...

  end

 

  # snipped for brevity

现在你想要创建一个新的article,你将会受到一个基本HTTP认证的挑战

 

对于Rails应用程序,其他的认证方法也是可用的。在Rails中有两个比较流行的认证插件是  Devise rails engine 和 Authlogic gem, 以及还有一些其他的。



 

 

original text: http://guides.rubyonrails.org/getting_started.html#security

  • 大小: 21.2 KB
0
0
分享到:
评论

相关推荐

    Security On Rails

    《Security On Rails》一书是针对Ruby on Rails开发者在构建应用时所面临的各种安全问题的全面指南。本书不仅深入探讨了常见的安全漏洞,还详细解释了如何利用Ruby on Rails框架来增强应用程序的安全性,使开发者...

    Pragmatic.Security.on.Rails.Dec.2009.rar

    《Pragmatic Security on Rails》是一本专注于Rails框架下的安全实践的书籍,其核心内容是指导开发者如何在Ruby on Rails环境中构建安全、可靠的Web应用程序。Rails的安全性是开发者必须重视的关键议题,因为任何...

    在Rails中使用SSL

    9. **跨站请求伪造(CSRF)与SSL**:启用SSL后,CSRF防护令牌的安全性提高,因为攻击者无法通过监听网络流量获取这些令牌。 10. **性能与优化**:SSL连接会增加一定的延迟和CPU使用率。不过,现代浏览器和服务器都有...

    ruby on rails社区网站开发源码

    11. **安全(Security)**:了解如何防止跨站脚本攻击(XSS)、跨站请求伪造(CSRF)和SQL注入等,使用Bcrypt或Devise库处理用户认证。 12. **部署(Deployment)**:学习如何将应用部署到Heroku、AWS或其他云服务提供...

    awesome-rails-security:Ruby on Rails应用程序安全资源的精选列表

    Devise Security-一个Devise扩展,可添加现代Web应用程序所需的其他安全功能 守望者-通用机架身份验证框架 AuthLogic-基于ActiveRecord的Ruby认证库 OmniAuth-一个标准化Web应用程序多提供商身份验证的库 JWT -RFC ...

    mid.zip_Rails

    9. **Security**:Rails通过各种机制保障应用安全,如CSRF(跨站请求伪造)防护、参数过滤、XSS(跨站脚本攻击)预防等。 这个"mid.zip_Rails"项目,作为一个多数据库管理平台,可能会提供用户界面,让管理员能够...

    zen-rails-security-checklist:Ruby on Rails应用程序的安全预防措施清单

    支持的Rails版本本文档重点介绍Rails 4和5。不包括早期版本中存在并在Rails 4中修复的漏洞。目录生成的。清单注射注入攻击排名第一。 不要使用标准的Ruby插值( #{foo} )将用户输入的字符串插入ActiveRecord或原始...

    Agile Web Development with Rails Final

    - Staying updated with the latest Rails version is crucial for security and performance improvements. Developers can update Rails using gem commands or by following official documentation guidelines....

    rails-security-audit:Rails安全审核清单

    Rails安全审核列表 0.安全宝 用于Ruby on Rails应用程序的静态分析安全漏洞扫描程序 -机架中间件,用于阻止和限制 与安全性相关的标头全部包含在一个gem中 用于ruby编写的Web应用程序的静态分析安全扫描程序。 带...

    Rails_Recipes_with_Source_Code

    9. **AJAX与JavaScript**:Rails与jQuery和CoffeeScript等JavaScript库有良好的集成,书中可能探讨如何创建异步请求和实现动态更新。 10. **部署(Deployment)**:书中可能会介绍如何将Rails应用部署到Heroku、...

    Ruby-RailsSecurityChecklist社区驱动的Rails安全检查表

    Rails Security Checklist:社区驱动的Rails安全检查表

    rails-security-checklist:社区驱动的Rails安全检查表(有关自述文件中尚未包括的最新检查,请参见我们的GitHub问题)

    Rails安全清单 该清单仅限于Rails的安全预防措施,并且运行Rails应用程序的其他许多方面都需要保护(例如,最新的操作系统和其他软件),而这还没有涵盖。 咨询安全专家。 本文档的一个目标是将其转变为社区资源,...

    Agile Web Development with Rails-Second Edition-Beta一书例子

    9. **Asset Pipeline**:Rails的资源管理机制,用于合并和压缩CSS、JavaScript文件,优化前端性能。 10. **Gemfile与Bundler**:管理Rails应用依赖的工具,通过Gemfile声明项目所需的gem库。 11. **Action Cable**...

    sudo_rails:Rails控制器的Sudo模式

    安装将此行添加到您的Gemfile中,然后执行bundle install : gem 'sudo_rails'用法从现在开始,您可以在控制器中使用sudo方法,可以保护整个控制器或仅执行某些操作: class SettingsController &lt; ...

    rails-puma-ssl:在开发中开始使用SSL的简便方法

    SSL(Secure Socket Layer)和支持它的TLS(Transport Layer Security)协议是网络安全传输的基础,用于加密通信并确保数据在互联网上传输时的隐私和完整性。 在Rails应用中启用SSL支持是非常重要的,特别是在处理...

    Rails的现代加密-Ruby开发

    密码箱for Ruby和Rails的文件加密支持Active Storage和CarrierWave默认情况下使用AES-GCM进行身份验证的加密使密钥旋转变得容易默认情况下,AES-GCM用于经过身份验证的加密使密钥的旋转变得容易。有关使用Rails安装...

    SpringOne-Using Spring Security 2

    - **Grails and Trails**:与Groovy和Ruby on Rails框架集成; - **Mule**:与企业集成平台Mule ESB集成; - **DWR**:与Direct Web Remoting集成; - **Appfuse**:与快速开发框架集成; - **AndroMDA**:与元数据...

    Rails Test Prescriptions.pdf

    ApplyingSecurity.................... 55 3.6 PunishingMiscreants.................. 56 3.7 RoadMap......................... 60 CONTENTS 8 4 TDD,RailsStyle 61 4.1 NowforaViewTest................... 61 ...

    sekreto:使用带有Rails支持的Ruby中的AWS Secrets Manager

    在rails支持下使用Ruby中的AWS Secrets Manager 安装 将此行添加到您的应用程序的Gemfile中: gem 'sekreto' 然后执行: $ bundle 或将其自己安装为: $ gem install sekreto 用法 组态 配置将在Rails环境中...

Global site tag (gtag.js) - Google Analytics