saml

package
v0.3.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 12, 2024 License: Apache-2.0 Imports: 3 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type ActionType

type ActionType struct {
	XMLName   xml.Name `xml:"urn:oasis:names:tc:SAML:2.0:assertion Action"`
	Namespace string   `xml:"Namespace,attr"`
	Text      string   `xml:",chardata"`
}

type AdviceType

type AdviceType struct {
	XMLName            xml.Name               `xml:"urn:oasis:names:tc:SAML:2.0:assertion Advice"`
	AssertionIDRef     []string               `xml:"AssertionIDRef"`
	AssertionURIRef    []string               `xml:"AssertionURIRef"`
	Assertion          []AssertionType        `xml:"Assertion"`
	EncryptedAssertion []EncryptedElementType `xml:"urn:oasis:names:tc:SAML:2.0:assertion EncryptedAssertion"`
}

type AssertionType

type AssertionType struct {
	XMLName                xml.Name                     `xml:"urn:oasis:names:tc:SAML:2.0:assertion Assertion"`
	Version                string                       `xml:"Version,attr"`
	Id                     string                       `xml:"ID,attr"`
	IssueInstant           string                       `xml:"IssueInstant,attr"`
	Issuer                 NameIDType                   `xml:"urn:oasis:names:tc:SAML:2.0:assertion Issuer"`
	Signature              *xml_dsig.SignatureType      `xml:"Signature"`
	Subject                *SubjectType                 `xml:"Subject"`
	Conditions             *ConditionsType              `xml:"Conditions"`
	Advice                 *AdviceType                  `xml:"Advice"`
	Statement              []StatementAbstractType      `xml:"urn:oasis:names:tc:SAML:2.0:assertion Statement"`
	AuthnStatement         []AuthnStatementType         `xml:"AuthnStatement"`
	AuthzDecisionStatement []AuthzDecisionStatementType `xml:"AuthzDecisionStatement"`
	AttributeStatement     []AttributeStatementType     `xml:"AttributeStatement"`
}

type AttributeStatementType

type AttributeStatementType struct {
	XMLName   xml.Name         `xml:"urn:oasis:names:tc:SAML:2.0:assertion AttributeStatement"`
	Attribute []*AttributeType `xml:"Attribute"`
}

type AttributeType

type AttributeType struct {
	XMLName        xml.Name `xml:"urn:oasis:names:tc:SAML:2.0:assertion Attribute"`
	Name           string   `xml:"Name,attr"`
	NameFormat     string   `xml:"NameFormat,attr,omitempty"`
	FriendlyName   string   `xml:"FriendlyName,attr,omitempty"`
	AttributeValue []string `xml:",any"`
}

type AudienceRestrictionType

type AudienceRestrictionType struct {
	XMLName  xml.Name `xml:"urn:oasis:names:tc:SAML:2.0:assertion AudienceRestriction"`
	Audience []string `xml:",any"`
}

type AuthnContextType

type AuthnContextType struct {
	XMLName                 xml.Name `xml:"urn:oasis:names:tc:SAML:2.0:assertion AuthnContext"`
	AuthenticatingAuthority []string `xml:"urn:oasis:names:tc:SAML:2.0:assertion AuthenticatingAuthority"`
	AuthnContextClassRef    string   `xml:"urn:oasis:names:tc:SAML:2.0:assertion AuthnContextClassRef,omitempty"`
	AuthnContextDecl        string   `xml:"urn:oasis:names:tc:SAML:2.0:assertion AuthnContextDecl,omitempty"`
	AuthnContextDeclRef     string   `xml:"urn:oasis:names:tc:SAML:2.0:assertion AuthnContextDeclRef,omitempty"`
}

type AuthnStatementType

type AuthnStatementType struct {
	XMLName             xml.Name             `xml:"urn:oasis:names:tc:SAML:2.0:assertion AuthnStatement"`
	AuthnInstant        string               `xml:"AuthnInstant,attr"`
	SessionIndex        string               `xml:"SessionIndex,attr,omitempty"`
	SessionNotOnOrAfter string               `xml:"SessionNotOnOrAfter,attr,omitempty"`
	SubjectLocality     *SubjectLocalityType `xml:"SubjectLocality"`
	AuthnContext        AuthnContextType     `xml:"AuthnContext"`
}

type AuthzDecisionStatementType

type AuthzDecisionStatementType struct {
	XMLName  xml.Name      `xml:"urn:oasis:names:tc:SAML:2.0:assertion AuthzDecisionStatement"`
	Resource string        `xml:"Resource,attr"`
	Decision DecisionType  `xml:"Decision,attr"`
	Action   []ActionType  `xml:"Action"`
	Evidence *EvidenceType `xml:"Evidence"`
}

type BaseIDAbstractType

type BaseIDAbstractType struct {
	XMLName  xml.Name `xml:"urn:oasis:names:tc:SAML:2.0:assertion BaseID"`
	InnerXml string   `xml:",innerxml"`
}

type ConditionAbstractType

type ConditionAbstractType struct {
	XMLName xml.Name
}

type ConditionsType

