草庐IT

AUTHORIZATION

全部标签

php - 如何在 rest api 中验证/检查基本身份验证 header

我正在构建一个非常小的api。在api中,我使用来自请求的基本身份验证header对请求进行身份验证。这是我完成的代码$headers=apache_request_headers();//print_r($headers);if(isset($headers['Authorization'])){//$credentials=base64_decode($headers);print_r($headers['Authorization']);}我得到的授权header为“BasicYXBpa2V5OmFqZWVzaA==”现在我将如何检查这个基本授权header是否有效?我应该解码u

使用 NTLMv2 的 PHP 单点登录

我有一个nginx网络服务器,使用php-fpm执行脚本,我想获取浏览服务器的客户端的NTLMv2凭据。我在我的本地网络中有一个代理服务器来验证我的用户。问题是,如何让nginx服务器进行身份验证,或者PHP使用NTLMv2获取我的用户的凭据并向我传回信息?显然,我至少需要知道他们的用户名,以确保客户端在系统中获得正确的凭据。例如,当我访问/login.php时,我可以与代理服务器建立上游连接,只要它将有关客户端的信息传回有关客户端的服务器,例如用户名在Type-3消息中找到,然后我可以将此信息保存在他们的session中并从那时起使用它。我有一台在局域网内运行nginx、PHP和SQ

php - 如何向 GuzzleHTTP 请求对象添加身份验证以进行异步处理

我正在创建多个以下GuzzleHttp\Psr7\Requests:useGuzzleHttp\Psr7\Request;$myRequest=newRequest('GET',$someUri);并将它们保存在一个数组中:$guzzleRequests然后我创建一个池来同时执行所有请求:useGuzzleHttp\Pool;$testPool=newPool($testClient=new\GuzzleHttp\Client(),$guzzlePromises,['fulfilled'=>function($response,$index){//thisisdeliveredeach

php - 限制文件下载php

我的代码中有这个:SamplePDF所以基本上它看起来是文件“sample.pdf”的下载链接,但问题是,下载此文件有限制。因此,只要有secret报告上传,恶意用户无意中记住或查看了浏览器历史记录中下载链接的URL,他就可以轻松下载它,即使不访问该网站,因为它是直接链接。我应该怎么做才能保护此链接?还是只为分配给它的用户下载? 最佳答案 不要通过直接URL提供文件。让PHP脚本接收所需文件的文件名,并提供它。所以,如果有人想下载上面的文件,他会去example.com/getfile?file=sample.pdf您的PHP脚本将

php - 如何防止用户通过编写 URL 直接访问我的 html 页面?

我想要一个没有数据库的硬编码登录页面(login.html)。如果有人输入正确的用户名和密码,它将重定向到(page2.html)。现在我的问题是,如果有人直接为page2.html编写URL,他将能够访问它,而无需任何登录。理想情况=>www.example.com/login.html=>如果正确=>www.example.com/page2.html问题案例=>www.example.com/page2.html=>page2.html,NOLogIN:( 最佳答案 你可以用这样的phpsession来控制所有这一切//set

php - 将 angularjs webapp 连接到 REST API (PHP)

我有一个用PHP(Slimframework)编写的RESTAPI,我的API包含一些用于管理私有(private)数据的管理路由。我已经实现了oAuth2.0授权(thisphpimplementation)。我喜欢使用AngularJS创建管理网络应用程序,以便用户可以管理自己的数据。我现在正在使用用户名-密码流程,但我读到这并不安全,因为我的网络应用公开了client_id和client_secret。我还研究了隐式授权(专为公共(public)客户设计),但它说它应该用于只读目的。我还想使用此API为移动应用程序提供数据。用户无需为此登录,但数据不公开。哪种oauth授权适合这

php - 用PHP和Java脚本实现用户授权

假设我有一个有效的session和一个经过身份验证的用户,在具有PHP/MySQL后端和大量JavaScript前端的应用程序中实现用户授权有哪些方法?我可以找到的大多数实现示例似乎都过于关注用户身份验证和授权,只是发生了一些事情。例如,一条if语句检查用户的类型是否为admin。这对我来说似乎太过实现。在像我的实现中,无法得知用户发起请求时用户在哪个“页面”上。因此,由PHP确定的仅为某些用户提供某些内容的方法对于我需要做的事情来说太宽泛了。理想情况下,每个实体都有一种基于用户显式或用户所属的组或类型的访问控制列表。我去了一家本地书店,度过了一个下午,浏览他们在PHP,MySQL和J

php - Apache 中的 Laravel 获取 header 值

我在LaravelBaseController中有以下代码。我想使用带有token的Authorizationheader来保护我的所有api资源。publicfunction__construct(){$this->beforeFilter('@getUserFromToken');}publicfunctiongetUserFromToken($route,$request){$accessToken=Request::header('Authorization');if(!empty($accessToken)){$this->currentUser=User::findByTo

php - CakePHP 最佳实践 : Admin with or without routing

我正在对我在CakePHP1.2下构建的CakePHP应用程序进行大修。我已经升级到1.3并且正在考虑放弃我的应用程序的管理路由范例。我发现我的一些Controller由于前端和管理的重复功能而变得非常大。我的直觉是,只创建一组管理Controller并将管理路由放在一起会更简洁,但我想了解其他人正在做什么以及我将错过哪些功能(如果有的话)丢弃路由。在这方面,什么是稳健的CakePHP应用(或其他MVC框架)的最佳实践? 最佳答案 我建议将前端应用程序和管理简单地分成两个单独的应用程序(/app和/admin)。只需将admin视为

PHP:如何使用 JWT 从 API 注销

所以我创建了一个使用基于token的登录身份验证的API,现在我想创建注销,但我不知道如何去做。登录过程仅使用以下步骤:用户将用户名和密码传递给服务器服务器检查数据库以确保用户有效生成包含uid和其他详细信息的token然后将token传递给用户,只要他发出请求,用户就会将token发回服务器现在我想让用户注销,我该怎么做,我对用户token没有任何控制权了。 最佳答案 我也是来这里寻找解决方案的,但是看了很多之后我得出的结论很少,也没有说出可能的情况。EditNote:-Neverstoreanypotentialinformat