blob: 94e384773ce6deb61e91b4fdb84552d01670a2bd (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
|
<?xml version="1.0"?>
<xsl:stylesheet version="1.0"
xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:ds="http://www.w3.org/2000/09/xmldsig#"
xmlns:exsl="http://exslt.org/common"
xmlns:mdrpi="urn:oasis:names:tc:SAML:metadata:rpi"
extension-element-prefixes="exsl"
xmlns:shibmd="urn:mace:shibboleth:metadata:1.0">
<xsl:output method="xml" indent="yes" encoding="UTF-8"/>
<xsl:template match="/md:EntitiesDescriptor">
<xsl:comment>
IMPORTANT NOTICE: READ CAREFULLY
You are reading this because You wish to use the technical information (the “Metadata”)
published on behalf of the Registrars. These Terms of Access and Use (these “Terms”) govern
the use of the Metadata. By accessing or using the Metadata You accept that the access and
use will be on and subject to these Terms. These Terms will be binding and enforceable on
You as contractual obligations.
The Terms is available at
- http://md.swamid.se/md/swamid-tou-sv.txt Swedish version - Legally Binding!
- http://md.swamid.se/md/swamid-tou-en.txt English version - Non-normative translation
If You do not accept these Terms, then You must not continue to use this Metadata.
</xsl:comment>
<md:EntitiesDescriptor>
<xsl:attribute name="Name"><xsl:value-of select="@Name"/></xsl:attribute>
<xsl:if test="@cacheDuration">
<xsl:attribute name="cacheDuration"><xsl:value-of select="@cacheDuration"/></xsl:attribute>
</xsl:if>
<xsl:if test="@validUntil">
<xsl:attribute name="validUntil"><xsl:value-of select="$date"/></xsl:attribute>
</xsl:if>
<ds:Signature>
<ds:SignedInfo>
<ds:CanonicalizationMethod Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315" />
<ds:SignatureMethod Algorithm="http://www.w3.org/2000/09/xmldsig#rsa-sha1" />
<ds:Reference URI="">
<ds:Transforms>
<ds:Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature"/>
<ds:Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#WithComments"/>
</ds:Transforms>
<ds:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1" />
<ds:DigestValue></ds:DigestValue>
</ds:Reference>
</ds:SignedInfo>
<ds:SignatureValue/>
<ds:KeyInfo>
<ds:X509Data>
</ds:X509Data>
</ds:KeyInfo>
</ds:Signature>
<xsl:apply-templates/>
</md:EntitiesDescriptor>
</xsl:template>
<xsl:template match="md:EntityDescriptor">
<xsl:variable name="path"><xsl:value-of select="substring-after(@entityID,'://')"/></xsl:variable>
<xsl:variable name="host">
<xsl:if test="contains($path,'/')">
<xsl:value-of select="substring-before($path,'/')"/>
</xsl:if>
<xsl:if test="not(contains($path,'/'))">
<xsl:value-of select="$path"/>
</xsl:if>
</xsl:variable>
<xsl:variable name="domain">
<xsl:value-of select="substring-after($host,'.')"/>
</xsl:variable>
<xsl:variable name="orginfo">
<xsl:value-of select="concat('../organization','/',$domain,'.xml')"/>
</xsl:variable>
<md:EntityDescriptor>
<xsl:apply-templates select="@*"/>
<xsl:if test="$rpi='true' and not(md:Extensions)">
<md:Extensions><xsl:call-template name="add-swamid-rpi"/></md:Extensions>
</xsl:if>
<xsl:apply-templates select="text()|comment()|md:Extensions|md:RoleDescriptor|md:IDPSSODescriptor|md:SPSSODescriptor|md:AuthnAuthorityDescriptor|md:AttributeAuthorityDescriptor|md:PDPDescriptor|md:AffiliationDescriptor"/>
<xsl:if test="not(md:Organization)">
<xsl:apply-templates select="document($orginfo)"/>
</xsl:if>
<xsl:if test="$defaultContact='true' and not(md:ContactPerson)">
<md:ContactPerson contactType="technical"><md:EmailAddress>operations@swamid.se</md:EmailAddress></md:ContactPerson>
</xsl:if>
<xsl:apply-templates select="md:Organization|md:ContactPerson|md:AdditionalMetadataLocation"/>
</md:EntityDescriptor>
</xsl:template>
<xsl:template match="md:EntityDescriptor/md:Extensions">
<md:Extensions>
<xsl:call-template name="add-swamid-rpi"/>
<xsl:apply-templates select="text()|comment()|node()"/>
</md:Extensions>
</xsl:template>
<xsl:template name="add-swamid-rpi">
<xsl:if test="$rpi='true' and not(mdrpi:RegistrationInfo[@registrationAuthority='http://swamid.se/'])">
<mdrpi:RegistrationInfo registrationAuthority="http://www.swamid.se/">
<mdrpi:RegistrationPolicy xml:lang="en">http://www.swamid.se/download/18.248ad5af12aa8136533800012293/SWAMID+Metadata+Registration+Practice+Statement-20110714.pdf</mdrpi:RegistrationPolicy>
</mdrpi:RegistrationInfo>
</xsl:if>
</xsl:template>
<xsl:template match="@xml:base|@ID"/>
<xsl:template match="text()|comment()|@*">
<xsl:copy/>
</xsl:template>
<xsl:template match="*">
<xsl:copy>
<xsl:apply-templates select="node()|@*"/>
</xsl:copy>
</xsl:template>
</xsl:stylesheet>
|