Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
[Funktionen som är associerad med den här sidan, Windows Media Format 11 SDK, är en äldre funktion. Det har ersatts av Source Reader och Sink Writer. Source Reader och Sink Writer har optimerats för Windows 10 och Windows 11. Microsoft rekommenderar starkt att ny kod använder Source Reader och Sink Writer i stället för Windows Media Format 11 SDK, när det är möjligt. Microsoft föreslår att befintlig kod som använder äldre API:er skrivs om för att använda de nya API:erna om möjligt.]
Läsarobjektet kan hantera problem med nätverksautentisering, inklusive sammanfattad autentisering och NTLM-autentisering. I vissa fall måste programmet ange användarens autentiseringsuppgifter via ett motringningsgränssnitt:
Sammanfattad autentisering: Programmet måste implementera gränssnittet IWMCredentialCallback, enligt beskrivningen senare i det här avsnittet.
NTLM-autentisering: Läsaren svarar automatiskt med användarens inloggningsuppgifter. Om den aktuella användaren har behörighet att logga in på servern behöver programmet inte göra något. Om användaren inte har auktorisering måste programmet implementera IWMCredentialCallback--gränssnittet.
Not
Windows Media Services version 4.1 stöder inte NTLM-autentisering via en proxyserver. NTLM-autentisering kräver flera klient-serverutbyten på samma anslutning och version 4.1 behåller inte en beständig anslutning till proxyn. Windows Media Services 9-serien i Microsoft Windows Server 2003 stöder NTLM-autentisering via en proxyserver, så länge proxyn stöder keep-alive-anslutningar.
Som nämnts måste programmet i vissa fall ange användarens autentiseringsuppgifter. Detta sker via gränssnittet IWMCredentialCallback, som har en enda metod, AcquireCredentials. Implementera det här gränssnittet i ditt program för att stödja autentisering. Läsarobjektet frågar efter det här gränssnittet genom att anropa QueryInterface på IWMReaderCallback pekare som det tog emot från programmet i metoden IWMReader::Open. Om läsarobjektet behöver hämta användarens autentiseringsuppgifter anropas programmets AcquireCredentials-metod.
Om autentiseringsuppgifterna skickas via nätverket utan kryptering anger läsaren flaggan WMT_CREDENTIAL_CLEAR_TEXT i parametern pdwFlags. Detta ger programmet möjlighet att varna användaren om att hans eller hennes autentiseringsuppgifter skickas i klartext.
Annars krypterar läsarobjektet automatiskt autentiseringsuppgifterna innan de skickas via nätverket. Programmet kan returnera dem till läsarobjektet i oformaterad text. Om läsarobjektet dessutom anger flaggan WMT_CREDENTIAL_ENCRYPT innebär det att läsaren har stöd för att hämta krypterade autentiseringsuppgifter från programmet. I så fall kan programmet antingen returnera autentiseringsuppgifterna i oformaterad text eller kryptera dem själva med hjälp av funktionen CryptProtectData, som beskrivs i Platform SDK-dokumentationen. Om programmet krypterar autentiseringsuppgifterna måste det ange flaggan WMT_CREDENTIAL_ENCRYPT i parametern pdwFlags innan metoden returneras.
I allmänhet är det inte nödvändigt att kryptera data, eftersom läsarobjektet krypterar data om det behövs. Kryptering kan dock vara användbart om programmet behåller användarnamnet och lösenordet i minnet, eftersom det hindrar en angripare från att inspektera en minnesdump av processen.
Relaterade ämnen