diff --git a/src/Saml2/AuthnRequest.php b/src/Saml2/AuthnRequest.php
index c8ebc2f..585c9a5 100644
--- a/src/Saml2/AuthnRequest.php
+++ b/src/Saml2/AuthnRequest.php
@@ -82,8 +82,7 @@ SUBJECT;
$nameIdPolicyStr = <<
+ Format="{$nameIDPolicyFormat}" />
NAMEIDPOLICY;
}
@@ -151,12 +150,19 @@ REQUESTEDAUTHN;
xmlns:saml="urn:oasis:names:tc:SAML:2.0:assertion"
ID="$id"
Version="2.0"
-{$providerNameStr}{$forceAuthnStr}{$isPassiveStr}
+{$forceAuthnStr}{$isPassiveStr}
IssueInstant="$issueInstant"
- Destination="{$idpData['singleSignOnService']['url']}"
+ Destination="{$idpData['entityId']}"
ProtocolBinding="{$spData['assertionConsumerService']['binding']}"
- AssertionConsumerServiceURL="{$acsUrl}">
- {$spEntityId}{$subjectStr}{$nameIdPolicyStr}{$requestedAuthnStr}
+ AssertionConsumerServiceURL="{$acsUrl}"
+ AttributeConsumingServiceIndex="0">
+
+ {$spEntityId}
+
+{$nameIdPolicyStr}
+{$requestedAuthnStr}
AUTHNREQUEST;
diff --git a/src/Saml2/LogoutRequest.php b/src/Saml2/LogoutRequest.php
index 4cd7efb..37a3ff7 100644
--- a/src/Saml2/LogoutRequest.php
+++ b/src/Saml2/LogoutRequest.php
@@ -135,8 +135,12 @@ class LogoutRequest
ID="{$id}"
Version="2.0"
IssueInstant="{$issueInstant}"
- Destination="{$idpData['singleLogoutService']['url']}">
- {$spEntityId}
+ Destination="{$idpData['entityId']}">
+
+ {$spEntityId}
+
{$nameIdObj}
{$sessionIndexStr}
diff --git a/src/Saml2/Metadata.php b/src/Saml2/Metadata.php
index 922ad60..d00b705 100644
--- a/src/Saml2/Metadata.php
+++ b/src/Saml2/Metadata.php
@@ -163,7 +163,7 @@ ATTRIBUTEVALUE;
$requestedAttributeStr = implode(PHP_EOL, $requestedAttributeData);
$strAttributeConsumingService = <<
+
{$sp['attributeConsumingService']['serviceName']}
{$attrCsDesc}{$requestedAttributeStr}
@@ -175,14 +175,13 @@ METADATA_TEMPLATE;
$metadata = <<
{$sls} {$sp['NameIDFormat']}
+ isDefault="true"
+ index="0" />
{$strAttributeConsumingService}
{$strOrganization}{$strContacts}