/** * @param SSODescriptor $ssoDescriptor * @param EntityDescriptor $entityDescriptor * @param array $result */ protected function handleDescriptor(SSODescriptor $ssoDescriptor, EntityDescriptor $entityDescriptor, array &$result) { foreach ($ssoDescriptor->getAllKeyDescriptors() as $keyDescriptor) { $credential = (new X509Credential($keyDescriptor->getCertificate()))->setEntityId($entityDescriptor->getEntityID())->addKeyName($keyDescriptor->getCertificate()->getName())->setCredentialContext(new CredentialContextSet(array(new MetadataCredentialContext($keyDescriptor, $ssoDescriptor, $entityDescriptor))))->setUsageType($keyDescriptor->getUse()); $result[] = $credential; } }