Поставщики учетных данных в Windows
Поставщики учетных данных — это основной механизм проверки подлинности пользователей. В настоящее время они являются единственным способом для пользователей, чтобы подтвердить свое удостоверение, которое требуется для входа в систему и других сценариев проверки подлинности системы. С Windows 10 и введение Microsoft Passport поставщики учетных данных были более важными, чем когда-либо. Они используются для проверки подлинности в приложениях, веб-сайтах и т. д.
Корпорация Майкрософт предоставляет различные поставщики учетных данных в составе Windows, такие как пароль, ПИН-код, смарт карта и Windows Hello (распознавание отпечатков пальцев, лиц и iris). Они называются "поставщиками системных учетных данных" в этой статье. Изготовители оборудования, предприятия и другие сущности могут создавать собственные поставщики учетных данных и легко интегрировать их в Windows. Они называются сторонними поставщиками учетных данных в этой статье. Обратите внимание, что поставщики учетных данных версии 1 и версии 2 поддерживаются в Windows. Важно, чтобы создатели и руководители сторонних поставщиков учетных данных понимали эти рекомендации.
Поставщики системных учетных данных
Настоятельно рекомендуется всегда иметь по крайней мере один поставщик системных учетных данных для каждого пользователя на устройстве в дополнение к любым сторонним поставщикам учетных данных. Кроме того, во время настройки стороннего поставщика учетных данных каждый пользователь на устройстве должен быть предложено настроить по крайней мере один системный поставщик учетных данных (если другие варианты восстановления недоступны; см. сценарий A ниже).
Сценарий A
Пользователь локальной учетной записи настроил стороннего поставщика учетных данных и регулярно использует его для входа на устройство. Однажды пользователь устанавливает некоторое обновление на устройство, которое нарушает сторонний поставщик учетных данных, и пользователь не знает об этом изменении перед перезапуском компьютера.
На следующем перезапуске пользователь находится на экране входа и не может использовать ожидаемый сторонний поставщик учетных данных. Если пользователь настроил поставщика системных учетных данных, пользователь сможет войти на компьютер с его помощью. В противном случае пользователь не может восстановить учетную запись на компьютере.
Сценарий B
Учетная запись Майкрософт (MSA), Active Directory (AD) или пользователь учетной записи Идентификатора Майкрософт настроил стороннего поставщика учетных данных и регулярно использует его для входа на устройство. Однажды пользователь устанавливает некоторое обновление на устройство, которое нарушает сторонний поставщик учетных данных, и пользователь не знает об этом изменении перед перезапуском компьютера.
На следующем перезапуске пользователь находится на экране входа и не может использовать ожидаемый сторонний поставщик учетных данных. Если пользователь настроил поставщика учетных данных системы, пользователь сможет войти на компьютер с его помощью. Кроме того, если поставщик учетных данных пароля системы доступен, пользователь может удаленно запрашивать или сбрасывать пароль и использовать его для входа на компьютер. Если ни какой из вариантов недоступен, пользователь не может восстановить учетную запись на компьютере.
Заключение
В итоге отключение всех поставщиков учетных данных системы на устройстве должно быть не рекомендуется. Хотя сторонние поставщики учетных данных могут выполнять дополнительные требования к проверке подлинности для определенных групп пользователей, очень важно убедиться, что пользователь всегда может восстановить доступ к компьютеру при критическом изменении. Поставщики учетных данных системы предоставляют эту гарантию.
Пользовательские поставщики учетных данных
Платформа поставщика учетных данных Windows позволяет разработчикам создавать пользовательские поставщики учетных данных. Если Winlogon хочет собирать учетные данные, пользовательский интерфейс входа запрашивает каждый поставщик учетных данных для количества учетных данных, которые он хочет перечислить. После перечисления всех поставщиков плиток пользовательский интерфейс входа отображает их пользователю. Затем пользователь взаимодействует с плиткой для предоставления необходимых учетных данных. Пользовательский интерфейс входа отправляет эти учетные данные для проверки подлинности. Поставщики учетных данных также могут использоваться пользовательским интерфейсом учетных данных при необходимости. См . CREDENTIAL_PROVIDER_USAGE_SCENARIO список сценариев, в которых может поддерживаться поставщик учетных данных.
Благодаря этой системе гораздо проще создать поставщика учетных данных, чем исторически. Большая часть работы обрабатывается сочетанием Winlogon, пользовательского интерфейса входа и пользовательского интерфейса учетных данных. Для этого необходимо создать собственную реализацию ICredentialProvider и ICredentialProviderCredentialProviderCredential. При реализации поставщика учетных данных версии 2 рекомендуется также реализовать ICredentialProviderCredentialCredential2.
Важно отметить, что поставщики учетных данных не являются механизмами применения. Они используются для сбора и сериализации учетных данных, отправки их для авторизации. Локальный центр и пакеты проверки подлинности будут обрабатывать и любые необходимые принудительное применение безопасности.
Объединяя поставщиков учетных данных с поддерживаемым оборудованием, вы можете расширить Windows для поддержки входа с помощью сведений о метриках биография, паролях, ПИН-кодах, сертификатах смарт-карт или любом пользовательском пакете проверки подлинности, который вы хотите создать. Вы также можете настроить интерфейс входа для пользователя различными способами. Например, когда пользовательский интерфейс входа запрашивает поставщик учетных данных для плиток учетных данных, можно указать плитку по умолчанию, чтобы предоставить настраиваемый интерфейс для пользователя. Поставщики учетных данных могут даже быть разработаны для поддержки единого входа, проверки подлинности пользователей в безопасной точке доступа, а также для входа на компьютер.
Поставщики учетных данных регистрируются на компьютере Windows и отвечают за следующие действия.
- Описание сведений о учетных данных, необходимых для проверки подлинности.
- Обработка взаимодействия и логики с любыми внешними центрами проверки подлинности.
- Упаковка учетных данных для интерактивного и сетевого входа.
Совет
Помните, что на одном компьютере можно установить несколько поставщиков учетных данных.
Упаковка поставщиков учетных данных
Оболочка поставщика учетных данных системы может быть выполнена, чтобы добавить функциональные возможности к этому поставщику учетных данных, который не поддерживается в собственном коде. Это не рекомендуется, так как это может привести к проблемном поведению. Изменения можно вносить в поставщик учетных данных, который может конфликтовать с оболочкой, что приводит к плохому интерфейсу пользователя или даже не позволяет пользователю получить доступ к устройству. Это особенно верно с частотой частого обновления Windows.
Если функциональность в поставщике учетных данных необходима, которая не включена изначально, рекомендуемый путь создает настраиваемый поставщик учетных данных. Это более стабильный подход, который не имеет зависимостей от системных поставщиков.