OAuth Подробное объяснение<1> что такое OAuth?
OAuth Подробное объяснение<1> что такое OAuth?

что такое OAuth?

Начиная с высокого уровня, OAuth НетдаAPIили Служить:этода Авторизоватьизоткрытьстандартный,Любой может это реализовать.

Точнее, OAuth — это стандарт, который приложения могут использовать для предоставления «безопасного делегированного доступа» клиентским приложениям. OAuth работает через HTTPS и использует токены доступа вместо учетных данных для авторизации устройств, API, серверов и приложений.

OAuth Есть две версии:OAuth 1.0aиOAuth 2.0。Эти нормы взаимносовершенно другой,Нет能一起使用:это们之间Обратная совместимость отсутствует.

какой из них более популярен?Хороший вопрос!сейчас,Форма OAuth 2.0 OAuth. так что с этого момента,Каждыйкогда Я сказал“OAuth”час,я обада在谈论 OAuth 2.0 — потому что вы, вероятно, будете использовать именно ее.

Почему стоит выбрать OAuth?

OAuth был создан как ответ на режим прямой аутентификации. Этот режим известен базовой аутентификацией HTTP, которая запрашивает у пользователя имя пользователя и пароль. Базовая аутентификация по-прежнему используется в качестве исходной формы аутентификации API для серверных приложений: вместо отправки имени пользователя и пароля на сервер при каждом запросе пользователь отправляет идентификатор ключа API и пароль. До появления OAuth веб-сайты предлагали вам ввести имя пользователя и пароль непосредственно в форму, а затем входили в ваши данные (например, в вашу учетную запись Gmail) под вашим именем. Это часто называют криптографическим антипаттерном.

Чтобы улучшить систему сети, были созданы федеративные удостоверения для единого входа (SSO). В этом случае конечный пользователь обращается к своему поставщику удостоверений, который генерирует криптографически подписанный токен и передает его приложению для аутентификации пользователя. Приложение доверяет поставщику удостоверений. Пока эти доверительные отношения применимы к подписанному утверждению, все в порядке. На изображении ниже показано, как это работает.

Федеративные удостоверения известны как SAML 2.0, стандарт OASIS, выпущенный 15 марта 2005 года. Это большая спецификация, но двумя основными компонентами являются ее протокол запроса аутентификации (также известный как Web SSO) и способ упаковки атрибутов идентификации и их подписи, называемый утверждениями SAML.

SAML

SAML — это, по сути, сеансовый файл cookie в вашем браузере, который позволяет вам получить доступ к веб-приложению. Он ограничен в типах профилей устройств и сценариях, которые вы можете использовать вне веб-браузера.

Когда в 2005 году был запущен SAML 2.0, это имело смысл. Однако с тех пор многое изменилось. Теперь у нас есть современные веб-платформы и платформы для разработки собственных приложений. Существуют одностраничные приложения (SPA), такие как Gmail/Google Inbox, Facebook и Twitter. Они ведут себя иначе, чем ваше традиционное веб-приложение, поскольку выполняют AJAX (фоновые HTTP-вызовы) к API. Мобильные телефоны также выполняют вызовы API, как и телевизоры, игровые консоли и устройства Интернета вещей. SAML SSO не особенно хорош в этом.

OAuth и API

Способ создания API также сильно изменился. В 2005 году люди инвестировали в WS-* для создания веб-сервисов. Сегодня большинство разработчиков перешли на REST и API без сохранения состояния. Проще говоря, REST — это HTTP-команда, которая передает пакеты JSON по сети.

Разработчики создают множество API. Экономика API — это распространенное модное словечко, которое сегодня можно услышать в залах заседаний. Компаниям необходимо защитить свои REST API таким образом, чтобы обеспечить доступ к ним многим устройствам. Раньше вы вводили каталог своего имени пользователя и пароля, и приложение автоматически входило в систему. Это создает проблему делегирования.

«Как я могу разрешить приложению доступ к моим данным, не сообщая ему пароль?»

Если вы когда-либо видели одно из приведенных ниже диалоговых окон, мы говорим именно об этом. Это приложение, которое спрашивает, может ли оно получить доступ к данным от вашего имени.

Это ОАут.

