snipe / safebrowsing
Laravel 扩展包,让您轻松将 Google Safebrowsing API 集成到您的应用程序中。
Requires
- php: ~5.5|~7.0
- illuminate/support: ~5.1
Requires (Dev)
- phpunit/phpunit: ~4.0||~5.0
- scrutinizer/ocular: ~1.1
- squizlabs/php_codesniffer: ~2.3
This package is not auto-updated.
Last update: 2024-09-21 15:23:16 UTC
README
这是一个 Laravel 5 扩展包,让您可以轻松与 Google Safebrowsing API 进行交互。(其他 RBL 服务即将推出。)
目前它只使用 Google Safebrowsing Lookup API(v4),但我将更新它以包括 Update API。此脚本的旧版 Safebrowsing v3(非扩展包)版本还包含了 Phishtank 和几个 RBL,但我认为 RBL 已更改其工作方式,因此旧代码不再适用。
此扩展包要求您拥有 有效的 Google Safebrowsing API 密钥。没有密钥绝对无法使用。 创建 API 密钥是免费的(尽管过程与您预期的 Google 一样复杂和曲折)。
请注意,Google 对 API 使用量进行了限制,因此如果您有高流量网站,您可能需要构建缓存层或其他机制,以免快速耗尽请求。您可以通过 Google API 控制台 监控您的使用情况。
此扩展包边缘粗糙,可能还不适合用于生产。
安装
通过 Composer
$ composer require snipe/safebrowsing
更新您的配置
对于使用 Laravel < 5.4 的应用程序
打开 config/app.php
并添加
Snipe\Safebrowsing\SafebrowsingServiceProvider::class,
到您的 providers
数组在 config/app.php
中,和
'Safebrowsing' => Snipe\Safebrowsing\Facade\Safebrowsing::class,
到您的 aliases
数组在 config/app.php
中。
发布配置
php artisan vendor:publish
设置您的 Google Safebrowsing API 密钥
在您的 .env
中添加
GOOGLE_API_KEY=YOUR-ACTUAL-API-KEY
配置文件中还有其他与您想检查的特定威胁类型和平台相关的选项,但除非您想检查更少的事情,否则您不必担心,因为已经相当全面了。
使用方法
使用 Blade 语法
{{ Safebrowsing::checkSafeBrowsing($urls) }}
或
@if (Safebrowsing::isFlagged('http://twitter.com/')) // do something if the url is flagged as suspicious @else // hooray - it's not flagged! @endif
其中 $url
是您想要检查的 URL 数组,您希望将其与 Google Safebrowsing API 进行比较。
使用外观
Safebrowsing::addCheckUrls(['http://ianfette.org']); Safebrowsing::addCheckUrls(['http://malware.testing.google.test/testing/malware/']); Safebrowsing::execute(); print('Status of the third URL is: '.Safebrowsing::isFlagged('http://twitter.com/'));
测试 URL
以下是一些在您测试系统时可以使用的实用测试 URL。
- http://www.yahoo.com/(正常)
- http://www.google.com/(正常)
- http://malware.testing.google.test/testing/malware/(恶意软件)
- http://twitter.com/(正常)
- http://ianfette.org(恶意软件)
- https://github.com/(正常)
变更日志
有关最近更改的更多信息,请参阅 CHANGELOG。
测试
从包中
`../../../vendor/bin/phpunit`
贡献
有关详细信息,请参阅 CONTRIBUTING 和 CONDUCT。
安全性
如果您发现任何与安全相关的问题,请通过电子邮件 snipe@snipe.net 联系我们,而不是使用问题跟踪器。
致谢
许可协议
GNU通用公共许可证。请参阅许可文件以获取更多信息。