FedCM: API-интерфейс федерации удостоверений, сохраняющий конфиденциальность.

На этой странице объясняются преимущества FedCM, кому следует рассмотреть возможность внедрения FedCM и как пользователи взаимодействуют с FedCM .

Федеративное управление учетными данными (FedCM) — это ориентированный на конфиденциальность и удобный для пользователя подход к федеративным службам идентификации (таким как «Вход с помощью поставщика удостоверений» ), который не использует сторонние файлы cookie или навигационные перенаправления.

Благодаря FedCM пользователю предоставляется новый способ аутентификации у стороннего поставщика удостоверений на веб-сайте.

Что такое федерация идентичности

Федерация удостоверений делегирует аутентификацию или авторизацию отдельного лица (пользователя или организации) доверенному внешнему поставщику удостоверений (IdP). Затем IdP позволяет этому лицу войти на веб-сайт проверяющей стороны (RP). При федерации удостоверений RP полагается на IdP, чтобы предоставить пользователю учётную запись без необходимости ввода нового имени пользователя и пароля.

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

Традиционные решения и сторонние файлы cookie

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

Учитывая проблемы конфиденциальности, основные браузеры ограничивают использование сторонних файлов cookie. Это может повлиять на некоторые функции. Благодаря усилиям сообщества и нашим исследованиям мы выяснили, что некоторые интеграции, связанные с федерацией удостоверений, подвержены влиянию ограничений на использование сторонних файлов cookie.

Федерация удостоверений личности с FedCM

FedCM не зависит от протокола: его можно реализовать как автономное решение или как дополнительный уровень, который могут использовать различные протоколы. Например, функциональный сервер OAuth может воспользоваться преимуществами браузерного входа FedCM в одно касание и интуитивно понятным пользовательским интерфейсом, реализуя конечные точки FedCM и обменивая код авторизации, возвращаемый в ответе FedCM, на токен доступа OAuth.

Зачем нам нужен FedCM?

По сравнению с традиционными решениями он предлагает множество преимуществ для веб-экосистемы, разработанной с учетом потребностей пользователей, разработчиков RP и IdP.

Поддержка решений по идентификации без сторонних файлов cookie

FedCM может помочь снизить зависимость от сторонних файлов cookie, которые часто используются для отслеживания пользователей в интернете. API обеспечивает персонализированный вход в систему даже при отсутствии сторонних файлов cookie (например, в режиме инкогнито).

FedCM также интегрирован с другими API Privacy Sandbox. Например, API Storage Access использует аутентификацию FedCM в качестве сигнала доверия . Эта интеграция полезна для веб-сайтов, которые используют как FedCM для аутентификации, так и SAA для обеспечения доступа к необходимому хранилищу через кросс-источниковые iframe.

Улучшенный пользовательский опыт

FedCM представляет диалоговое окно пользовательского интерфейса на базе браузера для упрощения процесса входа в систему одним касанием. API также решает проблему перегруженных страниц входа, иногда называемую « проблемой NASCAR» .

Пример проблемы NASCAR: веб-сайт с перегруженным пользовательским интерфейсом из-за выбора семи различных вариантов входа.
Пример проблемы NASCAR: веб-сайт с загроможденным пользовательским интерфейсом, вызванным слишком широким выбором IdP.

Вместо огромного количества кнопок входа через социальные сети FedCM предлагает более простой и удобный интерфейс .

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

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

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

Персонализированный опыт для большего количества пользователей

FedCM упрощает процесс регистрации учётной записи. Примеры использования Google Identity Service показывают, что пользователи предпочитают создавать учётные записи с помощью функции FedCM «Одно касание» вместо многоэтапных вариантов входа.

Благодаря FedCM больше поставщиков удостоверений могут предложить своим пользователям вход в систему одним касанием. Благодаря тому, что всё больше поставщиков удостоверений предлагают процедуру идентификации одним касанием, пользователи могут выбирать из более широкого списка поставщиков удостоверений на RP. FedCM предоставляет улучшенный механизм выбора поставщиков удостоверений, предоставляя пользователям наиболее релевантные учётные записи .

Благодаря более высоким показателям регистрации RP могут предложить персонализированный опыт большему количеству пользователей.

Поддержка различных поставщиков удостоверений

Упрощённый пользовательский интерфейс FedCM призван предоставлять пользователям персонализированный список соответствующих поставщиков удостоверений (IdP) . Благодаря механизму выбора IdP FedCM, выбор IdP RP больше не ограничен размером пользовательской базы этого поставщика. Например, у части пользователей может быть учётная запись только с именем small-idp.example , но не с bigger-idp.example .

Благодаря функции Multi-IdP, rp.example может поддерживать как small-idp.example , так и bigger-idp.example не загромождая пользовательский интерфейс. Это выгодно всем сторонам:

  • Пользователи могут выбрать предпочитаемого ими поставщика удостоверений, независимо от его размера.
  • RP охватывают больше пользователей благодаря разнообразной поддержке IdP
  • Удостоверяющие личности с меньшей базой пользователей доступны на большем количестве RP.

Кому следует использовать FedCM?

Мы рассчитываем, что FedCM будет вам полезен только при соблюдении следующих условий:

  • Вы являетесь поставщиком удостоверений (IdP) со сторонними RP.
  • У вас есть собственное решение для идентификации и несколько доменов, использующих его.
  • Ваша цель — поддерживать федеративные потоки идентификации даже для пользователей, которые предпочитают просмотр без сторонних файлов cookie.

