2015-03-04 3 views
1

Я написал REST API в рамках Slim. В настоящее время API открыт. Как добавить безопасность в API. Добавляя API-ключ или имя пользователя или пароль.Как защитить API REST в Slim framework

Также этот API будет использоваться в приложении для мобильных устройств. как мы можем защитить?

ответ

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... 
}); 
+0

Спасибо за обмен информацией. В этом групповом маршрутизаторе я должен добавить другой запрос API (маршрутизаторы). Верный ? Кроме того, Api :: check - это пользовательская функция? – user1567691

+0

Первый ответ - «Да», а второй ответ «Да, вы можете использовать любую логику, которую вы предпочитаете там». –

+0

@ user1567691 Пожалуйста, если этот ответ поможет вам, примите его. –

Смежные вопросы