Документация SMARTCALLBACK API


Безопасность API

1. Цифровая подпись apiSignature
Каждому приложению при успешной регистрации и утверждении командой SMARTCALLBACK выдается ключ Signature. C помощью этого ключа, который не передается при обращениях к API, необходимо произвести цифровую подпись передаваемых данных в зашифрованном виде.

Алгоритм формирования подписи
Все передаваемые POST переменные необходимо объединить в одну строку и в конец полученной строки добавить секретный ключ Signature, выданный при регистрации.
Полученную строку необходимо зашифровать методом md5(). Полученную цифровую подпись необходимо добавить к передаваемым POST параметрам в качества параметра apiSignature:

$Signature = "ВАШ_КЛЮЧ_Signature";
$POST = Array(
"token" => "12345",
"apiToken" => "12345",
"date_from" => time() - 12*60*60
);
$all = "";
foreach($POST as $v){
$all .= $v;
}
$POST["apiSignature"] = md5($all.$Signature);

2. Доступ с разрешенных IP
Для доступа к данным только с разрешенных серверов - есть возможность создания списка разрешенных IP. Любое обращение с других IP от приложений использующих Ваши данные для авторизации - будут проигнорированы, а при многократном обращении - занесены в черный список IP адресов и заблокированы.

3. Контроль валидности параметров
Все передаваемые POST переменные проходят проверку на валидность, таким образом, чтобы злоумышленники не смогли каким-либо образом модифицировать данные. В случае многократного обращения к API с нарушением валидности параметров IP адрес, с которого происходит обращение может быть занесен в черный список IP адресов и заблокирован.