ILIAS  release_5-3 Revision v5.3.23-19-g915713cf615
SAML2\XML\md\IDPSSODescriptor Class Reference
+ Inheritance diagram for SAML2\XML\md\IDPSSODescriptor:
+ Collaboration diagram for SAML2\XML\md\IDPSSODescriptor:

Public Member Functions

 __construct (\DOMElement $xml=null)
 Initialize an IDPSSODescriptor. More...
 
 toXML (\DOMElement $parent)
 Add this IDPSSODescriptor to an EntityDescriptor. More...
 
- Public Member Functions inherited from SAML2\SignedElementHelper
 addValidator ($function, $data)
 Add a method for validating this element. More...
 
 validate (XMLSecurityKey $key)
 Validate this element against a public key. More...
 
 getSignatureKey ()
 Retrieve the private key we should use to sign the message. More...
 
 setSignatureKey (XMLSecurityKey $signatureKey=null)
 Set the private key we should use to sign the message. More...
 
 setCertificates (array $certificates)
 Set the certificates that should be included in the message. More...
 
 getCertificates ()
 Retrieve the certificates that are included in the message. More...
 
 getValidatingCertificates ()
 Retrieve certificates that sign this element. More...
 

Data Fields

 $WantAuthnRequestsSigned = null
 
 $SingleSignOnService = array()
 
 $NameIDMappingService = array()
 
 $AssertionIDRequestService = array()
 
 $AttributeProfile = array()
 
 $Attribute = array()
 
- Data Fields inherited from SAML2\XML\md\SSODescriptorType
 $ArtifactResolutionService = array()
 
 $SingleLogoutService = array()
 
 $ManageNameIDService = array()
 
 $NameIDFormat = array()
 
- Data Fields inherited from SAML2\XML\md\RoleDescriptor
 $ID
 
 $validUntil
 
 $cacheDuration
 
 $protocolSupportEnumeration = array()
 
 $errorURL
 
 $Extensions = array()
 
 $KeyDescriptor = array()
 
 $Organization = null
 
 $ContactPerson = array()
 

Additional Inherited Members

- Protected Member Functions inherited from SAML2\XML\md\SSODescriptorType
 __construct ($elementName, \DOMElement $xml=null)
 Initialize a SSODescriptor. More...
 
 toXML (\DOMElement $parent)
 Add this SSODescriptorType to an EntityDescriptor. More...
 
- Protected Member Functions inherited from SAML2\XML\md\RoleDescriptor
 __construct ($elementName, \DOMElement $xml=null)
 Initialize a RoleDescriptor. More...
 
 toXML (\DOMElement $parent)
 Add this RoleDescriptor to an EntityDescriptor. More...
 
- Protected Member Functions inherited from SAML2\SignedElementHelper
 __construct (\DOMElement $xml=null)
 Initialize the helper class. More...
 
 signElement (\DOMElement $root, \DOMElement $insertBefore=null)
 Sign the given XML element. More...
 

Detailed Description

Definition at line 14 of file IDPSSODescriptor.php.

Constructor & Destructor Documentation

◆ __construct()

SAML2\XML\md\IDPSSODescriptor::__construct ( \DOMElement  $xml = null)

Initialize an IDPSSODescriptor.

Parameters
\DOMElement | null$xmlThe XML element we should load.

Definition at line 73 of file IDPSSODescriptor.php.

References $xml, SAML2\Utils\extractStrings(), SAML2\Constants\NS_MD, SAML2\Utils\parseBoolean(), and SAML2\Utils\xpQuery().

