PHP 使用过滤器将HTTP身份验证添加到应用程序

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PHP 使用过滤器将HTTP身份验证添加到应用程序相关的知识,希望对你有一定的参考价值。

<?php

class httpAuthFilter extends sfFilter
{
    
    public function execute($filterChain)
    {
        if($this->isFirstCall()) {
            if(!isset($_SERVER['PHP_AUTH_USER']) or
               ($_SERVER['PHP_AUTH_USER'] == sfConfig::get('app_auth_username') && $_SERVER['PHP_AUTH_PW'] == sfConfig::get('app_auth_password')) == false) {
                
                $this->sendHttpAuthHeaders();
            }
        }
        
        $filterChain->execute();
    }
    
    public function sendHttpAuthHeaders()
    {
        header('WWW-Authenticate: Basic realm="' . sfConfig::get('app_auth_realm') . '"');
        header('HTTP/1.0 401 Unauthorized');
        exit();
    }
    
}

以上是关于PHP 使用过滤器将HTTP身份验证添加到应用程序的主要内容,如果未能解决你的问题,请参考以下文章

Spring OAuth2 - 没有客户端身份验证。尝试添加适当的身份验证过滤器

应用引擎中无法将静态文件转换为资源文件以使http请求通过身份验证过滤器

在身份验证过滤器中添加自定义声明。在过滤器中获取用户 ID。弹簧靴

如何使用不同的身份验证过滤器配置两个 Spring 安全 http 元素?

Spring Security 自定义身份验证过滤器和授权

如何在身份验证之后和注销之前调用方法? (春季安全)