@@ -98,6 +98,13 @@ has 'cert' => (isa => 'Str', is => 'ro', required => 1);
9898has ' key' => (isa => ' Str' , is => ' ro' , required => 1);
9999has ' cacert' => (isa => ' Maybe[Str]' , is => ' ro' , required => 1);
100100
101+ has ' error_url' => (isa => ' Str' , is => ' ro' , required => 1);
102+ has ' slo_url_soap' => (isa => ' Str' , is => ' ro' , required => 1);
103+ has ' slo_url_redirect' => (isa => ' Str' , is => ' ro' , required => 1);
104+ has ' slo_url_post' => (isa => ' Str' , is => ' ro' , required => 1);
105+ has ' acs_url_post' => (isa => ' Str' , is => ' ro' , required => 1);
106+ has ' acs_url_artifact' => (isa => ' Str' , is => ' ro' , required => 1);
107+
101108has ' org_name' => (isa => ' Str' , is => ' ro' , required => 1);
102109has ' org_display_name' => (isa => ' Str' , is => ' ro' , required => 1);
103110has ' org_contact' => (isa => ' Str' , is => ' ro' , required => 1);
@@ -316,7 +323,7 @@ sub metadata {
316323 $md ,
317324 { AuthnRequestsSigned => defined ($self -> authnreq_signed) ? $self -> authnreq_signed : ' 1' ,
318325 WantAssertionsSigned => defined ($self -> want_assertions_signed) ? $self -> want_assertions_signed : ' 1' ,
319- errorURL => $self -> url . ' /saml/error ' ,
326+ errorURL => $self -> url . $self -> error_url ,
320327 protocolSupportEnumeration => ' urn:oasis:names:tc:SAML:2.0:protocol' },
321328 $x -> KeyDescriptor(
322329 $md ,
@@ -336,29 +343,29 @@ sub metadata {
336343 $x -> SingleLogoutService(
337344 $md ,
338345 { Binding => ' urn:oasis:names:tc:SAML:2.0:bindings:SOAP' ,
339- Location => $self -> url . ' /saml/slo-soap ' },
346+ Location => $self -> url . $self -> slo_url_soap },
340347 ),
341348 $x -> SingleLogoutService(
342349 $md ,
343350 { Binding => ' urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Redirect' ,
344- Location => $self -> url . ' /saml/sls-redirect-response ' },
351+ Location => $self -> url . $self -> slo_url_redirect },
345352 ),
346353 $x -> SingleLogoutService(
347354 $md ,
348355 { Binding => ' urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST' ,
349- Location => $self -> url . ' /saml/sls-post-response ' },
356+ Location => $self -> url . $self -> slo_url_post },
350357 ),
351358 $x -> AssertionConsumerService(
352359 $md ,
353360 { Binding => ' urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST' ,
354- Location => $self -> url . ' /saml/consumer-post ' ,
361+ Location => $self -> url . $self -> acs_url_post ,
355362 index => ' 1' ,
356363 isDefault => ' true' },
357364 ),
358365 $x -> AssertionConsumerService(
359366 $md ,
360367 { Binding => ' urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Artifact' ,
361- Location => $self -> url . ' /saml/consumer-artifact ' ,
368+ Location => $self -> url . $self -> acs_url_artifact ,
362369 index => ' 2' ,
363370 isDefault => ' false' },
364371 ),
0 commit comments