OAuth — это платформа делегированной авторизации для REST/API. Это позволяет приложениям получать ограниченный доступ (объем) к пользовательским данным без раскрытия пароля пользователя. Он отделяет аутентификацию от авторизации и поддерживает несколько вариантов использования, учитывающих различные возможности устройства. Он поддерживает межсерверные приложения, браузерные приложения, мобильные/родные приложения, а также консоли/телевизоры.

Вы можете думать об этом как о ключе-карте отеля, но для приложения. Если у вас есть ключ-карта отеля, вы можете войти в свой номер. Как получить ключ-карту от отеля? Чтобы получить его, вам необходимо пройти аутентификацию на стойке регистрации. После аутентификации и получения карты-ключа вы сможете получить доступ к ресурсам на всей территории отеля.

Проще говоря, OAuth — это:

  1. Приложение запрашивает авторизацию пользователя
  2. Пользователь авторизует приложение и предоставляет подтверждение.
  3. Приложение предоставляет серверу подтверждение разрешения на получение жетонов.
  4. жетон Ограничить доступ к разрешенному пользователем контенту для определенных приложений

Центральные компоненты OAuth

OAuth построен на следующих основных компонентах:

  • Области действия и согласие (область полномочий и разрешения пользователя)
  • Действующие лица (пользователи)
  • Clients (клиент)
  • Билет аутентификации токенов
  • Сервер авторизации (Служба авторизации)
  • Потоки (процесс авторизации)

Область действия OAuth

Область — это то, что вы видите на экране авторизации, когда приложение запрашивает разрешение. Это пакеты разрешений, которые требуются клиенту при запросе токена. Они кодируются разработчиком приложения при написании приложения.

Область действия отделяет решения политики авторизации от исполнения. Это первый ключевой аспект OAuth. Разрешения являются наиболее важными. Они не скрыты за прикладным уровнем, который вам придется реконструировать. Обычно они перечислены в документации API: Вот области, необходимые для этого приложения.

OAuth — это решение масштаба Интернета, поскольку оно предназначено для каждого приложения. Обычно вы сможете войти в панель управления, чтобы просмотреть приложения, к которым вы предоставили доступ, и отозвать согласие.

Участники OAuth

Поток OAuthсерединаизучастникиследующее:

  • владелец ресурса:иметьсервер ресурсы и данные. Например, я да Facebook Профиль владелец ресурса。
  • сервер ресурсов:Приложение хранилища хочет получить доступизданныеиз API
  • клиент:хочу навестить тебяизданныеизприложение
  • Authorization Server : Основной механизм OAuthиз

Владелец ресурса — это роль, которая может меняться с использованием разных учетных данных. Это может быть конечный пользователь или компания.

Клиенты могут быть публичными и конфиденциальными. Между ними существует значительная разница в номенклатуре OAuth. Секретным клиентам можно доверить хранение секретов. Они не запускаются на настольных компьютерах и не распространяются через магазины приложений. Их невозможно перепроектировать и получить ключ. Они работают в защищенной зоне, недоступной для конечных пользователей.

Публичными клиентами являются браузеры, мобильные приложения и устройства IoT.

Регистрация клиента также является ключевым компонентом OAuth. Это похоже на DMV для OAuth. Вам необходимо получить лицензию для вашего приложения. Вот так логотип вашего приложения будет выглядеть в диалоге авторизации.

Токен OAuth

Токен доступа — это то, что клиент использует для доступа к серверу ресурсов (API). Им суждено быть недолговечными. Думайте о них в часах и минутах, а не в днях и месяцах. Вам не нужен конфиденциальный клиент для получения токена доступа. Вы можете получить токен доступа через общедоступный клиент. Они предназначены для оптимизации для решения проблем масштаба Интернета. Поскольку эти токены недолговечны и масштабируются, их нельзя отозвать, вам просто нужно дождаться истечения срока их действия.

Другой токен — это токен обновления. Это гораздо дольше; дни, месяцы, годы. Это можно использовать для получения новых токенов. Чтобы получить токен обновления, приложениям обычно требуется проверенный конфиденциальный клиент.

Токены обновления могут быть отозваны. Когда вы отзываете доступ приложения на панели мониторинга, вы прекращаете действие его токена обновления. Это позволяет вам заставить клиентов менять секреты. Вы используете токен обновления для получения нового токена доступа, а токен доступа обеспечивает доступ ко всем ресурсам API в сети. Каждый раз, когда вы обновляете свой токен доступа, вы получаете новый токен с криптографической подписью. Ротация ключей встроена в систему.

