From 41a516826ff54d40626749aa2f5a15440e271fbb Mon Sep 17 00:00:00 2001 From: Sergey Konstantinov Date: Thu, 28 Sep 2023 11:49:18 +0300 Subject: [PATCH] rephrasing --- src/ru/clean-copy/03-Раздел II. Паттерны дизайна API/02.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/ru/clean-copy/03-Раздел II. Паттерны дизайна API/02.md b/src/ru/clean-copy/03-Раздел II. Паттерны дизайна API/02.md index b8294e7..6e79a31 100644 --- a/src/ru/clean-copy/03-Раздел II. Паттерны дизайна API/02.md +++ b/src/ru/clean-copy/03-Раздел II. Паттерны дизайна API/02.md @@ -16,7 +16,7 @@ 2. Необходимо сделать для пользователей-роботов исключения из почти всех систем безопасности: * роботы выполняют намного больше запросов, чем обычные люди, и могут делать это в параллель (в том числе с разных IP-адресов, расположенных в разных дата-центрах); * роботы не принимают куки и не могут решить капчу; - * робота нельзя профилактически разлогинить и/или инвалидировать его токен (это чревато простоем бизнеса партнёра), поэтому для роботов часто приходится изобретать токены с большим временем жизни и/или процедуру обновления токена, для чего применяется соответствующий refresh-токен. + * робота нельзя профилактически разлогинить и/или инвалидировать его токен (это чревато простоем бизнеса партнёра), поэтому для роботов часто приходится изобретать токены с большим временем жизни и/или процедуру обновления токена, для чего приходится вводить дополнительный refresh-токен. 3. Наконец, вы столкнётесь с очень большими проблемами, если вам всё-таки понадобится дать роботу возможность выполнять операцию от имени другого пользователя (поскольку такую возможность придётся тогда либо выдать и обычным пользователям, либо каким-то образом скрыть её и разрешить только роботам). Если же API не предоставляется как сервис для конечных пользователей, второй подход с авторизацией клиентов через API-ключи более прост в имплементации. Здесь можно добиться гранулярности уровня эндпойнта (т.е. партнёр может выставить для ключа набор эндпойнтов, которые можно с ним вызывать), но более гранулярные системы (когда ключу выставляются ещё и ограничения на уровне бизнес-сущностей) уже намного сложнее в разработке и применяются редко.