使用 PHP Masked Package 屏蔽敏感数据的实现方法

Fuko Masked 是 Kaloyan Tsvetkov的一个小型PHP库,用于通过用编辑后的元素替换列入黑名单的元素来屏蔽敏感数据。

以下是 软件包 readme的基本用法示例:

use Fuko\Masked\Protect;

//隐藏$secret_key var中的值
Protect::hideValue($secret_key);

//隐藏$ _POST['password'] 的值
Protect::hideInput('password', INPUT_POST);

$redacted = Protect::protect($_POST);

根据上述调用,列入黑名单的值和输入将被屏蔽。自述文件的另一个例子是调试黑名单,类似于 Laravel 5 的 Whoops 黑名单:

use \Fuko\Masked\Protect;

Protect::hideInputs(array(
  INPUT_ENV => array(
    'APP_KEY',
    'DB_PASSWORD',
    'REDIS_PASSWORD',
    'MAIL_PASSWORD',
    'PUSHER_APP_KEY',
    'PUSHER_APP_SECRET',
    ),
  INPUT_SERVER => array(
    'PHP_AUTH_PW',
    'APP_KEY',
    'DB_PASSWORD',
    'REDIS_PASSWORD',
    'MAIL_PASSWORD',
    'PUSHER_APP_KEY',
    'PUSHER_APP_SECRET',
    ),
  INPUT_POST => array(
    'password',
    )
  )
);

//传递信息 `\Fuko\Masked\Protect::protect()`
//将隐藏列入黑名单的输入
\Fuko\Masked\Protect::protect($_POST);