OAuth Спецификация не определяет, что такое токен. Это может быть любой формат, который вы хотите. Однако обычно вы хотите, чтобы эти токены были JSON Web жетон(стандартный)。суммируя,JWT (произносится как «джот») — это безопасный и надежный метод аутентификации. JWT Позволяет подписывать информацию (так называемую инструкцию) цифровой подписью и проверять ее позже с помощью секретного ключа подписи. узнать о JWT из Подробнее,ВидетьA Beginner's Guide to JWTs in Java

Токен извлекается из конечной точки на сервере авторизации. Двумя основными конечными точками являются конечная точка авторизации и конечная точка токена. Они разделены для разных случаев использования. Конечная точка авторизации — это место, где вы получаете согласие и авторизацию от пользователя. Это вернет разрешение на авторизацию, указывающее, что пользователь согласился на это. Затем передайте авторизацию конечной точке токена. Конечная точка токена обрабатывает авторизацию и говорит: «Отлично, вот ваш токен обновления и токен доступа».

Вы можете использовать токен доступа для доступа к API. По истечении срока его действия вам придется использовать токен обновления, чтобы вернуться к конечной точке токена и получить новый токен доступа.

Обратной стороной является то, что это вызывает много разногласий среди разработчиков. Одна из самых больших проблем с OAuth для разработчиков заключается в том, что вам приходится управлять токенами обновления. Вы передаете управление состоянием каждому разработчику клиента. Вы получаете преимущество от ротации ключей, но только что причинили много боли разработчикам. Вот почему разработчики любят ключи API. Они просто копируют/вставляют их, помещают в текстовый файл, и все готово. Ключи API хороши для разработчиков, но плохи для безопасности.

Здесь есть проблема с оплатой за игру. Позвольте разработчикам выполнять Поток OAuth повышает безопасность, но также создает больше проблем. Инструментарий и платформа имеют возможность упростить работу и помочь руководить управлением токенами. Счастливая дата, OAuth В наши дни он достаточно устоялся, и ваш любимый язык или фреймворк, вероятно, имеет инструменты, упрощающие работу.

Мы немного поговорили о типах клиентов, типах токенов, конечных точках сервера авторизации и о том, как мы передаем их на сервер ресурсов. Я упомянул два разных потока: получение авторизации и получение токена. Это не обязательно должно происходить на одном и том же канале. Внешний канал осуществляется через браузер. Браузер перенаправляет пользователя на сервер авторизации, и пользователь соглашается. Это происходит в браузере пользователя. После того как пользователь авторизован и передан приложению, клиентскому приложению больше не нужно использовать браузер для завершения Поток OAuthПриходитьполучать Токен.

Токен предназначен для использования клиентским приложением, чтобы оно могло получить доступ к ресурсам от вашего имени. Мы называем это обратным каналом. Обратный канал — это HTTP-вызов напрямую от клиентского приложения к серверу ресурсов в обмен на токен авторизации. Эти каналы используются для разных потоков в зависимости от возможностей вашего устройства.

Например, поток внешнего канала для авторизации пользовательского агента может выглядеть следующим образом:

  1. Владелец ресурсазапустите процесс делегирования доступа к защищенным ресурсам из
  2. клиентпрохождение Браузер перенаправляет запрос авторизации с необходимой областью на конечную точку авторизации на сервере авторизации.
  3. Сервер авторизации возвращает диалоговое окно согласия с вопросом: «Разрешаете ли вы этому приложению доступ к этим областям?» Однако вам нужно будет в приложении руководить ID проверки, поэтому если вы не на сервере ресурсыруководить ID проверки, он попросит вас авторизоваться. Если у вас уже есть кэшированный сеанс cookie, вы увидите только диалоговое окно согласия. Просмотрите диалоговое окно согласия и согласитесь.
  4. Разрешение на авторизацию передается обратно приложению через перенаправление браузера. Все это происходит в переднем канале.

Существует также вариант этого процесса, называемый неявным процессом. Мы вернемся к этому через минуту.

Язык кода:javascript
копировать
get https://accounts.google.com/o/oauth2/auth?scope=gmail.insert gmail.send 
&redirect_uri=https://app.example.com/oauth2/callback 
&response_type=code&client_id=812741506391 
&state=af0ifjsldkj