74  {
75  parent::__construct('md:IDPSSODescriptor', $xml);
76 
77  if ($xml === null) {
78  return;
79  }
80 
81  $this->WantAuthnRequestsSigned = Utils::parseBoolean($xml, 'WantAuthnRequestsSigned', null);
82 
83  foreach (Utils::xpQuery($xml, './saml_metadata:SingleSignOnService') as $ep) {
84  $this->SingleSignOnService[] = new EndpointType($ep);
85  }
86 
87  foreach (Utils::xpQuery($xml, './saml_metadata:NameIDMappingService') as $ep) {
88  $this->NameIDMappingService[] = new EndpointType($ep);
89  }
90 
91  foreach (Utils::xpQuery($xml, './saml_metadata:AssertionIDRequestService') as $ep) {
92  $this->AssertionIDRequestService[] = new EndpointType($ep);
93  }
94 
95  $this->AttributeProfile = Utils::extractStrings($xml, Constants::NS_MD, 'AttributeProfile');
96 
97  foreach (Utils::xpQuery($xml, './saml_assertion:Attribute') as $a) {
98  $this->Attribute[] = new Attribute($a);
99  }
100  }
static extractStrings(\DOMElement $parent, $namespaceURI, $localName)
Extract strings from a set of nodes.
Definition: Utils.php:610
$xml
Definition: metadata.php:240
static parseBoolean(\DOMElement $node, $attributeName, $default=null)
Parse a boolean attribute.
Definition: Utils.php:276
const NS_MD
The namespace for the SAML 2 metadata.
Definition: Constants.php:225
static xpQuery(\DOMNode $node, $query)
Do an XPath query on an XML node.
Definition: Utils.php:191
+ Here is the call graph for this function:

Member Function Documentation

◆ toXML()

SAML2\XML\md\IDPSSODescriptor::toXML ( \DOMElement  $parent)

Add this IDPSSODescriptor to an EntityDescriptor.

Parameters
\DOMElement$parentThe EntityDescriptor we should append this IDPSSODescriptor to.
Returns

Definition at line 108 of file IDPSSODescriptor.php.

References SAML2\Utils\addStrings(), and SAML2\Constants\NS_MD.

109  {
110  assert(is_null($this->WantAuthnRequestsSigned) || is_bool($this->WantAuthnRequestsSigned));
111  assert(is_array($this->SingleSignOnService));
112  assert(is_array($this->NameIDMappingService));
113  assert(is_array($this->AssertionIDRequestService));
114  assert(is_array($this->AttributeProfile));
115  assert(is_array($this->Attribute));
116 
117  $e = parent::toXML($parent);
118 
119  if ($this->WantAuthnRequestsSigned === true) {
120  $e->setAttribute('WantAuthnRequestsSigned', 'true');
121  } elseif ($this->WantAuthnRequestsSigned === false) {
122  $e->setAttribute('WantAuthnRequestsSigned', 'false');
123  }
124 
125  foreach ($this->SingleSignOnService as $ep) {
126  $ep->toXML($e, 'md:SingleSignOnService');
127  }
128 
129  foreach ($this->NameIDMappingService as $ep) {
130  $ep->toXML($e, 'md:NameIDMappingService');
131  }
132 
133  foreach ($this->AssertionIDRequestService as $ep) {
134  $ep->toXML($e, 'md:AssertionIDRequestService');
135  }
136 
137  Utils::addStrings($e, Constants::NS_MD, 'md:AttributeProfile', false, $this->AttributeProfile);
138 
139  foreach ($this->Attribute as $a) {
140  $a->toXML($e);
141  }
142 
143  return $e;
144  }
static addStrings(\DOMElement $parent, $namespace, $name, $localized, array $values)
Append string elements.
Definition: Utils.php:659
const NS_MD
The namespace for the SAML 2 metadata.
Definition: Constants.php:225
+ Here is the call graph for this function:

Field Documentation

◆ $AssertionIDRequestService

SAML2\XML\md\IDPSSODescriptor::$AssertionIDRequestService = array()

Definition at line 48 of file IDPSSODescriptor.php.

◆ $Attribute

SAML2\XML\md\IDPSSODescriptor::$Attribute = array()

Definition at line 66 of file IDPSSODescriptor.php.

◆ $AttributeProfile

SAML2\XML\md\IDPSSODescriptor::$AttributeProfile = array()

Definition at line 57 of file IDPSSODescriptor.php.

◆ $NameIDMappingService

SAML2\XML\md\IDPSSODescriptor::$NameIDMappingService = array()

Definition at line 39 of file IDPSSODescriptor.php.

◆ $SingleSignOnService

SAML2\XML\md\IDPSSODescriptor::$SingleSignOnService = array()

Definition at line 30 of file IDPSSODescriptor.php.

◆ $WantAuthnRequestsSigned

SAML2\XML\md\IDPSSODescriptor::$WantAuthnRequestsSigned = null

Definition at line 21 of file IDPSSODescriptor.php.


The documentation for this class was generated from the following file: