Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Federativní vzorek demonstruje federované zabezpečení.
Ukázkové podrobnosti
Windows Communication Foundation (WCF) poskytuje podporu pro nasazení federovaných architektur zabezpečení prostřednictvím nástroje wsFederationHttpBinding.
wsFederationHttpBinding poskytuje zabezpečené, spolehlivé a interoperabilní spojení, které využívá protokol HTTP jako základní přenosový mechanismus pro komunikaci požadavků a odpovědí, a Text/XML jako formát pro kódování. Další informace o federaci ve WCF naleznete v tématu Federace.
Scénář se skládá ze 4 částí:
Služba BookStore
BookStore STS
HomeRealm STS
Klient BookStore
Služba BookStore podporuje dvě operace: BrowseBooks a BuyBook. Umožňuje anonymní přístup k BrowseBooks operaci, ale vyžaduje ověřený přístup pro přístup k BuyBooks operaci. Ověřování má formu tokenu vydaného službou StS BookStore. Konfigurační soubor služby BookStore odkazuje klienty na STS BookStore pomocí wsFederationHttpBinding.
<wsFederationHttpBinding>
<!-- This is the Service binding for the BuyBooks endpoint. It redirects clients to the BookStore STS -->
<binding name='BuyBookBinding'>
<security mode="Message">
<message>
<issuerMetadata
address='http://localhost/FederationSample/BookStoreSTS/STS.svc/mex' >
<identity>
<dns value ='BookStoreSTS.com'/>
</identity>
</issuerMetadata>
</message>
</security>
</binding>
</wsFederationHttpBinding>
BookStore STS pak vyžaduje, aby se klienti ověřili pomocí tokenu vydaného homeRealm STS. Znovu konfigurační soubor pro BookStore STS odkazuje klienty na HomeRealm STS pomocí wsFederationHttpBinding.
<wsFederationHttpBinding>
<!-- This is the binding for the clients requesting tokens from this STS. It redirects clients to the HomeRealm STS -->
<binding name='BookStoreSTSBinding'>
<security mode='Message'>
<message>
<issuerMetadata
address='http://localhost/FederationSample/HomeRealmSTS/STS.svc/mex' >
<identity>
<dns value ='HomeRealmSTS.com' />
</identity>
</issuerMetadata>
</message>
</security>
</binding>
</wsFederationHttpBinding>
Posloupnost událostí při přístupu k BuyBook operaci je následující:
Klient se ověří ve službě HomeRealm STS pomocí přihlašovacích údajů systému Windows.
HomeRealm STS vydává token, který lze použít k ověření ve službě BookStore STS.
Klient se ověří ve službě BookStore STS pomocí tokenu vydaného homeRealm STS.
Služba STS BookStore vydává token, který lze použít k ověření ve službě BookStore.
Klient se ověří ve službě BookStore pomocí tokenu vydaného službou BookStore STS.
Klient přistupuje k
BuyBookoperaci.
Projděte si následující pokyny k nastavení a spuštění této ukázky.
Poznámka:
Ke spuštění této ukázky musíte mít oprávnění k zápisu do adresáře wwwroot .
Jak nastavit, sestavit a spustit ukázku
Otevřete příkazové okno sady SDK. V ukázkové cestě spusťte Setup.bat. Tím se vytvoří virtuální adresáře požadované pro ukázku a nainstalují požadované certifikáty s příslušnými oprávněními.
Poznámka:
Dávkový soubor Setup.bat je navržený tak, aby běžel z příkazového řádku sady Windows SDK. Vyžaduje, aby proměnná prostředí MSSDK odkazovala na adresář, ve kterém je sada SDK nainstalovaná. Tato proměnná prostředí se automaticky nastaví v příkazovém řádku prostředí Windows SDK. V systému Windows Vista je nutné zajistit, aby byla nainstalována kompatibilita správy služby IIS 6.0, protože nastavení používá skripty správce služby IIS. Spuštění instalačního skriptu v systému Windows Vista vyžaduje oprávnění správce.
Otevřete FederationSample.sln v sadě Visual Studio a v nabídce Sestavení vyberte Sestavit řešení. Tím se sestaví běžné soubory projektu, služba Bookstore, Bookstore STS, HomeRealm STS a nasadí je ve službě IIS. Tím se také sestaví klientská aplikace knihkupectví a umístí spustitelný soubor BookStoreClient.exe do složky FederationSample\BookStoreClient\bin\Debug.
Poklikejte na BookStoreClient.exe. Zobrazí se okno BookStoreClient.
Knihy dostupné v knihkupectví můžete procházet kliknutím na Procházet knihy.
Pokud chcete koupit určitou knihu, vyberte knihu v seznamu a klikněte na Koupit knihu. Aplikace se spustí a ověří pomocí ověřování systému Windows ve službě tokenů zabezpečení HomeRealm.
Ukázka je nakonfigurovaná tak, aby uživatelům umožňovala nakupovat knihy, které stojí 15 usd nebo méně. Při pokusu o zakoupení knih, které stojí více než 15 USD, se klientovi zobrazí zpráva o odepření přístupu ze služby Knihkupectví.
Poznámka:
Ukázka neaktualizuje limit kreditu uživatele po nákupu. Knihy můžete opakovaně nakupovat v rámci (pevného) limitu kreditu uživatele.
Vyčistit
Spusťte Cleanup.bat. Tím se odstraní virtuální adresáře vytvořené během nastavování a odeberou se také certifikáty nainstalované během instalace.