Вы являетесь лицом с ограниченными возможностями

FedCM требует поддержки со стороны поставщика удостоверений. Проверяющая сторона не может использовать FedCM самостоятельно. Если вы являетесь проверяющим поставщиком, вы можете обратиться к своему поставщику удостоверений за инструкциями.

Несколько RP

Если ваши RP являются сторонними или ваше решение для идентификации используют более четырех RP, рекомендуемым API для федеративной идентификации является FedCM.

Ваша цель — поддерживать поток федеративной идентификации без использования cookie-файлов.

FedCM поддерживает основные федеративные потоки идентификации даже для пользователей, которые просматривают веб-страницы без сторонних файлов cookie. С FedCM пользователи по-прежнему могут регистрироваться, входить в систему и выходить из системы, используя свои федеративные учётные записи на RP.

Кроме того, FedCM выступает в качестве сигнала доверия для API доступа к хранилищу, устраняя помехи для запросов на доступ к хранилищу, инициированных IdP.

Взаимодействие пользователя с FedCM

FedCM разработан таким образом, чтобы не зависеть от протокола аутентификации, и предлагает пользователю новый способ аутентификации в RP с использованием стороннего поставщика удостоверений. Попробуйте FedCM в нашей демоверсии .

Войти в систему проверяющей стороны

Пользователи могут выбрать учётную запись из набора IdP, поддерживаемых RP. Если пользователь вошел в систему с помощью нескольких IdP, ему будет предложено войти в RP, используя один из них.

Учетные записи пользователя отображаются в следующем порядке:

  • Первыми отображаются учетные записи, к которым пользователь обращался на своем устройстве, причем первыми — учетные записи, к которым он обращался последним.
  • Далее показаны учётные записи, к которым пользователь получил доступ на RP согласно данным IdP. Информация о том, к каким учётным записям был получен доступ, извлекается из значения свойства конечной точки учётной записи approved_clients .
  • Учетные записи, которые ранее не использовались в RP, отображаются последними.

Если в пределах любого из этих уровней приоритета имеется несколько учетных записей, то эти учетные записи дополнительно упорядочиваются на основе порядка IdP, предоставленного RP в вызове get() .

Режимы пользовательского интерфейса FedCM

FedCM имеет два режима пользовательского интерфейса: пассивный и активный .

Пассивный режим . В пассивном режиме взаимодействие с пользователем не требуется для появления запроса FedCM. Когда пользователь переходит на сайт проверяющей стороны (RP), при вызове navigator.credentials.get() открывается диалоговое окно входа в FedCM, если выполняются следующие условия:

  • Пользователь вошёл как минимум в один из поддерживаемых поставщиков удостоверений. Если статус пользователя — «Вышел из системы» для всех доступных поставщиков удостоверений, запрос на вход в FedCM не отображается автоматически.
  • Настройка времени восстановления FedCM не установлена ​​в браузере пользователя.
  • Пользователь не отключил FedCM в настройках браузера . Узнайте больше о том, как пользователи могут отказаться от FedCM.
Пользователь последовательно проходит аутентификацию у разных IdP в пассивном режиме: входит и выходит у одного, затем проходит аутентификацию у следующего.

Активный режим . В активном режиме для вызова запроса FedCM требуется кратковременная активация пользователя (например, нажатие кнопки «Войти с помощью… »).

Пользователь входит в RP, используя FedCM в активном режиме.

Пользователь может завершить вход, нажав «Продолжить как пользователь» . В случае успеха браузер сохраняет информацию о том, что пользователь создал федеративную учётную запись на RP с помощью IdP.

Если у пользователя нет учетной записи на RP с IdP, появится диалоговое окно регистрации с дополнительным текстом раскрытия информации, например условиями обслуживания RP и политикой конфиденциальности.

Соблюдение законов об электронной конфиденциальности

Использование FedCM, как в качестве поставщика удостоверений (IdP), так и в качестве поставщика ресурсов (RP), подразумевает хранение информации на конечном устройстве пользователя или доступ к уже хранящейся на нём информации, и, следовательно, подпадает под действие законов об электронной конфиденциальности (ePrivacy) Европейской экономической зоны (ЕЭЗ) и Великобритании, которые, как правило, требуют согласия пользователя. Вы несете ответственность за определение того, является ли использование FedCM строго необходимым для предоставления онлайн-услуги, явно запрошенной пользователем, и, следовательно, освобождено от требования получения согласия.

Зрение

Мы активно разрабатываем новые функции для устранения текущих ограничений и обеспечения лучшего пользовательского опыта.

  • Мы изучаем более тихие UX-формулировки, чтобы обеспечить плавный, интуитивно понятный и менее навязчивый процесс аутентификации для пользователей.
  • Мы стремимся улучшить конфиденциальность пользователей. Мы планируем перейти на модель NextGen FedCM, ориентированную на делегирование, которая смягчает проблему отслеживания со стороны поставщика удостоверений. Благодаря NextGen пользователи могут входить в систему RP без необходимости отслеживания со стороны поставщика удостоверений.
  • FedCM стремится предоставить пользователям более широкий выбор поставщиков удостоверений (IdP) в зависимости от выбора проверяющего поставщика. Для этого мы работаем над API Multi-IdP и IdP Registration.
  • Мы активно работаем над интеграцией FedCM с другими методами аутентификации, такими как Passkeys, с дополнительными средствами, такими как автозаполнение, для внедрения унифицированного опыта аутентификации.

Более подробную информацию смотрите в нашей дорожной карте .