为 API 请求配置 PHP 中间件

问题描述 投票:0回答:1

我已经成功地基于 mevdschee/php-crud-api 实现了我的新 API 包裹。我一直困扰于配置最佳 API 密钥方法进行身份验证的问题。在下面的代码中,我尝试配置 API 密钥的使用并在

apiKeyAuth.keys
参数上设置密钥。使用 Postman,我的 API 可以工作,但是当使用 API 密钥身份验证时,它不会接受我的 API 密钥。我的语法可能是错误的,但任何方向都值得赞赏。

配置 API 的 PHP 代码(出于安全原因取出值):

$config = new Config([
        'driver' => 'mysql',
        'address' => 'localhost',
        'port' => 'PORT_NUMBER',
        'username' => 'DATABSE_USERNAME',
        'password' => 'DATABSE_PASS',
        'database' => 'DATABASE_NAME',
        'debug' => true,
        'tables' => 'TABLES_ALLOWED',
        'middlewares' => 'apiKeyAuth',
        'apiKeyAuth.keys' => 'MY_API_KEY',
    ]);
php authentication postman api-key
1个回答
1
投票

如何解决 php-crud-api 上的身份验证问题

'middlewares' => 'apiKeyDbAuth,authorization',
    'authorization.usersTable' => function ($user, $pass) {
        if ($user=='admin' && $pass=='admin') {
            $_SESSION['user']=$user;
            echo $_SESSION['apiUser'];
            return $_SESSION['apiUser'];
        }
       
    },
© www.soinside.com 2019 - 2024. All rights reserved.