MalwareSourceCode/MSIL/Virus/Win32/E/Virus.Win32.Expiro.w-69bb73081eac86b8cf86f45e33515d0095855636967076e2b593d7a30cd80a07/Microsoft/InfoCards/RequestSecurityTokenForGetBrowserToken.cs
2022-08-18 06:28:56 -05:00

58 lines
2.4 KiB
C#

// Decompiled with JetBrains decompiler
// Type: Microsoft.InfoCards.RequestSecurityTokenForGetBrowserToken
// Assembly: infocard, Version=3.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
// MVID: 516D8B44-4448-4D2C-8B8E-FFBB3FFE472B
// Assembly location: C:\Users\Administrateur\Downloads\Virusshare-00000-msil\Virus.Win32.Expiro.w-69bb73081eac86b8cf86f45e33515d0095855636967076e2b593d7a30cd80a07.exe
using Microsoft.InfoCards.Diagnostics;
using System.Xml;
namespace Microsoft.InfoCards
{
internal class RequestSecurityTokenForGetBrowserToken : RequestSecurityToken
{
public RequestSecurityTokenForGetBrowserToken(RequestSecurityTokenParameters rstParams)
: base(rstParams)
{
}
protected override void WriteKeyTypeElement()
{
InfoCardTrace.Assert(this.ProtocolVersionProfile.WSTrust.KeyTypeBearer.ToString() == this.Policy.GetKeyTypeString(), "Only no proof key allowed in browser case");
this.Serializer.WriteKeyTypeElement(this.Policy.GetKeyTypeString());
}
protected override void WriteRequestTypeElement() => this.Serializer.WriteRequestTypeElement(this.ProtocolVersionProfile.WSTrust.IssueRequestType);
protected override void WriteAppliesToElement() => GetBrowserTokenRequest.WriteSourceUrlAppliesTo((XmlWriter) this.Writer, this.m_rstParams.BrowserTokenParams, this.ProtocolVersionProfile);
protected override void WriteSecondaryParametersElement()
{
if (XmlNames.WSSpecificationVersion.WSTrustOasis2007 != this.ProtocolVersionProfile.WSTrust.Version)
return;
bool flag = true;
if (this.Policy.OptionalClaims.Length > 0)
flag = this.m_rstParams.DiscloseOptionalClaims;
if (!flag)
return;
if (this.Policy.RelyingPartyPolicy != null)
this.Serializer.WriteSecondaryParametersElement(this.Policy.RelyingPartyPolicy.PolicyXml);
else
this.Serializer.WriteSecondaryParametersElement(this.Policy.ClientPolicy.PolicyXml);
}
protected override void CustomWriteBodyContents(XmlDictionaryWriter writer)
{
this.InitializeWriters(writer);
this.WriteRSTOpeningElement();
this.WriteKeyTypeElement();
this.WriteRequestTypeElement();
this.WriteAppliesToElement();
this.WriteClaimsElement();
this.WriteTokenTypeElement();
this.WriteSecondaryParametersElement();
this.WriteEndElement();
}
}
}