Это запрос GET с набором параметров запроса (для примера это не URL-адрес). Область действия исходит из API Gmail. redirect_uri — URL-адрес, на который клиентскому приложению должно быть возвращено разрешение на авторизацию. Оно должно соответствовать значению, полученному в процессе регистрации клиента (в DMV). Вы не хотите, чтобы авторизация возвращалась к иностранным приложениям. Типы ответов различаются в зависимости от потока OAuth. Идентификатор клиента также получается в процессе регистрации. Состояние — это флаг безопасности, аналогичный XRSF. Чтобы узнать больше о XRSF

Язык кода:javascript
копировать
HTTP/1.1 302 Found
Location: https://app.example.com/oauth2/callback?
code=MsCeLvIaQm6bTrgtp7&state=af0ifjsldkj

возвращатьсяcodeизда Авторизовать授予,stateда为了确保это Нетдаподделкаиз,И из того же запроса.

После завершения работы переднего канала происходит поток обратного канала, в котором код авторизации обменивается на токен доступа.

Клиентское приложение отправляет запрос токена доступа в конечную точку токена на сервере авторизации, используя конфиденциальные учетные данные клиента и идентификатор клиента. Этот процесс предоставляет код авторизации в обмен на токен доступа и (необязательно) токен обновления. Клиенты используют токены доступа для доступа к защищенным ресурсам.

Вот как это выглядит в необработанном HTTP:

Request

Язык кода:javascript
копировать
POST /oauth2/v3/token HTTP/1.1
Host: www.googleapis.com
Content-Type: application/x-www-form-urlencoded
​
code=MsCeLvIaQm6bTrgtp7&client_id=812741506391&client_secret={client_secret}&redirect_uri=https://app.example.com/oauth2/callback&grant_type=authorization_code

The grant_type is the extensibility part of OAuth. It's an authorization code from a precomputed perspective. It opens up the flexibility to have different ways to describe these grants. This is the most common type of OAuth flow.

Response

Язык кода:javascript
копировать
{
  "access_token": "2YotnFZFEjr1zCsicMWpAA",
  "token_type": "Bearer",
  "expires_in": 3600,
  "refresh_token": "tGzv3JOkF0XG5Qx2TlKWIA"
}

Ответ — JSON. Вы можете использовать токены пассивно или активно. Проактивность — это наличие таймера в вашем клиенте. Реактивный — это отловить ошибку и попытаться получить новый токен.

После получения доступа к жетону,Вы можете идентифицироватьпроверятьзаголовоксередина使用доступжетон(Использовать какtoken_typeпрефикс)Приходить发出受保护из Запрос ресурса。

Язык кода:javascript
копировать
curl -H "Authorization: Bearer 2YotnFZFEjr1zCsicMWpAA" \
  https://www.googleapis.com/gmail/v1/users/1444587525/messages

Итак, теперь у вас есть передний канал, задний канал, разные конечные точки и разные клиенты. Вам придется смешивать и сопоставлять их для разных случаев использования. Это увеличивает сложность OAuth и может сбить с толку.

Поток OAuth

Первый скончалсядачто мы сказалиизнеявный поток。Причина, по которой это называетсянеявный поток, да потому что все коммуникации дапроходить через браузер под руководством. Нет бэкэнд-сервера для выкупа лицензий на доступ к жетону. СПА является хорошим примером варианта использования этого процесса. Этот процесс также известен как 2 Legged OAuth。

Неявная потоковая передача оптимизирована для общедоступных клиентов, работающих только в браузере. Токен доступа возвращается непосредственно из запроса авторизации (только внешний канал). Обычно он не поддерживает токены обновления. Предполагается, что владелец ресурса и общедоступный клиент находятся на одном устройстве. Поскольку все происходит в браузере, он наиболее уязвим для угроз безопасности.

Золотой стандарт – это Authorization Code Flow,это同час使用前通道изадний канал。Это我们在本文середина讨论最多изсодержание。клиентприложение使用前端通道流Приходитьполучать Авторизовать码授予。клиентприложение使用反向通道将Авторизовать代码授予交换доступжетон(и необязательноизобновитьжетон)。это假定владелец Приложение ресурсиклиент доступно на разных устройствах. Это наиболее безопасный процесс, поскольку вы можете активировать авторизацию, предоставленную удостоверением клиентаруководства, и жетон никогда не будет передавать пароль пользовательского агента. Мало того, что существуют неявные коды авторизации, вы также можете использовать OAuth Выполните другие процессы. Аналогично, OAuth Больше похоже на каркас.

