Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
[Функция, связанная с этой страницей, пакет SDK для Windows Media 11, является устаревшей функцией. Он был заменен средства чтения источника и записи приемника. средства чтения источников и записи приемника оптимизированы для Windows 10 и Windows 11. Корпорация Майкрософт настоятельно рекомендует использовать новый код средства чтения исходного кода и записи приемников вместо пакета SDK для Windows Media 11, когда это возможно. Корпорация Майкрософт предлагает, что существующий код, использующий устаревшие API, будет перезаписан для использования новых API, если это возможно.]
Объект чтения может обрабатывать проблемы проверки подлинности сети, включая дайджест-проверку подлинности и проверку подлинности NTLM. В некоторых случаях приложение должно предоставить учетные данные пользователя через интерфейс обратного вызова:
Проверка подлинности дайджеста. Приложение должно реализовать интерфейс IWMCredentialCallback, как описано далее в этом разделе.
Проверка подлинности NTLM: средство чтения автоматически отвечает учетными данными для входа пользователя. Если текущий пользователь авторизован для входа на сервер, приложению не нужно ничего делать. Если у пользователя нет авторизации, приложение должно реализовать интерфейс IWMCredentialCallback.
Заметка
Службы Windows Media Services версии 4.1 не поддерживают проверку подлинности NTLM через прокси-сервер. Для проверки подлинности NTLM требуется несколько обменов клиентским сервером в одном подключении, а версия 4.1 не сохраняет постоянное соединение с прокси-сервером. Серия Служб Windows Media 9 в Microsoft Windows Server 2003 поддерживает проверку подлинности NTLM через прокси-сервер, если прокси-сервер поддерживает подключения в режиме поддержания активности.
Как отмечалось, в некоторых случаях приложение должно предоставить учетные данные пользователя. Это происходит через интерфейс IWMCredentialCallback, который имеет один метод, AcquireCredentials. Для поддержки проверки подлинности реализуйте этот интерфейс в приложении. Объект читателя запрашивает этот интерфейс путем вызова QueryInterface на указатель IWMReaderCallback, полученный из приложения в метод е IWMReader::Open. Если объект читателя должен получить учетные данные пользователя, он вызывает метод GetCredential s приложения.
Если учетные данные будут отправлены по сети без шифрования, средство чтения устанавливает флаг WMT_CREDENTIAL_CLEAR_TEXT в параметре pdwFlags. Это дает приложению возможность предупредить пользователя о том, что его учетные данные будут отправлены в виде обычного текста.
В противном случае объект чтения автоматически шифрует учетные данные перед отправкой в сеть. Приложение может вернуть их объекту чтения в виде обычного текста. Кроме того, если объект читателя задает флаг WMT_CREDENTIAL_ENCRYPT, это означает, что читатель поддерживает получение зашифрованных учетных данных из приложения. В этом случае приложение может возвращать учетные данные в виде обычного текста или шифровать их с помощью функции CryptProtectData, описанной в документации по пакету SDK для платформы. Если приложение шифрует учетные данные, перед возвратом метода необходимо задать флаг WMT_CREDENTIAL_ENCRYPT в параметре pdwFlags.
Как правило, не требуется шифровать данные, так как объект чтения шифрует данные при необходимости. Однако шифрование может оказаться полезным, если приложение сохраняет имя пользователя и пароль в памяти, так как он запрещает злоумышленнику проверять дамп памяти процесса.
Связанные разделы