Hi,
Hopefully someone might be able to help/answer this,
We currently have simplesamlphp configured with our ADFS server set up as an IDP with automated metadata updating.
We have configured it to use an array of certificates to validate the incoming metadata when it updates, but when ADFS performs it's certificate renewal the automated metadata update no longer works, we have to renew the certificates, even though one of them is still valid. It seems like it only checks the primary certificate and not the secondary certificate that has just been rolled over.
current.crt and rollover.crt are in the correct folder and being read as it's working when the certificates are updated, however it seems harder to test the rollover.crt as this seems optional? Removing the current.crt to test will generate an error that current.crt is missing and required, however removing rollover.crt will cause no problems at all. Removing current.crt from the config will end up with the same issue as had before updating the certificates, in that the update fails to verify against the certificate. So it does seem like the secondary cert can't verify the metadata?
I've tried to update to 1.19.1 but I'm still getting the same issue.
Is this an issue with how ADFS presents the rolled over cert? Do we have a config issue? Or is something else going on here? Any help would be appriciated,
Thanks!
our config is here:
$config = array(
'sets' => array(
'colchsfc' => array(
'cron' => array('hourly'),
'sources' => array(
array(
'src' => 'https://<ADFSURL>/FederationMetadata/2007-06/FederationMetadata.xml',
'certificates' => array(
'current.crt',
'rollover.crt',
),
'template' => array(
'tags' => array('colchsfc'),
'authproc' => array(
51 => array('class' => 'core:AttributeMap', 'oid2name'),
),
),
'types' => array('saml20-idp-remote'),
),
),
'expireAfter' => 60 * 60 * 24 * 4, // Maximum 4 days cache time
'outputDir' => 'metadata/metarefresh-colchsfc/',
'outputFormat' => 'flatfile',
'types' => array('saml20-idp-remote'),
),
),
);