Сценарий межсерверного взаимодействия,Вы можете использоватьClient Credential Flow。в этом случае,клиентское приложение и КОНФИДЕНЦИАЛЬНЫЙ клиент,он работает независимо,Не представляет пользователя. Это скорее тип и сценарий сервисной учетной записи. Для завершения всего процесса вам нужны только учетные данные клиента. Это обратный канал,Получите доступ к токену только с использованием учетных данных клиента. Он поддерживает общий секрет или утверждения, а также использование симметричных или асимметричных ключей, подписанных и учетных данных клиента.

Алгоритм симметричного ключа — это алгоритм шифрования, который может расшифровать что угодно, если у вас есть пароль. Это часто встречается при защите файлов PDF или .zip.

Криптография с открытым ключом или асимметричная криптография — это любая криптографическая система, в которой используются пары ключей: открытый ключ и закрытый ключ. Открытый ключ может прочитать кто угодно, закрытый ключ является священным для владельца. Это позволяет обеспечить безопасность данных без совместного использования паролей.

Есть еще один, называетсяResource Owner Password Flow изустаревший режим。Это то же самое, что использовать имя пользователяипарольизпрямая идентичностьпроверять Решения очень похожи,Поэтому его использование не рекомендуется. Это локальные приложения с именем пользователя и паролем (например, настольные приложения) традиционного типа авторизации. В этом процессе,Вы отправляете свой логин и пароль в клиентское приложение,Затем он возвращает доступ к Токену с сервера авторизации. Обычно он не поддерживает обновление жетона.,и предположимвладелец ресурсы публичного клиента на том же устройстве. когда у вас есть тот, который вы просто хотите использовать OAuth из API, но вам придется иметь дело с клиентами старой школы.

OAuth Недавно добавленоиздаAssertion Flow,это类似Вклиент Поток учетных данных。添加этотсодержаниедаоткрыть федерациюизидея。этотпроцесс允许Авторизовать Служить器信任Приходить自第三方(Например SAML IdP) из предоставленного разрешения. Сервер авторизации доверяет поставщику удостоверений. Это утверждение использует В для доступа к Токену из конечной точки получения. Это полезно для В-инвестиций. SAML или SAML сопутствующие технологии и позволяют им взаимодействовать с OAuth Очень полезно для интегрированных компаний. потому что SAML утверждениедакороткийиз,Так что в этом процессжетоне нет обновления,Вы должны продолжать получать Токен доступа каждый раз, когда истечет срок действия утверждения.

Нет здесь OAuth в спецификации,даDevice Flow。Нет веб-браузера,Только ТВ и прочие контроллеры. Код пользователя да, возвращенный из запроса на авторизацию,долженпроходить Доступ через браузеризна устройствеиз URL чтобы активировать авторизацию. Клиентское приложение использует поток обратного канала для запроса доступа и необязательного обновления разрешения авторизации. Также очень популярен CLI клиент Добро пожаловать.

Мы представили шесть различных процессов с использованием разных типов участников. Они необходимы,Из-за возможностей клиента,Как нам нужно получить согласие клиента,кто согласен,Это дает OAuth Добавляет много сложности.

Когда люди спрашивают тебя, поддерживаешь ли ты OAuth час,Вы должны уточнить их требования. Они спрашивают вас, поддерживаете ли вы все шесть процессов.,Кроме того, да поддерживает только основной процесс? Между всеми различными исходными процессами имеется множество детализации.

Безопасность и предпринимательство

OAuth из имеет широкий спектр применения. Используйте неявный поток, много редиректов и много места для ошибок. Есть много людей, пытающихся использовать различные приложения. OAuth, если вы не следуете рекомендациям из Web Security 101 Руководство, это легко сделать. Например:

  • всегда CSRF жетониstateПараметры, используемые вместе для обеспечения целостности потока.
  • всегда重定向 URI Белый список для обеспечения правильности URI проверять
  • Привяжите одного и того же клиента к запросу предоставления ижетона авторизации, используя идентификатор клиента.
  • В случае конфиденциальных клиентов убедитесь, что конфиденциальность клиентов не разглашается. Не разглашайте секреты клиентов App Store Распространение из приложения!

