Authentification ADFS avec WCF hébergé sur Windows service
J'ai un service wcf qui interroge ADFS pour jeton SAML. Il s'agit d'un extrait à partir du web pour une requête ADFS et récupérer le jeton SAML.
Cependant, il finit toujours par casser au niveau de la ligne canal de retour.Question(tvd); . L'erreur est ID3082: La demande n'est pas valide ou n'est pas pris en charge.
Au moins à un niveau élevé, je ne suis pas en mesure de déterminer si l'erreur est à la ADFS fin du serveur ou avec la voie de service WCF est configuré ou avec le code. S'il vous plaît aider.
public SecurityToken GetSamlToken()
{
using (var factory = new WSTrustChannelFactory(
new UserNameWSTrustBinding(SecurityMode.TransportWithMessageCredential),
new EndpointAddress(new Uri("https://serv/adfs/services/trust/13/usernamemixed"))))
{
factory.Credentials.UserName.UserName = "username";
factory.Credentials.UserName.Password = "password";
factory.Credentials.ServiceCertificate.Authentication.CertificateValidationMode = X509CertificateValidationMode.None;
factory.TrustVersion = TrustVersion.WSTrust13;
WSTrustChannel channel = null;
try
{
string KeyType;
var rst = new RequestSecurityToken
{
RequestType = WSTrust13Constants.RequestTypes.Issue,
AppliesTo = new EndpointAddress("net.tcp://localhost:xxxx/Service1/mex"),
KeyType = Microsoft.IdentityModel.Protocols.WSTrust.WSTrust13Constants.KeyTypes.Bearer,
};
channel = (WSTrustChannel)factory.CreateChannel();
return channel.Issue(rst);
}
finally
{
if (channel != null)
{
channel.Abort();
}
factory.Abort();
}
}
}
OriginalL'auteur simba | 2013-10-16
Vous devez vous connecter pour publier un commentaire.
Le problème était avec le
Je l'ai remplacé avec une partie utilisatrice uri et il les problèmes me le jeton. Le seul problème étant ici la confusion des messages d'erreur.
OriginalL'auteur simba
L'erreur est probablement lié à la configuration de l'ADFS point de terminaison. La suite de l'article semble donner un bon aperçu de ADFS web du service de la communication avec les étapes pour résoudre certains problèmes:
http://msinnovations.wordpress.com/2011/03/28/some-tips-on-active-federation-with-adfs-2-0/
Afin d'obtenir de plus amples informations sur (et peut-être pourquoi) l'erreur se produit, vous pouvez/devez configurer WCF de suivi/enregistrement. Le lien suivant fournit une vue d'ensemble:
http://msdn.microsoft.com/en-us/library/ms733025.aspx
Ce qui concerne,
Puisque vous avez dit précisément le ADFS point de pense que je vais accepter la vôtre comme la réponse
OriginalL'auteur Seymour