9
XMLファイルからSAMLトークンをロードしています。SAMLトークンからSAML属性を読み取る
string certificatePath = @"D:\Projects\SAMLDemo\Server.pfx";
X509Certificate2 cert = new X509Certificate2(certificatePath, "shani");
string samlFilePath = @"D:\Projects\SAMLDemo\saml.xml";
XmlReader reader = XmlReader.Create(samlFilePath);
List<SecurityToken> tokens = new List<SecurityToken>();
tokens.Add(new X509SecurityToken(cert));
SecurityTokenResolver outOfBandTokenResolver = SecurityTokenResolver.CreateDefaultSecurityTokenResolver(new ReadOnlyCollection<SecurityToken>(tokens), true);
SecurityToken securityToken = WSSecurityTokenSerializer.DefaultInstance.ReadToken(reader, outOfBandTokenResolver);
SamlSecurityToken deserializedSaml = securityToken as SamlSecurityToken;
deserializedSamlからSAML属性を読み取るにはどうすればよいですか?
属性の文字列値が必要です。
本当に "C#"をタグに入れているので、件名に "C#"を入れる必要はありません。 –
はこのSAML 1または2ですか? 'System.IdentityModel'クラスのドキュメントはSAML 1.1ではなく2を指しているようです。 – Rory
ああ、今はnet 4.5に' Saml2XXX'のようなクラスがあります。 'Saml2Assertion' http://msdn.microsoft.com/en-us/library/microsoft.identitymodel.tokens.saml2.saml2assertion.aspx – Rory