@@ -75,8 +75,8 @@ def builder(sp, authnsign=False, wsign=False, valid_until=None, cache_duration=N
7575
7676 sls = ''
7777 if 'singleLogoutService' in sp :
78- sls = """<md:SingleLogoutService Binding="%(binding)s"
79- Location="%(location)s" />""" % \
78+ sls = """ <md:SingleLogoutService Binding="%(binding)s"
79+ Location="%(location)s" />\n """ % \
8080 {
8181 'binding' : sp ['singleLogoutService' ]['binding' ],
8282 'location' : sp ['singleLogoutService' ]['url' ],
@@ -125,11 +125,10 @@ def builder(sp, authnsign=False, wsign=False, valid_until=None, cache_duration=N
125125 cacheDuration="%(cache)s"
126126 entityID="%(entity_id)s">
127127 <md:SPSSODescriptor AuthnRequestsSigned="%(authnsign)s" WantAssertionsSigned="%(wsign)s" protocolSupportEnumeration="urn:oasis:names:tc:SAML:2.0:protocol">
128- <md:NameIDFormat>%(name_id_format)s</md:NameIDFormat>
128+ %(sls)s <md:NameIDFormat>%(name_id_format)s</md:NameIDFormat>
129129 <md:AssertionConsumerService Binding="%(binding)s"
130130 Location="%(location)s"
131131 index="1" />
132- %(sls)s
133132 </md:SPSSODescriptor>
134133%(organization)s
135134%(contacts)s
@@ -204,10 +203,9 @@ def add_x509_key_descriptors(metadata, cert=None):
204203
205204 key_descriptor = xml .createElementNS (OneLogin_Saml2_Constants .NS_DS , 'md:KeyDescriptor' )
206205
207- entity_descriptor = sp_sso_descriptor = xml .getElementsByTagName ('md:EntityDescriptor' )[0 ]
208- entity_descriptor .setAttribute ('xmlns:ds' , OneLogin_Saml2_Constants .NS_DS )
206+ entity_descriptor = xml .getElementsByTagName ('md:EntityDescriptor' )[0 ]
209207
210- sp_sso_descriptor = xml .getElementsByTagName ('md:SPSSODescriptor' )[0 ]
208+ sp_sso_descriptor = entity_descriptor .getElementsByTagName ('md:SPSSODescriptor' )[0 ]
211209 sp_sso_descriptor .insertBefore (key_descriptor .cloneNode (True ), sp_sso_descriptor .firstChild )
212210 sp_sso_descriptor .insertBefore (key_descriptor .cloneNode (True ), sp_sso_descriptor .firstChild )
213211
@@ -220,4 +218,7 @@ def add_x509_key_descriptors(metadata, cert=None):
220218 signing .appendChild (key_info )
221219 encryption .appendChild (key_info .cloneNode (True ))
222220
221+ signing .setAttribute ('xmlns:ds' , OneLogin_Saml2_Constants .NS_DS )
222+ encryption .setAttribute ('xmlns:ds' , OneLogin_Saml2_Constants .NS_DS )
223+
223224 return xml .toxml ()
0 commit comments