2012-01-10 17 views
5

FedMetadata belgesinin imza bildirimi ve abonelik uç noktaları sağlayabildiğini görüyorum ve web.config, yayıncı URL'sini istekte oturum açma için tanımlar, ancak WIF'in oturum açma isteklerini nereye göndereceğini bilmiyorum. Kullandığım STS, oturum açma ve oturum açma istekleri için farklı son noktalar tanımlarsa, buna kodda nasıl erişebilirim veya bunu web.config dosyasında nasıl ayarlayabilirim?WIF'yi asp.net MVC 3 ile kullanarak, STS Oturumu kapatma uç noktasını nerede tanımlayabilirim?

cevap

4

Varsayılan olarak, WIF oturum açmak için kullanıldığı gibi oturum açmak için aynı STS uç noktasına yönlendirir. Farklı uç noktaya yönlendirmek için, FederatedSignOut kullanarak oturum kapatma eylemi geçersiz kılmak gerekir:

WSFederationAuthenticationModule authModule = FederatedAuthentication.WSFederationAuthenticationModule; 

string signoutEndpoint = "http://STS/yourendpoint/"; // This can be stored in your configuration app settings 
string signoutUrl = WSFederationAuthenticationModule.GetFederationPassiveSignOutUrl(signoutEndpoint, authModule.Realm, null); 

WSFederationAuthenticationModule.FederatedSignOut(new Uri(signoutUrl), new Uri(currentPage)); 

Umarım bu yardımcı olur.

+0

Bilmem gereken bu. Son noktayı yapılandırmada koymuştum, ancak yerine URL'yi alan bir WIF parametresini kaçırmadığımdan emin olmak istedim. – ryanhallcs