В общем, да OAuth Наибольшие жалобы исходят от сотрудников службы безопасности. это связано с Bearer Токены связаны между собой, они могут быть похожи на сеансы. cookie Прошло также. Вы можете передать его, и все готово, он не будет криптографически привязан к пользователю. использовать JWT Полезно, потому что их нельзя подделать. Но, в конечном итоге, JWT Толькодастрока символов,因этот可к轻松копироватьэто们并在заголовоксередина使用Authorization

OpenID Connect

Для решения проблемы псевдоаутентификации используется комбинация OAuth 2.0、Facebook Connect и SAML 2.0 из最佳部分Приходить创建OpenID Connectid_tokenOpenID Connect (OIDC) Используйте новыеизклиентзнакиUserInfoполучать Атрибуты пользователяиз端点扩展 OAuth 2.0. и SAML Разное, OIDC предоставляет наборстандартныйиз Область действия удостоверенияизаявление。Примеры включают в себя:profileemailaddressиphone

OIDC изCreate да для того, чтобы сделать вещи полностью динамичными для достижения Internet Масштабируемость. Больше не нужно быть похожим SAML Таким образом, скачайте метаданные вместе. Полезное В динамическом объединении со встроенной регистрацией, Обнаружитьиметаданные. Вы можете ввести свой адрес электронной почты, и он будет динамически обнаруживать ваш адрес. OIDC поставщика, динамически загружает метаданные, динамически знает, какой сертификат он будет использовать, и позволяет BYOI (Принеси свою индивидуальность). Он поддерживает предприятия с высоким уровнем безопасности и критически важными SAML Варианты использования.

OIDC прославился благодаря Google и Microsoft, которые были одними из первых его последователей.

Request

Язык кода:javascript
копировать
GET https://accounts.google.com/o/oauth2/auth? 
scope= openid email & 
redirect_uri=https://app.example.com/oauth2/callback& 
response_type=code& 
client_id=812741506391& 
state=af0ifjsldkj

Response

Язык кода:javascript
копировать
HTTP/1.1 302 Found
Location: https://app.example.com/oauth2/callback?
code=MsCeLvIaQm6bTrgtp7&state=af0ifjsldkj

жетон ответ на предоставление авторизации содержит идентификатор Токен.

Request:

Язык кода:javascript
копировать
POST /oauth2/v3/token HTTP/1.1
Host: www.googleapis.com
Content-Type: application/x-www-form-urlencoded
​
code=MsCeLvIaQm6bTrgtp7&client_id=812741506391&
  client_secret={client_secret}&
  redirect_uri=https://app.example.com/oauth2/callback&
  grant_type=authorization_code

Response:

Язык кода:javascript
копировать
{
  "access_token": "2YotnFZFEjr1zCsicMWpAA",
  "token_type": "Bearer",
  "expires_in": 3600,
  "refresh_token": "tGzv3JOkF0XG5Qx2TlKWIA",
  "id_token": "eyJhbGciOiJSUzI1NiIsImtpZCI6IjFlOWdkazcifQ..."
}

Вы можете увидеть это в OAuth хорошо выложить сверху, чтобы ID Токен возвращается как структурированный токен. ИДЕНТИФИКАТОР Токен JSON Web жетон (ДЖВТ). JWT (он же «джот») основан на XML из огромного SAML Утверждения намного меньше и могут эффективно передаваться между различными устройствами. JWT Содержит три части: заголовок、текстизнак。заголовок, указывающий, какой алгоритм использовать дляруководитьзнак,заявление в тексте,и подписался в подписи.

Процесс Open ID Connect включает в себя следующие шаги:

  1. Откройте для себя метаданные OIDC
  2. осуществлять Поток OAuthкполучать ID жетонидоступжетон
  3. получить ключ подписи JWT с возможностью динамической регистрации клиентского приложения
  4. Локальная проверка JWT ID жетон на основе встроенной даты и подписи
  5. Используйте при необходимости для доступа жетонполучения других свойств пользователя.

Резюме OAuth 2.0

OAuth 2.0 это метод, используемый для делегированного доступа API из Структура авторизации. это предполагает запрос владельца ресурс Авторизация/Согласие из ОБЛАСТИ изклиента. Авторизация предоставляет доступ к обмену жетонами и обновление жетонов (зависит от Впроцесса). Существует несколько процессов, которые могут решить различные сценарии авторизации исходных клиентов. JWT Доступные серверы авторизации на сервере Между ресурсамиизструктурированный Токен.

