Токен
на носії Маркер безпеки з майном, яке може мати будь-яка сторона, що має маркер ("пред'явник"), використовувати маркер будь-яким способом, який може мати будь-яка інша сторона, якою володіє. Використання маркера носія не вимагає від власника доказування володіння криптографічним ключовим матеріалом (підтвердження володіння).
Маркер Bearer є створений для вас сервером аутентифікації. Коли користувач автентифікує вашу програму (клієнта), сервер аутентифікації виходить та створює для вас маркер. Токени носія - це переважаючий тип маркера доступу, який використовується з OAuth 2.0. Маркер носія в основному говорить "Надати носію доступу до цього маркера".
Знак Bearer - це зазвичай якесь непрозоре значення, створене сервером аутентифікації. Це не випадково; він створюється на основі користувача, який надає вам доступ, і клієнта, до якого додає ваш додаток.
Для доступу до API, наприклад, потрібно скористатися маркером доступу. Токени доступу недовговічні (близько години). Ви використовуєте маркер носія, щоб отримати новий маркер доступу. Щоб отримати маркер доступу, ви надсилаєте серверу аутентифікації цей маркер носія разом з ідентифікатором клієнта. Таким чином, сервер знає, що програма, що використовує маркер носія, - це та сама програма, для якої створено маркер носія. Приклад: Я не можу просто взяти маркер носія, створений для вашої програми, і використовувати його зі своїм додатком, він не буде працювати, оскільки він не був створений для мене.
Маркер Google Refresh виглядає приблизно так: 1 / mZ1edKKACtPAb7zGlwSzvs72PvhAbGmB8K1ZrGxpcNM
скопійовано з коментаря: Я не думаю, що немає жодних обмежень на маркер носія, який ви надаєте. Єдине, що я можу придумати, це те, що приємно допускати більше одного. Наприклад, користувач може автентифікувати додаток до 30 разів, а старі жетони носія все ще працюватимуть. о, і якщо б не використовувались, скажімо, 6 місяців, я б видалив його з вашої системи. Вам належить генерувати та перевіряти їх ваш сервер автентифікації, тож залежатиме від того, яким чином він буде відформатований.
Оновлення:
У заголовку авторизації кожного запиту вбудованої дії HTTP встановлюється маркер носія. Наприклад:
POST /rsvp?eventId=123 HTTP/1.1
Host: events-organizer.com
Authorization: Bearer AbCdEf123456
Content-Type: application/x-www-form-urlencoded
User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/1.0 (KHTML, like Gecko; Gmail Actions)
rsvpStatus=YES
Рядок "AbCdEf123456"
у наведеному вище прикладі - це маркер авторизації носія. Це криптографічний маркер, виданий сервером аутентифікації. Усі маркери носія, що надсилаються з діями, мають поле видачі, при цьому поле аудиторії вказує домен відправника як URL-адресу форми https: //. Наприклад, якщо повідомлення електронної пошти від noreply@example.com, аудиторія https://example.com .
Якщо ви використовуєте маркери носія, переконайтеся, що запит надходить з сервера аутентифікації та призначений для домену відправника. Якщо маркер не підтверджується, служба повинна відповісти на запит кодом відповіді HTTP 401 (Несанкціонований).
Носери токерів є частиною стандарту OAuth V2 і широко застосовуються багатьма API.