hello all,
I am using the simpleSAMLphp idp to test my own SP implementation. The redirect and post singlesignon work fine. I need my sp to support artifact resolution as well.
So I followed the steps detailed here:
SimpleSAMLphp Documentation
I got the memcached extension active, ran the memcached server, I changed the store.type in config.php to memcache.
I updated the saml20-idp-hosted.php and saml20-sp-remote.php files as described in the documentation.
But when I try to access the idp metadata it throws an error:
SimpleSAML\Error\Error: METADATA
Backtrace:
1 modules\saml\src\Controller\Metadata.php:119 (SimpleSAML\Module\saml\Controller\Metadata::metadata)
0 public\saml2\idp\metadata.php:23 (N/A)
Caused by: Exception: Missing default binding for ArtifactResolutionService in saml20-idp-hosted
Backtrace:
4 src\SimpleSAML\Configuration.php:1188 (SimpleSAML\Configuration::getDefaultBinding)
3 src\SimpleSAML\Configuration.php:1245 (SimpleSAML\Configuration::getEndpoints)
2 src\SimpleSAML\Metadata\SAMLBuilder.php:561 (SimpleSAML\Metadata\SAMLBuilder::addMetadataIdP20)
1 modules\saml\src\Controller\Metadata.php:93 (SimpleSAML\Module\saml\Controller\Metadata::metadata)
0 public\saml2\idp\metadata.php:23 (N/A)
it still fails with the same error. I am not sure what I'm doing wrong here.
My saml20-idp-hosted.php for reference:
<?php
/**
* SAML 2.0 IdP configuration for SimpleSAMLphp.
*
* See: https://simplesamlphp.org/docs/stable/simplesamlphp-reference-idp-hosted
*/
$metadata['http://localhost/simplesaml/saml2/idp/metadata.php'] = [
/*
* The hostname of the server (VHOST) that will use this SAML entity.
*
* Can be '__DEFAULT__', to use this entry by default.
*/
'host' => 'localhost',
// X.509 key and certificate. Relative to the cert directory.
'privatekey' => 'idp-signing.key',
'certificate' => 'idp-signing.crt',
/*
* Authentication source to use. Must be one that is configured in
* 'config/authsources.php'.
*/
'auth' => 'example-userpass',
'saml20.sendartifact' => true,
'https.certificate' => 'jetty.crt',
/* Uncomment the following to use the uri NameFormat on attributes. */
'attributes.NameFormat' => 'urn:oasis:names:tc:SAML:2.0:attrname-format:uri',
'authproc' => [
// Convert LDAP names to oids.
100 => ['class' => 'core:AttributeMap', 'name2oid'],
],
'SingleSignOnServiceBinding' => array(
0 => 'urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Redirect',
1 => 'urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST',
),
/*
* Uncomment the following to specify the registration information in the
* exported metadata. Refer to:
* http://docs.oasis-open.org/security/saml/Post2.0/saml-metadata-rpi/v1.0/cs01/saml-metadata-rpi-v1.0-cs01.html
* for more information.
*/
/*
'RegistrationInfo' => [
'authority' => 'urn:mace:example.org',
'instant' => '2008-01-17T11:28:03Z',
'policies' => [
'en' => 'http://example.org/policy',
'es' => 'http://example.org/politica',
],
],
*/
];