OAuth имеет очень большую зону безопасности. Обязательно используйте безопасный набор инструментов и проверяйте все вводимые данные!

OAuth Это не протокол аутентификации. OpenID Connect Расширено для схем аутентификации OAuth 2.0, часто называемый «с фигурными скобками из SAML”。

boy illustration
Углубленный анализ переполнения памяти CUDA: OutOfMemoryError: CUDA не хватает памяти. Попыталась выделить 3,21 Ги Б (GPU 0; всего 8,00 Ги Б).
boy illustration
[Решено] ошибка установки conda. Среда решения: не удалось выполнить первоначальное зависание. Повторная попытка с помощью файла (графическое руководство).
boy illustration
Прочитайте нейросетевую модель Трансформера в одной статье
boy illustration
.ART Теплые зимние предложения уже открыты
boy illustration
Сравнительная таблица описания кодов ошибок Amap
boy illustration
Уведомление о последних правилах Points Mall в декабре 2022 года.
boy illustration
Даже новички могут быстро приступить к работе с легким сервером приложений.
boy illustration
Взгляд на RSAC 2024|Защита конфиденциальности в эпоху больших моделей
boy illustration
Вы используете ИИ каждый день и до сих пор не знаете, как ИИ дает обратную связь? Одна статья для понимания реализации в коде Python общих функций потерь генеративных моделей + анализ принципов расчета.
boy illustration
Используйте (внутренний) почтовый ящик для образовательных учреждений, чтобы использовать Microsoft Family Bucket (1T дискового пространства на одном диске и версию Office 365 для образовательных учреждений)
boy illustration
Руководство по началу работы с оперативным проектом (7) Практическое сочетание оперативного письма — оперативного письма на основе интеллектуальной системы вопросов и ответов службы поддержки клиентов
boy illustration
[docker] Версия сервера «Чтение 3» — создайте свою собственную программу чтения веб-текста
boy illustration
Обзор Cloud-init и этапы создания в рамках PVE
boy illustration
Корпоративные пользователи используют пакет регистрационных ресурсов для регистрации ICP для веб-сайта и активации оплаты WeChat H5 (с кодом платежного узла версии API V3)
boy illustration
Подробное объяснение таких показателей производительности с высоким уровнем параллелизма, как QPS, TPS, RT и пропускная способность.
boy illustration
Удачи в конкурсе Python Essay Challenge, станьте первым, кто испытает новую функцию сообщества [Запускать блоки кода онлайн] и выиграйте множество изысканных подарков!
boy illustration
[Техническая посадка травы] Кровавая рвота и отделка позволяют вам необычным образом ощипывать гусиные перья! Не распространяйте информацию! ! !
boy illustration
[Официальное ограниченное по времени мероприятие] Сейчас ноябрь, напишите и получите приз
boy illustration
Прочтите это в одной статье: Учебник для няни по созданию сервера Huanshou Parlu на базе CVM-сервера.
boy illustration
Cloud Native | Что такое CRD (настраиваемые определения ресурсов) в K8s?
boy illustration
Как использовать Cloudflare CDN для настройки узла (CF самостоятельно выбирает IP) Гонконг, Китай/Азия узел/сводка и рекомендации внутреннего высокоскоростного IP-сегмента
boy illustration
Дополнительные правила вознаграждения амбассадоров акции в марте 2023 г.
boy illustration
Можно ли открыть частный сервер Phantom Beast Palu одним щелчком мыши? Супер простой урок для начинающих! (Прилагается метод обновления сервера)
boy illustration
[Играйте с Phantom Beast Palu] Обновите игровой сервер Phantom Beast Pallu одним щелчком мыши
boy illustration
Maotouhu делится: последний доступный внутри страны адрес склада исходного образа Docker 2024 года (обновлено 1 декабря)
boy illustration
Кодирование Base64 в MultipartFile
boy illustration
5 точек расширения SpringBoot, супер практично!
boy illustration
Глубокое понимание сопоставления индексов Elasticsearch.
boy illustration
15 рекомендуемых платформ разработки с нулевым кодом корпоративного уровня. Всегда найдется та, которая вам понравится.
boy illustration
Аннотация EasyExcel позволяет экспортировать с сохранением двух десятичных знаков.