我在Slim框架中编写了一个REST API。目前API是开放模式。 如何将安全性添加到API。通过添加API KEY或用户名或密码。
此API也将用于移动应用程序。我们该如何保护?
答案 0 :(得分:2)
您可以创建route middleware以确保请求具有API密钥(或其他)。
示例:
<?php
$checkApiKey = function () {
return function () use () {
$app = \Slim\Slim::getInstance();
$apiKey = $app->request->post('apiKey');
if ( Api::check($apiKey) ) { //your magic check on api key
$app->flash('error', 'API Key not available');
$app->redirect('/api/error');
}
};
};
$app = new \Slim\Slim();
$app->group('/api', $checkApiKey(), function ($app) {
//your amazing api routes...
});