type ConditionsType struct {
	XMLName             xml.Name                  `xml:"urn:oasis:names:tc:SAML:2.0:assertion Conditions"`
	NotBefore           string                    `xml:"NotBefore,attr,omitempty"`
	NotOnOrAfter        string                    `xml:"NotOnOrAfter,attr,omitempty"`
	Condition           []ConditionAbstractType   `xml:"urn:oasis:names:tc:SAML:2.0:assertion Condition"`
	AudienceRestriction []AudienceRestrictionType `xml:"AudienceRestriction"`
	OneTimeUse          []OneTimeUseType          `xml:"OneTimeUse"`
	ProxyRestriction    []ProxyRestrictionType    `xml:"ProxyRestriction"`
}

type DecisionType

type DecisionType string
const DecisionTypeDeny DecisionType = "Deny"
const DecisionTypeIndeterminate DecisionType = "Indeterminate"
const DecisionTypePermit DecisionType = "Permit"

type EncryptedElementType

type EncryptedElementType struct {
	XMLName       xml.Name
	EncryptedData xenc.EncryptedDataType  `xml:"EncryptedData"`
	EncryptedKey  []xenc.EncryptedKeyType `xml:"EncryptedKey"`
}

type EvidenceType

type EvidenceType struct {
	XMLName            xml.Name               `xml:"urn:oasis:names:tc:SAML:2.0:assertion Evidence"`
	AssertionIDRef     []string               `xml:"AssertionIDRef"`
	AssertionURIRef    []string               `xml:"AssertionURIRef"`
	Assertion          []AssertionType        `xml:"Assertion"`
	EncryptedAssertion []EncryptedElementType `xml:"urn:oasis:names:tc:SAML:2.0:assertion EncryptedAssertion"`
}

type KeyInfoConfirmationDataType

type KeyInfoConfirmationDataType struct {
	XMLName      xml.Name `xml:"urn:oasis:names:tc:SAML:2.0:assertion KeyInfoConfirmationData"`
	NotBefore    string   `xml:"NotBefore,attr,omitempty"`
	NotOnOrAfter string   `xml:"NotOnOrAfter,attr,omitempty"`
	Recipient    string   `xml:"Recipient,attr,omitempty"`
	InResponseTo string   `xml:"InResponseTo,attr,omitempty"`
	Address      string   `xml:"Address,attr,omitempty"`
}

type NameIDType

type NameIDType struct {
	XMLName         xml.Name
	Format          string `xml:"Format,attr,omitempty"`
	SPProvidedID    string `xml:"SPProvidedID,attr,omitempty"`
	NameQualifier   string `xml:"NameQualifier,attr,omitempty"`
	SPNameQualifier string `xml:"SPNameQualifier,attr,omitempty"`
	Text            string `xml:",chardata"`
}

type OneTimeUseType

type OneTimeUseType struct {
	XMLName xml.Name `xml:"urn:oasis:names:tc:SAML:2.0:assertion OneTimeUse"`
}

type ProxyRestrictionType

type ProxyRestrictionType struct {
	XMLName  xml.Name `xml:"urn:oasis:names:tc:SAML:2.0:assertion ProxyRestriction"`
	Count    int      `xml:"Count,attr,omitempty"`
	Audience []string `xml:",any"`
}

type StatementAbstractType

type StatementAbstractType struct {
	XMLName xml.Name
}

type SubjectConfirmationDataType

type SubjectConfirmationDataType struct {
	XMLName      xml.Name `xml:"urn:oasis:names:tc:SAML:2.0:assertion SubjectConfirmationData"`
	NotOnOrAfter string   `xml:"NotOnOrAfter,attr,omitempty"`
	Recipient    string   `xml:"Recipient,attr,omitempty"`
	InResponseTo string   `xml:"InResponseTo,attr,omitempty"`
	Address      string   `xml:"Address,attr,omitempty"`
}

type SubjectConfirmationType

type SubjectConfirmationType struct {
	XMLName                 xml.Name                     `xml:"urn:oasis:names:tc:SAML:2.0:assertion SubjectConfirmation"`
	Method                  string                       `xml:"Method,attr"`
	SubjectConfirmationData *SubjectConfirmationDataType `xml:"SubjectConfirmationData"`
	BaseID                  *BaseIDAbstractType          `xml:"BaseID"`
	NameID                  *NameIDType                  `xml:"urn:oasis:names:tc:SAML:2.0:assertion NameID"`
	EncryptedID             *EncryptedElementType        `xml:"urn:oasis:names:tc:SAML:2.0:assertion EncryptedID"`
}

type SubjectLocalityType

type SubjectLocalityType struct {
	XMLName xml.Name `xml:"urn:oasis:names:tc:SAML:2.0:assertion SubjectLocality"`
	Address string   `xml:"Address,attr,omitempty"`
	DNSName string   `xml:"DNSName,attr,omitempty"`
}

type SubjectType

type SubjectType struct {
	XMLName             xml.Name                  `xml:"urn:oasis:names:tc:SAML:2.0:assertion Subject"`
	BaseID              *BaseIDAbstractType       `xml:"BaseID"`
	NameID              *NameIDType               `xml:"urn:oasis:names:tc:SAML:2.0:assertion NameID"`
	EncryptedID         *EncryptedElementType     `xml:"urn:oasis:names:tc:SAML:2.0:assertion EncryptedID"`
	SubjectConfirmation []SubjectConfirmationType `xml:"SubjectConfirmation"`
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL