Example #1
0
 /**
  * Add data parsed from extensions to metadata.
  *
  * @param array &$metadata The metadata that should be updated.
  * @param array $roleDescriptor The parsed role descriptor.
  */
 private function addExtensions(array &$metadata, array $roleDescriptor)
 {
     assert('array_key_exists("scope", $roleDescriptor)');
     assert('array_key_exists("tags", $roleDescriptor)');
     $scopes = array_merge($this->scopes, array_diff($roleDescriptor['scope'], $this->scopes));
     if (!empty($scopes)) {
         $metadata['scope'] = $scopes;
     }
     $tags = array_merge($this->tags, array_diff($roleDescriptor['tags'], $this->tags));
     if (!empty($tags)) {
         $metadata['tags'] = $tags;
     }
     if (!empty($this->entityAttributes)) {
         $metadata['EntityAttributes'] = $this->entityAttributes;
         // check for entity categories
         if (SimpleSAML\Utils\Config\Metadata::isHiddenFromDiscovery($metadata)) {
             $metadata['hide.from.discovery'] = true;
         }
     }
     if (!empty($roleDescriptor['UIInfo'])) {
         $metadata['UIInfo'] = $roleDescriptor['UIInfo'];
     }
     if (!empty($roleDescriptor['DiscoHints'])) {
         $metadata['DiscoHints'] = $roleDescriptor['DiscoHints'];
     }
 }
Example #2
0
 $metaArray['NameIDFormat'] = $idpmeta->getString('NameIDFormat', 'urn:oasis:names:tc:SAML:2.0:nameid-format:transient');
 if ($idpmeta->hasValue('OrganizationName')) {
     $metaArray['OrganizationName'] = $idpmeta->getLocalizedString('OrganizationName');
     $metaArray['OrganizationDisplayName'] = $idpmeta->getLocalizedString('OrganizationDisplayName', $metaArray['OrganizationName']);
     if (!$idpmeta->hasValue('OrganizationURL')) {
         throw new SimpleSAML_Error_Exception('If OrganizationName is set, OrganizationURL must also be set.');
     }
     $metaArray['OrganizationURL'] = $idpmeta->getLocalizedString('OrganizationURL');
 }
 if ($idpmeta->hasValue('scope')) {
     $metaArray['scope'] = $idpmeta->getArray('scope');
 }
 if ($idpmeta->hasValue('EntityAttributes')) {
     $metaArray['EntityAttributes'] = $idpmeta->getArray('EntityAttributes');
     // check for entity categories
     if (SimpleSAML\Utils\Config\Metadata::isHiddenFromDiscovery($metaArray)) {
         $metaArray['hide.from.discovery'] = true;
     }
 }
 if ($idpmeta->hasValue('UIInfo')) {
     $metaArray['UIInfo'] = $idpmeta->getArray('UIInfo');
 }
 if ($idpmeta->hasValue('DiscoHints')) {
     $metaArray['DiscoHints'] = $idpmeta->getArray('DiscoHints');
 }
 if ($idpmeta->hasValue('RegistrationInfo')) {
     $metaArray['RegistrationInfo'] = $idpmeta->getArray('RegistrationInfo');
 }
 if ($idpmeta->hasValue('validate.authnrequest')) {
     $metaArray['sign.authnrequest'] = $idpmeta->getBoolean('validate.authnrequest');
 }