查看自述文件以获取更多示例,包括自定义屏蔽规则。您可以在fuko-php/masked上了解有关此软件包的更多信息,获取完整的安装说明以及在GitHub上查看源代码。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • PHP中使用strpos函数实现屏蔽敏感关键字功能

    现在网络信息监管很严格,特别是屏蔽关键字.特别是现在WEB2.0时代,网站的内容几乎都是来自网民发布,站长管理即可.如果你希望别人在你站点禁止发布某个关键字,那么就需要预先做处理.用PHP做关键字屏蔽的功能样式有多种多样,如正则是最普遍的一种,这里就不一一例举,本文介绍使用PHP函数strpos屏蔽关键字的功能. 思路: 一.把关键字专门写在一个文本文件里,每行一个,数量不限,有多少写多少. 二.PHP读取关键字文本,存入一个数组 三.遍历关键字数组,挨个用strpos函数去看看内容有没有关键字

  • 使用 PHP Masked Package 屏蔽敏感数据的实现方法

    Fuko Masked 是 Kaloyan Tsvetkov的一个小型PHP库,用于通过用编辑后的元素替换列入黑名单的元素来屏蔽敏感数据. 以下是 软件包 readme的基本用法示例: use Fuko\Masked\Protect; //隐藏$secret_key var中的值 Protect::hideValue($secret_key); //隐藏$ _POST['password'] 的值 Protect::hideInput('password', INPUT_POST); $reda

  • Android编程实现拦截短信并屏蔽系统Notification的方法

    本文实例讲述了Android编程实现拦截短信并屏蔽系统Notification的方法.分享给大家供大家参考,具体如下: 拦截短信有几个关键点: 1.android接收短信时是以广播的方式 2.程序只要在自己的Manifest.xml里加有"接收"SMS的权限 <uses-permission android:name="android.permission.RECEIVE_SMS"> </uses-permission> <uses-p

  • JSP实现屏蔽浏览器缓存的方法

    本文实例讲述了JSP实现屏蔽浏览器缓存的方法.分享给大家供大家参考,具体如下: 很多时候因为浏览器的缓冲经常导致页面不能即时加载,以至于以为数据错误,那么在JSP内,设置如下几行代码,每次页面张开浏览器都将重新从服务器上读取数据,以保证浏览器上看到的数据为最新.   通过设置响应首部,就能够让浏览器和代理服务器不缓存页面.   方法一: <% response.addHeader("Pragma", "no-cache"); response.setHeade

  • C#中实现屏蔽Ctrl+C的方法

    本文实例讲述了C#实现屏蔽Ctrl+C的方法,代码简单易懂,具有一定的实用价值.分享给大家供大家参考.具体方法如下: 主要实现方法为重写 WndProc,代码如下: public class MyTextBox : TextBox { public const int WM_COPY = 0x301; public const int WM_CUT = 0x300; protected override void WndProc(ref Message m) { if (m.Msg == WM_

  • 两种JS实现屏蔽鼠标右键的方法

    JS屏蔽鼠标右键的两种方法,比较常用的一个JS小功能,用上这个代码后,浏览者在访问你网页的时候就不能点击右键了,点了也不会弹出右键菜单,本功能最好不要用的太多哦,有时候用户会反感的. 代码如下: <html> <head> <title>屏蔽鼠标右键</title> </head> <body oncontextmenu=self.event.returnvalue=false> 第一种方法:在body标签里加上oncontextme

  • 屏蔽浏览器缓存另类方法

    有时候我们不希望浏览器使用缓存加快网页的显示,尤其是那些论坛之类的频繁更新内容的网页,在网上有说可以使用下面的方法来屏蔽缓存,但是我试了效果不好. <META HTTP-EQUIV="Pragma" CONTENT="no-cache"> 某日我突发奇想,找到了一种在任何情况下都会显示最新的网页内容的方法,描述如下: 请将网页的链接改为: http://xxx.yyy.zzz/page.php?rand=XXXXXXX 其中http://xxx.yyy.

  • spreadsheetgear插件屏蔽鼠标右键的方法

    刚开始用的Mouse_up,虽然能捕获事件,但是没有KeyPress事件的Handled属性. 发现一个相对简单的方法. 1.先让窗体类继承IMessageFilter接口2.在构造函数中添加:Application.AddMessageFilter(this);3.在代码中加入: 复制代码 代码如下: public bool PreFilterMessage(ref System.Windows.Forms.Message MyMessage){    //不响应鼠标右键消息    if(My

  • C# 屏蔽关键字的实现方法

    新建一个txt的文本(代码中读取这个文本文档路径就行,命名随意) 里面的内容一行代表一个,因为我是按行来遍历循环读取要屏蔽的关键字.然后用一个*号来屏蔽一个关键字, 例如: 在论坛中输出"草泥马",涉及到一些比较敏感的话题.名字,在一些推广比较火爆的网站里,都是不允许的,所以这里会只显示"***". 这里代码下面我给出来了,注释都比较详细..不懂的可以留言问我.希望博友每天能进步一点点..  复制代码 代码如下: /// <summary>       

  • Nginx服务器屏蔽与禁止屏蔽网络爬虫的方法

    每个网站通常都会遇到很多非搜索引擎的爬虫,这些爬虫大部分都是用于内容采集或是初学者所写,它们和搜索引擎的爬虫不一样,没有频率控制,往往会消耗大量服务器资源,导致带宽白白浪费了. 其实Nginx可以非常容易地根据User-Agent过滤请求,我们只需要在需要URL入口位置通过一个简单的正则表达式就可以过滤不符合要求的爬虫请求: location / { if ($http_user_agent ~* "python|curl|java|wget|httpclient|okhttp") {

  • javascript 屏蔽鼠标键盘的几段代码

    //屏蔽鼠标右键.Ctrl+n.shift+F10.F5刷新.退格键  function KeyDown(){  if ((window.event.altKey)&&  ((window.event.keyCode==37)|| //屏蔽 Alt+ 方向键 ←  (window.event.keyCode==39))){ //屏蔽 Alt+ 方向键 →  alert("不准你使用ALT+方向键前进或后退网页!");  event.returnValue=false; 

随机推荐