shibkit-meta_meta 0.2.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (83) hide show
  1. data/.document +5 -0
  2. data/.rspec +1 -0
  3. data/Gemfile +21 -0
  4. data/Gemfile.lock +52 -0
  5. data/Icon.png +0 -0
  6. data/LICENSE.txt +177 -0
  7. data/README.md +789 -0
  8. data/Rakefile +38 -0
  9. data/VERSION +1 -0
  10. data/examples/biggest_entity_id.rb +4 -0
  11. data/lib/shibkit/meta_meta.rb +600 -0
  12. data/lib/shibkit/meta_meta/attribute.rb +73 -0
  13. data/lib/shibkit/meta_meta/config.rb +463 -0
  14. data/lib/shibkit/meta_meta/contact.rb +85 -0
  15. data/lib/shibkit/meta_meta/data/default_metadata/example_federation_metadata.xml +168 -0
  16. data/lib/shibkit/meta_meta/data/default_metadata/local_metadata.xml +66 -0
  17. data/lib/shibkit/meta_meta/data/default_metadata/uncommon_federation_metadata.xml +115 -0
  18. data/lib/shibkit/meta_meta/data/default_metadata_cache.yml +166 -0
  19. data/lib/shibkit/meta_meta/data/dev_sources.yml +86 -0
  20. data/lib/shibkit/meta_meta/data/real_sources.yml +163 -0
  21. data/lib/shibkit/meta_meta/entity.rb +219 -0
  22. data/lib/shibkit/meta_meta/federation.rb +161 -0
  23. data/lib/shibkit/meta_meta/idp.rb +81 -0
  24. data/lib/shibkit/meta_meta/logo.rb +216 -0
  25. data/lib/shibkit/meta_meta/metadata_item.rb +244 -0
  26. data/lib/shibkit/meta_meta/mixin/cached_downloads.rb +127 -0
  27. data/lib/shibkit/meta_meta/mixin/xpath_chores.rb +111 -0
  28. data/lib/shibkit/meta_meta/organisation.rb +73 -0
  29. data/lib/shibkit/meta_meta/provider.rb +195 -0
  30. data/lib/shibkit/meta_meta/provisioning/base.rb +33 -0
  31. data/lib/shibkit/meta_meta/requested_attribute.rb +29 -0
  32. data/lib/shibkit/meta_meta/service.rb +94 -0
  33. data/lib/shibkit/meta_meta/source.rb +558 -0
  34. data/lib/shibkit/meta_meta/sp.rb +79 -0
  35. data/shibkit-meta_meta.gemspec +154 -0
  36. data/spec/meta_meta/attribute/token +0 -0
  37. data/spec/meta_meta/config/autoloading_and_refreshing_spec.rb +72 -0
  38. data/spec/meta_meta/config/code_nspec.rb +13 -0
  39. data/spec/meta_meta/config/configuration_spec.rb +30 -0
  40. data/spec/meta_meta/config/creation_spec.rb +43 -0
  41. data/spec/meta_meta/config/downloading_and_caching_settings_spec.rb +216 -0
  42. data/spec/meta_meta/config/env_platform_settings.rb +129 -0
  43. data/spec/meta_meta/config/filtering_settings_spec.rb +123 -0
  44. data/spec/meta_meta/config/init.rb +8 -0
  45. data/spec/meta_meta/config/logger_settings_spec.rb +91 -0
  46. data/spec/meta_meta/config/smartcache_settings_spec.rb +110 -0
  47. data/spec/meta_meta/config/source_file_settings_spec.rb +99 -0
  48. data/spec/meta_meta/config/tagging_settings_spec.rb +81 -0
  49. data/spec/meta_meta/config/working_directory_settings_spec.rb +106 -0
  50. data/spec/meta_meta/config/xml_processing_settings_spec.rb +75 -0
  51. data/spec/meta_meta/contact/contact_oldspec.rb +0 -0
  52. data/spec/meta_meta/entity/entity_oldspec.rb +53 -0
  53. data/spec/meta_meta/federation/federation_oldspec.rb +0 -0
  54. data/spec/meta_meta/idp/token +0 -0
  55. data/spec/meta_meta/logo/token +0 -0
  56. data/spec/meta_meta/meta_meta/cache_example.yaml +141284 -0
  57. data/spec/meta_meta/meta_meta/meta_meta_spec.rb +269 -0
  58. data/spec/meta_meta/meta_meta/saved_sources.yaml +46 -0
  59. data/spec/meta_meta/metadata_item/token +0 -0
  60. data/spec/meta_meta/organisation/organisation_oldspec.rb +0 -0
  61. data/spec/meta_meta/provider/token +0 -0
  62. data/spec/meta_meta/requested_attribute/token +0 -0
  63. data/spec/meta_meta/service/token +0 -0
  64. data/spec/meta_meta/source/application_extras_spec.rb +234 -0
  65. data/spec/meta_meta/source/conversion_spec.rb +75 -0
  66. data/spec/meta_meta/source/creation_spec.rb +0 -0
  67. data/spec/meta_meta/source/downloads_and_caching_spec.rb +0 -0
  68. data/spec/meta_meta/source/federation_information_spec.rb +11 -0
  69. data/spec/meta_meta/source/fixtures.rb +24 -0
  70. data/spec/meta_meta/source/init.rb +1 -0
  71. data/spec/meta_meta/source/loading_and_saving_spec.rb +0 -0
  72. data/spec/meta_meta/source/metadata_details_spec.rb +0 -0
  73. data/spec/meta_meta/source/metadata_integrity_spec.rb +0 -0
  74. data/spec/meta_meta/source/selection_spec.rb +0 -0
  75. data/spec/meta_meta/source/source_oldspec.rb +353 -0
  76. data/spec/meta_meta/source/xml_parsing_spec.rb +0 -0
  77. data/spec/meta_meta/sp/token +0 -0
  78. data/spec/meta_meta/template +2 -0
  79. data/spec/moi/config_spec.rb +0 -0
  80. data/spec/spec.opts +1 -0
  81. data/spec/spec_helper.rb +25 -0
  82. data/spec/support/supply_xml.rb +0 -0
  83. metadata +320 -0
@@ -0,0 +1,85 @@
1
+ ## @author Pete Birkinshaw (<pete@digitalidentitylabs.com>)
2
+ ## Copyright: Copyright (c) 2011 Digital Identity Ltd.
3
+ ## License: Apache License, Version 2.0
4
+
5
+ ## Licensed under the Apache License, Version 2.0 (the "License");
6
+ ## you may not use this file except in compliance with the License.
7
+ ## You may obtain a copy of the License at
8
+ ##
9
+ ## http://www.apache.org/licenses/LICENSE-2.0
10
+ ##
11
+ ## Unless required by applicable law or agreed to in writing, software
12
+ ## distributed under the License is distributed on an "AS IS" BASIS,
13
+ ## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ ## See the License for the specific language governing permissions and
15
+ ## limitations under the License.
16
+ ##
17
+
18
+
19
+ module Shibkit
20
+ class MetaMeta
21
+
22
+ ## Class to represent technical or suppor contact details for an entity
23
+ class Contact < MetadataItem
24
+
25
+ require 'shibkit/meta_meta/metadata_item'
26
+
27
+ ## Element and attribute used to select XML for new objects
28
+ ROOT_ELEMENT = 'ContactPerson'
29
+ TARGET_ATTR = 'contactType'
30
+ REQUIRED_QUACKS = [:email_url, :category]
31
+
32
+ ## The given name of the contact (often the entire name is here)
33
+ attr_accessor :givenname
34
+
35
+ ## The surname of the contact
36
+ attr_accessor :surname
37
+
38
+ ## The email address of the contact formatted as a mailto: URL
39
+ attr_accessor :email_url
40
+
41
+ ## The category of the contact (support or technical)
42
+ attr_accessor :category
43
+
44
+ ## Usually both the surname and givenname of the contact
45
+ def display_name
46
+
47
+ return [givenname, surname].join(' ')
48
+
49
+ end
50
+
51
+ def email_address
52
+
53
+ return email_url.gsub('mailto:','')
54
+
55
+ end
56
+
57
+ ## Nicer presentation as a string
58
+ def to_s
59
+
60
+ return "#{display_name} <#{email_address}>"
61
+
62
+ end
63
+
64
+ private
65
+
66
+ def parse_xml
67
+
68
+ if @noko and @noko.content
69
+
70
+ self.givenname = @noko.xpath('xmlns:GivenName[1]')[0].content if @noko.xpath('xmlns:GivenName[1]')[0]
71
+ self.surname = @noko.xpath('xmlns:SurName[1]')[0].content if @noko.xpath('xmlns:SurName[1]')[0]
72
+ self.email_url = @noko.xpath('xmlns:EmailAddress[1]')[0].content if @noko.xpath('xmlns:EmailAddress[1]')[0]
73
+ self.category = @noko['contactType'].to_sym
74
+
75
+ log.debug " Derived contact #{email_url} from XML"
76
+
77
+ end
78
+
79
+
80
+
81
+ end
82
+
83
+ end
84
+ end
85
+ end
@@ -0,0 +1,168 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <EntitiesDescriptor
3
+ xmlns="urn:oasis:names:tc:SAML:2.0:metadata"
4
+ xmlns:ds="http://www.w3.org/2000/09/xmldsig#"
5
+ xmlns:elab="http://eduserv.org.uk/labels"
6
+ xmlns:idpdisc="urn:oasis:names:tc:SAML:profiles:SSO:idp-discovery-protocol"
7
+ xmlns:shibmd="urn:mace:shibboleth:metadata:1.0"
8
+ xmlns:shibmeta="urn:mace:shibboleth:metadata:1.0"
9
+ xmlns:ukfedlabel="http://ukfederation.org.uk/2006/11/label"
10
+ xmlns:wayf="http://sdss.ac.uk/2006/06/WAYF"
11
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
12
+ xsi:schemaLocation="urn:oasis:names:tc:SAML:2.0:metadata sstc-saml-schema-metadata-2.0.xsd urn:mace:shibboleth:metadata:1.0 shibboleth-metadata-1.0.xsd http://www.w3.org/2001/04/xmlenc# xenc-schema.xsd http://www.w3.org/2000/09/xmldsig# xmldsig-core-schema.xsd"
13
+ ID="ef20101029T160501Z"
14
+ Name="http://examplefederation.org"
15
+ validUntil="2010-11-12T16:05:01Z">
16
+
17
+ <EntityDescriptor ID="ef00001" entityID="https://shib.example.ac.uk/shibboleth">
18
+
19
+ <Extensions>
20
+ <shibmd:Scope regexp="false">example.ac.uk</shibmd:Scope>
21
+ <ukfedlabel:UKFederationMember/>
22
+ <ukfedlabel:AccountableUsers/>
23
+ </Extensions>
24
+
25
+ <IDPSSODescriptor protocolSupportEnumeration="urn:mace:shibboleth:1.0 urn:oasis:names:tc:SAML:1.1:protocol urn:oasis:names:tc:SAML:2.0:protocol">
26
+ <Extensions>
27
+ <shibmd:Scope regexp="false">example.ac.uk</shibmd:Scope>
28
+ </Extensions>
29
+ <ArtifactResolutionService Binding="urn:oasis:names:tc:SAML:1.0:bindings:SOAP-binding" Location="https://shib.example.ac.uk:8443/shibboleth-idp/profile/SAML1/SOAP/ArtifactResolution" index="1"/>
30
+ <ArtifactResolutionService Binding="urn:oasis:names:tc:SAML:2.0:bindings:SOAP" Location="https://shib.example.ac.uk:8443/shibboleth-idp/profile/SAML2/SOAP/ArtifactResolution" index="2"/>
31
+ <NameIDFormat>urn:mace:shibboleth:1.0:nameIdentifier</NameIDFormat>
32
+ <NameIDFormat>urn:oasis:names:tc:SAML:2.0:nameid-format:transient</NameIDFormat>
33
+ <SingleSignOnService Binding="urn:mace:shibboleth:1.0:profiles:AuthnRequest" Location="https://shib.example.ac.uk/shibboleth-idp/profile/Shibboleth/SSO"/>
34
+ <SingleSignOnService Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST" Location="https://shib.example.ac.uk/shibboleth-idp/profile/SAML2/POST/SSO"/>
35
+ <SingleSignOnService Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST-SimpleSign" Location="https://shib.example.ac.uk/shibboleth-idp/profile/SAML2/POST-SimpleSign/SSO"/>
36
+ <SingleSignOnService Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Redirect" Location="https://shib.example.ac.uk/shibboleth-idp/profile/SAML2/Redirect/SSO"/>
37
+ </IDPSSODescriptor>
38
+
39
+ <AttributeAuthorityDescriptor protocolSupportEnumeration="urn:oasis:names:tc:SAML:1.1:protocol urn:oasis:names:tc:SAML:2.0:protocol">
40
+ <Extensions>
41
+ <shibmd:Scope regexp="false">example.ac.uk</shibmd:Scope>
42
+ </Extensions>
43
+ <AttributeService Binding="urn:oasis:names:tc:SAML:1.0:bindings:SOAP-binding" Location="https://shib.example.ac.uk:8443/shibboleth-idp/profile/SAML1/SOAP/AttributeQuery"/>
44
+ <AttributeService Binding="urn:oasis:names:tc:SAML:2.0:bindings:SOAP" Location="https://shib.example.ac.uk:8443/shibboleth-idp/profile/SAML2/SOAP/AttributeQuery"/>
45
+ <NameIDFormat>urn:mace:shibboleth:1.0:nameIdentifier</NameIDFormat>
46
+ <NameIDFormat>urn:oasis:names:tc:SAML:2.0:nameid-format:transient</NameIDFormat>
47
+ </AttributeAuthorityDescriptor>
48
+
49
+ <Organization>
50
+ <OrganizationName xml:lang="en">The University of Example</OrganizationName>
51
+ <OrganizationDisplayName xml:lang="en">University of Example</OrganizationDisplayName>
52
+ <OrganizationURL xml:lang="en">http://www.example.ac.uk/</OrganizationURL>
53
+ </Organization>
54
+
55
+ <ContactPerson contactType="support">
56
+ <GivenName>IT Service Desk</GivenName>
57
+ <EmailAddress>mailto:IT-Servicedesk@example.ac.uk</EmailAddress>
58
+ </ContactPerson>
59
+ <ContactPerson contactType="technical">
60
+ <GivenName>A</GivenName>
61
+ <SurName>Person</SurName>
62
+ <EmailAddress>mailto:a.person@example.ac.uk</EmailAddress>
63
+ </ContactPerson>
64
+
65
+ </EntityDescriptor>
66
+
67
+ <EntityDescriptor ID="ef00002" entityID="https://idp.example.exampleshire.sch.uk/shibboleth">
68
+
69
+ <Extensions>
70
+ <shibmd:Scope regexp="false">example.ac.uk</shibmd:Scope>
71
+ <ukfedlabel:UKFederationMember/>
72
+ <ukfedlabel:AccountableUsers/>
73
+ </Extensions>
74
+
75
+ <IDPSSODescriptor protocolSupportEnumeration="urn:mace:shibboleth:1.0 urn:oasis:names:tc:SAML:1.1:protocol urn:oasis:names:tc:SAML:2.0:protocol">
76
+ <Extensions>
77
+ <shibmd:Scope regexp="false">example.exampleshire.sch.uk</shibmd:Scope>
78
+ </Extensions>
79
+ <ArtifactResolutionService Binding="urn:oasis:names:tc:SAML:1.0:bindings:SOAP-binding" Location="https://idp.example.exampleshire.sch.uk:8443/shibboleth-idp/profile/SAML1/SOAP/ArtifactResolution" index="1"/>
80
+ <ArtifactResolutionService Binding="urn:oasis:names:tc:SAML:2.0:bindings:SOAP" Location="https://idp.example.exampleshire.sch.uk:8443/shibboleth-idp/profile/SAML2/SOAP/ArtifactResolution" index="2"/>
81
+ <NameIDFormat>urn:mace:shibboleth:1.0:nameIdentifier</NameIDFormat>
82
+ <NameIDFormat>urn:oasis:names:tc:SAML:2.0:nameid-format:transient</NameIDFormat>
83
+ <SingleSignOnService Binding="urn:mace:shibboleth:1.0:profiles:AuthnRequest" Location="https://idp.example.exampleshire.sch.uk/shibboleth-idp/profile/Shibboleth/SSO"/>
84
+ <SingleSignOnService Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST" Location="https://idp.example.exampleshire.sch.uk/shibboleth-idp/profile/SAML2/POST/SSO"/>
85
+ <SingleSignOnService Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST-SimpleSign" Location="https://idp.example.exampleshire.sch.uk/shibboleth-idp/profile/SAML2/POST-SimpleSign/SSO"/>
86
+ <SingleSignOnService Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Redirect" Location="https://idp.example.exampleshire.sch.uk/shibboleth-idp/profile/SAML2/Redirect/SSO"/>
87
+ </IDPSSODescriptor>
88
+
89
+ <AttributeAuthorityDescriptor protocolSupportEnumeration="urn:oasis:names:tc:SAML:1.1:protocol urn:oasis:names:tc:SAML:2.0:protocol">
90
+ <Extensions>
91
+ <shibmd:Scope regexp="false">example.exampleshire.sch.uk</shibmd:Scope>
92
+ </Extensions>
93
+ <AttributeService Binding="urn:oasis:names:tc:SAML:1.0:bindings:SOAP-binding" Location="https://idp.example.exampleshire.sch.uk:8443/shibboleth-idp/profile/SAML1/SOAP/AttributeQuery"/>
94
+ <AttributeService Binding="urn:oasis:names:tc:SAML:2.0:bindings:SOAP" Location="https://idp.example.exampleshire.sch.uk:8443/shibboleth-idp/profile/SAML2/SOAP/AttributeQuery"/>
95
+ <NameIDFormat>urn:mace:shibboleth:1.0:nameIdentifier</NameIDFormat>
96
+ <NameIDFormat>urn:oasis:names:tc:SAML:2.0:nameid-format:transient</NameIDFormat>
97
+ </AttributeAuthorityDescriptor>
98
+
99
+ <Organization>
100
+ <OrganizationName xml:lang="en">Example Secondary School</OrganizationName>
101
+ <OrganizationDisplayName xml:lang="en">Example Secondary School</OrganizationDisplayName>
102
+ <OrganizationURL xml:lang="en">http://www.example.exampleshire.sch.uk/</OrganizationURL>
103
+ </Organization>
104
+
105
+ <ContactPerson contactType="support">
106
+ <GivenName>IT Service Desk</GivenName>
107
+ <EmailAddress>mailto:support@example.exampleshire.sch.uk</EmailAddress>
108
+ </ContactPerson>
109
+ <ContactPerson contactType="technical">
110
+ <GivenName>A</GivenName>
111
+ <SurName>Person</SurName>
112
+ <EmailAddress>mailto:sysadmin@example.exampleshire.sch.uk</EmailAddress>
113
+ </ContactPerson>
114
+
115
+ </EntityDescriptor>
116
+
117
+ <EntityDescriptor ID="ef00003" entityID="https://login.example.com/shibboleth">
118
+
119
+ <Extensions>
120
+ <shibmd:Scope regexp="false">example.com</shibmd:Scope>
121
+ <ukfedlabel:UKFederationMember/>
122
+ <ukfedlabel:AccountableUsers/>
123
+ <wayf:HideFromWAYF/>
124
+ </Extensions>
125
+
126
+ <IDPSSODescriptor protocolSupportEnumeration="urn:mace:shibboleth:1.0 urn:oasis:names:tc:SAML:1.1:protocol urn:oasis:names:tc:SAML:2.0:protocol">
127
+ <Extensions>
128
+ <shibmd:Scope regexp="false">example.com</shibmd:Scope>
129
+ </Extensions>
130
+ <ArtifactResolutionService Binding="urn:oasis:names:tc:SAML:1.0:bindings:SOAP-binding" Location="https://login.example.com:8443/idp/profile/SAML1/SOAP/ArtifactResolution" index="1"/>
131
+ <ArtifactResolutionService Binding="urn:oasis:names:tc:SAML:2.0:bindings:SOAP" Location="https://login.example.com:8443/idp/profile/SAML2/SOAP/ArtifactResolution" index="2"/>
132
+ <NameIDFormat>urn:mace:shibboleth:1.0:nameIdentifier</NameIDFormat>
133
+ <NameIDFormat>urn:oasis:names:tc:SAML:2.0:nameid-format:transient</NameIDFormat>
134
+ <SingleSignOnService Binding="urn:mace:shibboleth:1.0:profiles:AuthnRequest" Location="https://login.example.com/idp/profile/Shibboleth/SSO"/>
135
+ <SingleSignOnService Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST" Location="https://login.example.com/idp/profile/SAML2/POST/SSO"/>
136
+ <SingleSignOnService Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST-SimpleSign" Location="https://login.example.com/idp/profile/SAML2/POST-SimpleSign/SSO"/>
137
+ <SingleSignOnService Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Redirect" Location="https://login.example.com/idp/profile/SAML2/Redirect/SSO"/>
138
+ </IDPSSODescriptor>
139
+
140
+ <AttributeAuthorityDescriptor protocolSupportEnumeration="urn:oasis:names:tc:SAML:1.1:protocol urn:oasis:names:tc:SAML:2.0:protocol">
141
+ <Extensions>
142
+ <shibmd:Scope regexp="false">example.com</shibmd:Scope>
143
+ </Extensions>
144
+ <AttributeService Binding="urn:oasis:names:tc:SAML:1.0:bindings:SOAP-binding" Location="https://login.example.com:8443/idp/profile/SAML1/SOAP/AttributeQuery"/>
145
+ <AttributeService Binding="urn:oasis:names:tc:SAML:2.0:bindings:SOAP" Location="https://login.example.com:8443/idp/profile/SAML2/SOAP/AttributeQuery"/>
146
+ <NameIDFormat>urn:mace:shibboleth:1.0:nameIdentifier</NameIDFormat>
147
+ <NameIDFormat>urn:oasis:names:tc:SAML:2.0:nameid-format:transient</NameIDFormat>
148
+ </AttributeAuthorityDescriptor>
149
+
150
+ <Organization>
151
+ <OrganizationName xml:lang="en">Example Online</OrganizationName>
152
+ <OrganizationDisplayName xml:lang="en">Example Online</OrganizationDisplayName>
153
+ <OrganizationURL xml:lang="en">http://example.com</OrganizationURL>
154
+ </Organization>
155
+
156
+ <ContactPerson contactType="support">
157
+ <GivenName>IT Service Desk</GivenName>
158
+ <EmailAddress>mailto:help@example.com</EmailAddress>
159
+ </ContactPerson>
160
+ <ContactPerson contactType="technical">
161
+ <GivenName>A</GivenName>
162
+ <SurName>Person</SurName>
163
+ <EmailAddress>mailto:guru@example.com</EmailAddress>
164
+ </ContactPerson>
165
+
166
+ </EntityDescriptor>
167
+
168
+ </EntitiesDescriptor>
@@ -0,0 +1,66 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <EntitiesDescriptor
3
+ xmlns="urn:oasis:names:tc:SAML:2.0:metadata"
4
+ xmlns:ds="http://www.w3.org/2000/09/xmldsig#"
5
+ xmlns:elab="http://eduserv.org.uk/labels"
6
+ xmlns:idpdisc="urn:oasis:names:tc:SAML:profiles:SSO:idp-discovery-protocol"
7
+ xmlns:shibmd="urn:mace:shibboleth:metadata:1.0"
8
+ xmlns:shibmeta="urn:mace:shibboleth:metadata:1.0"
9
+ xmlns:ukfedlabel="http://ukfederation.org.uk/2006/11/label"
10
+ xmlns:wayf="http://sdss.ac.uk/2006/06/WAYF"
11
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
12
+ xsi:schemaLocation="urn:oasis:names:tc:SAML:2.0:metadata sstc-saml-schema-metadata-2.0.xsd urn:mace:shibboleth:metadata:1.0 shibboleth-metadata-1.0.xsd http://www.w3.org/2001/04/xmlenc# xenc-schema.xsd http://www.w3.org/2000/09/xmldsig# xmldsig-core-schema.xsd"
13
+ ID="ef20101029T160501Z"
14
+ Name="http://example.org"
15
+ validUntil="2010-11-12T16:05:01Z">
16
+ <EntityDescriptor ID="miskatonic.edu" entityID="https://yogsothoth.miskatonic.edu/shibboleth">
17
+
18
+ <Extensions>
19
+ <shibmd:Scope regexp="false">miskatonic.edu</shibmd:Scope>
20
+ <ukfedlabel:UKFederationMember/>
21
+ <ukfedlabel:AccountableUsers/>
22
+ </Extensions>
23
+
24
+ <IDPSSODescriptor protocolSupportEnumeration="urn:mace:shibboleth:1.0 urn:oasis:names:tc:SAML:1.1:protocol urn:oasis:names:tc:SAML:2.0:protocol">
25
+ <Extensions>
26
+ <shibmd:Scope regexp="false">miskatonic.edu</shibmd:Scope>
27
+ </Extensions>
28
+ <ArtifactResolutionService Binding="urn:oasis:names:tc:SAML:1.0:bindings:SOAP-binding" Location="https://yogsothoth.miskatonic.edu:8443/idp/profile/SAML1/SOAP/ArtifactResolution" index="1"/>
29
+ <ArtifactResolutionService Binding="urn:oasis:names:tc:SAML:2.0:bindings:SOAP" Location="https://yogsothoth.miskatonic.edu:8443/idp/profile/SAML2/SOAP/ArtifactResolution" index="2"/>
30
+ <NameIDFormat>urn:mace:shibboleth:1.0:nameIdentifier</NameIDFormat>
31
+ <NameIDFormat>urn:oasis:names:tc:SAML:2.0:nameid-format:transient</NameIDFormat>
32
+ <SingleSignOnService Binding="urn:mace:shibboleth:1.0:profiles:AuthnRequest" Location="https://yogsothoth.miskatonic.edu/idp/profile/Shibboleth/SSO"/>
33
+ <SingleSignOnService Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST" Location="https://yogsothoth.miskatonic.edu/idp/profile/SAML2/POST/SSO"/>
34
+ <SingleSignOnService Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST-SimpleSign" Location="https://yogsothoth.miskatonic.edu/idp/profile/SAML2/POST-SimpleSign/SSO"/>
35
+ <SingleSignOnService Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Redirect" Location="https://yogsothoth.miskatonic.edu/idp/profile/SAML2/Redirect/SSO"/>
36
+ </IDPSSODescriptor>
37
+
38
+ <AttributeAuthorityDescriptor protocolSupportEnumeration="urn:oasis:names:tc:SAML:1.1:protocol urn:oasis:names:tc:SAML:2.0:protocol">
39
+ <Extensions>
40
+ <shibmd:Scope regexp="false">miskatonic.edu</shibmd:Scope>
41
+ </Extensions>
42
+ <AttributeService Binding="urn:oasis:names:tc:SAML:1.0:bindings:SOAP-binding" Location="https://yogsothoth.miskatonic.edu:8443/idp/profile/SAML1/SOAP/AttributeQuery"/>
43
+ <AttributeService Binding="urn:oasis:names:tc:SAML:2.0:bindings:SOAP" Location="https://yogsothoth.miskatonic.edu:8443/idp/profile/SAML2/SOAP/AttributeQuery"/>
44
+ <NameIDFormat>urn:mace:shibboleth:1.0:nameIdentifier</NameIDFormat>
45
+ <NameIDFormat>urn:oasis:names:tc:SAML:2.0:nameid-format:transient</NameIDFormat>
46
+ </AttributeAuthorityDescriptor>
47
+
48
+ <Organization>
49
+ <OrganizationName xml:lang="en">Miskatonic University</OrganizationName>
50
+ <OrganizationDisplayName xml:lang="en">Miskatonic University</OrganizationDisplayName>
51
+ <OrganizationURL xml:lang="en">http://www.miskatonic.edu/</OrganizationURL>
52
+ </Organization>
53
+
54
+ <ContactPerson contactType="support">
55
+ <GivenName>IT Service Desk</GivenName>
56
+ <EmailAddress>mailto:library@miskatonic.edu</EmailAddress>
57
+ </ContactPerson>
58
+ <ContactPerson contactType="technical">
59
+ <GivenName>A</GivenName>
60
+ <SurName>Person</SurName>
61
+ <EmailAddress>mailto:w.whately@miskatonic.edu</EmailAddress>
62
+ </ContactPerson>
63
+
64
+ </EntityDescriptor>
65
+
66
+ </EntitiesDescriptor>
@@ -0,0 +1,115 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <EntitiesDescriptor
3
+ xmlns="urn:oasis:names:tc:SAML:2.0:metadata"
4
+ xmlns:ds="http://www.w3.org/2000/09/xmldsig#"
5
+ xmlns:elab="http://eduserv.org.uk/labels"
6
+ xmlns:idpdisc="urn:oasis:names:tc:SAML:profiles:SSO:idp-discovery-protocol"
7
+ xmlns:shibmd="urn:mace:shibboleth:metadata:1.0"
8
+ xmlns:shibmeta="urn:mace:shibboleth:metadata:1.0"
9
+ xmlns:ukfedlabel="http://ukfederation.org.uk/2006/11/label"
10
+ xmlns:wayf="http://sdss.ac.uk/2006/06/WAYF"
11
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
12
+ xsi:schemaLocation="urn:oasis:names:tc:SAML:2.0:metadata sstc-saml-schema-metadata-2.0.xsd urn:mace:shibboleth:metadata:1.0 shibboleth-metadata-1.0.xsd http://www.w3.org/2001/04/xmlenc# xenc-schema.xsd http://www.w3.org/2000/09/xmldsig# xmldsig-core-schema.xsd"
13
+ ID="ef20101029T160501Z"
14
+ Name="http://uncommonfed.org"
15
+ validUntil="2010-11-12T16:05:01Z">
16
+
17
+ <EntityDescriptor ID="uf00001" entityID="https://shibboleth.example.edu/shibboleth">
18
+
19
+ <Extensions>
20
+ <shibmd:Scope regexp="false">example.edu</shibmd:Scope>
21
+ <ukfedlabel:UKFederationMember/>
22
+ <ukfedlabel:AccountableUsers/>
23
+ </Extensions>
24
+
25
+ <IDPSSODescriptor protocolSupportEnumeration="urn:mace:shibboleth:1.0 urn:oasis:names:tc:SAML:1.1:protocol urn:oasis:names:tc:SAML:2.0:protocol">
26
+ <Extensions>
27
+ <shibmd:Scope regexp="false">example.edu</shibmd:Scope>
28
+ </Extensions>
29
+ <ArtifactResolutionService Binding="urn:oasis:names:tc:SAML:1.0:bindings:SOAP-binding" Location="https://shibboleth.example.edu:8443/idp/profile/SAML1/SOAP/ArtifactResolution" index="1"/>
30
+ <ArtifactResolutionService Binding="urn:oasis:names:tc:SAML:2.0:bindings:SOAP" Location="https://shibboleth.example.edu:8443/idp/profile/SAML2/SOAP/ArtifactResolution" index="2"/>
31
+ <NameIDFormat>urn:mace:shibboleth:1.0:nameIdentifier</NameIDFormat>
32
+ <NameIDFormat>urn:oasis:names:tc:SAML:2.0:nameid-format:transient</NameIDFormat>
33
+ <SingleSignOnService Binding="urn:mace:shibboleth:1.0:profiles:AuthnRequest" Location="https://shibboleth.example.edu/idp/profile/Shibboleth/SSO"/>
34
+ <SingleSignOnService Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST" Location="https://shibboleth.example.edu/idp/profile/SAML2/POST/SSO"/>
35
+ <SingleSignOnService Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST-SimpleSign" Location="https://shibboleth.example.edu/idp/profile/SAML2/POST-SimpleSign/SSO"/>
36
+ <SingleSignOnService Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Redirect" Location="https://shibboleth.example.edu/idp/profile/SAML2/Redirect/SSO"/>
37
+ </IDPSSODescriptor>
38
+
39
+ <AttributeAuthorityDescriptor protocolSupportEnumeration="urn:oasis:names:tc:SAML:1.1:protocol urn:oasis:names:tc:SAML:2.0:protocol">
40
+ <Extensions>
41
+ <shibmd:Scope regexp="false">example.edu</shibmd:Scope>
42
+ </Extensions>
43
+ <AttributeService Binding="urn:oasis:names:tc:SAML:1.0:bindings:SOAP-binding" Location="https://shibboleth.example.edu:8443/idp/profile/SAML1/SOAP/AttributeQuery"/>
44
+ <AttributeService Binding="urn:oasis:names:tc:SAML:2.0:bindings:SOAP" Location="https://shibboleth.example.edu:8443/idp/profile/SAML2/SOAP/AttributeQuery"/>
45
+ <NameIDFormat>urn:mace:shibboleth:1.0:nameIdentifier</NameIDFormat>
46
+ <NameIDFormat>urn:oasis:names:tc:SAML:2.0:nameid-format:transient</NameIDFormat>
47
+ </AttributeAuthorityDescriptor>
48
+
49
+ <Organization>
50
+ <OrganizationName xml:lang="en">Example Institute of Technology</OrganizationName>
51
+ <OrganizationDisplayName xml:lang="en">Example Institute of Technology</OrganizationDisplayName>
52
+ <OrganizationURL xml:lang="en">http://www.example.edu/</OrganizationURL>
53
+ </Organization>
54
+
55
+ <ContactPerson contactType="support">
56
+ <GivenName>IT Service Desk</GivenName>
57
+ <EmailAddress>mailto:IT-Servicedesk@example.edu</EmailAddress>
58
+ </ContactPerson>
59
+ <ContactPerson contactType="technical">
60
+ <GivenName>A</GivenName>
61
+ <SurName>Person</SurName>
62
+ <EmailAddress>mailto:a.person@example.edu</EmailAddress>
63
+ </ContactPerson>
64
+
65
+ </EntityDescriptor>
66
+
67
+ <EntityDescriptor ID="uf00002" entityID="https://login.example.com/shibboleth">
68
+
69
+ <Extensions>
70
+ <shibmd:Scope regexp="false">example.com</shibmd:Scope>
71
+ </Extensions>
72
+
73
+ <IDPSSODescriptor protocolSupportEnumeration="urn:mace:shibboleth:1.0 urn:oasis:names:tc:SAML:1.1:protocol urn:oasis:names:tc:SAML:2.0:protocol">
74
+ <Extensions>
75
+ <shibmd:Scope regexp="false">example.com</shibmd:Scope>
76
+ </Extensions>
77
+ <ArtifactResolutionService Binding="urn:oasis:names:tc:SAML:1.0:bindings:SOAP-binding" Location="https://login.example.com:8443/idp/profile/SAML1/SOAP/ArtifactResolution" index="1"/>
78
+ <ArtifactResolutionService Binding="urn:oasis:names:tc:SAML:2.0:bindings:SOAP" Location="https://login.example.com:8443/idp/profile/SAML2/SOAP/ArtifactResolution" index="2"/>
79
+ <NameIDFormat>urn:mace:shibboleth:1.0:nameIdentifier</NameIDFormat>
80
+ <NameIDFormat>urn:oasis:names:tc:SAML:2.0:nameid-format:transient</NameIDFormat>
81
+ <SingleSignOnService Binding="urn:mace:shibboleth:1.0:profiles:AuthnRequest" Location="https://login.example.com/idp/profile/Shibboleth/SSO"/>
82
+ <SingleSignOnService Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST" Location="https://login.example.com/idp/profile/SAML2/POST/SSO"/>
83
+ <SingleSignOnService Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST-SimpleSign" Location="https://login.example.com/idp/profile/SAML2/POST-SimpleSign/SSO"/>
84
+ <SingleSignOnService Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Redirect" Location="https://login.example.com/idp/profile/SAML2/Redirect/SSO"/>
85
+ </IDPSSODescriptor>
86
+
87
+ <AttributeAuthorityDescriptor protocolSupportEnumeration="urn:oasis:names:tc:SAML:1.1:protocol urn:oasis:names:tc:SAML:2.0:protocol">
88
+ <Extensions>
89
+ <shibmd:Scope regexp="false">example.com</shibmd:Scope>
90
+ </Extensions>
91
+ <AttributeService Binding="urn:oasis:names:tc:SAML:1.0:bindings:SOAP-binding" Location="https://login.example.com:8443/idp/profile/SAML1/SOAP/AttributeQuery"/>
92
+ <AttributeService Binding="urn:oasis:names:tc:SAML:2.0:bindings:SOAP" Location="https://login.example.com:8443/idp/profile/SAML2/SOAP/AttributeQuery"/>
93
+ <NameIDFormat>urn:mace:shibboleth:1.0:nameIdentifier</NameIDFormat>
94
+ <NameIDFormat>urn:oasis:names:tc:SAML:2.0:nameid-format:transient</NameIDFormat>
95
+ </AttributeAuthorityDescriptor>
96
+
97
+ <Organization>
98
+ <OrganizationName xml:lang="en">Example Online</OrganizationName>
99
+ <OrganizationDisplayName xml:lang="en">Example Online</OrganizationDisplayName>
100
+ <OrganizationURL xml:lang="en">http://example.com</OrganizationURL>
101
+ </Organization>
102
+
103
+ <ContactPerson contactType="support">
104
+ <GivenName>IT Service Desk</GivenName>
105
+ <EmailAddress>mailto:help@example.com</EmailAddress>
106
+ </ContactPerson>
107
+ <ContactPerson contactType="technical">
108
+ <GivenName>A</GivenName>
109
+ <SurName>Person</SurName>
110
+ <EmailAddress>mailto:guru@example.com</EmailAddress>
111
+ </ContactPerson>
112
+
113
+ </EntityDescriptor>
114
+
115
+ </EntitiesDescriptor>
@@ -0,0 +1,166 @@
1
+ ---
2
+ - !ruby/object:Shibkit::MetaMeta::Federation
3
+ display_name: Other Organisations
4
+ entities:
5
+ - !ruby/object:Shibkit::MetaMeta::Entity
6
+ accountable: true
7
+ athens: false
8
+ entity_uri: https://yogsothoth.miskatonic.edu/shibboleth
9
+ federation_uri: http://otherorganisations.org
10
+ idp: true
11
+ metadata_id: miskatonic.edu
12
+ organisation: !ruby/object:Shibkit::MetaMeta::Organisation
13
+ display_name: Miskatonic University
14
+ name: Miskatonic University
15
+ url: http://www.miskatonic.edu/
16
+ scopes:
17
+ - miskatonic.edu
18
+ sp: true
19
+ support_contact: !ruby/object:Shibkit::MetaMeta::Contact
20
+ category: support
21
+ email_url: mailto:library@miskatonic.edu
22
+ givenname: IT Service Desk
23
+ technical_contact: !ruby/object:Shibkit::MetaMeta::Contact
24
+ category: technical
25
+ email_url: mailto:w.whately@miskatonic.edu
26
+ givenname: A
27
+ surname: Person
28
+ ukfm: true
29
+ federation_uri: http://otherorgs.org
30
+ metadata_id: ef20101029T160501Z
31
+ read_at: 2010-11-03 21:35:56.840712 +00:00
32
+ valid_until: "2010-11-12T16:05:01Z"
33
+ - !ruby/object:Shibkit::MetaMeta::Federation
34
+ display_name: Example Federation
35
+ entities:
36
+ - !ruby/object:Shibkit::MetaMeta::Entity
37
+ accountable: true
38
+ athens: false
39
+ entity_uri: https://shib.example.ac.uk/shibboleth
40
+ federation_uri: http://examplefederation.org
41
+ idp: true
42
+ metadata_id: ef00001
43
+ organisation: !ruby/object:Shibkit::MetaMeta::Organisation
44
+ display_name: University of Example
45
+ name: The University of Example
46
+ url: http://www.example.ac.uk/
47
+ scopes:
48
+ - example.ac.uk
49
+ sp: true
50
+ support_contact: !ruby/object:Shibkit::MetaMeta::Contact
51
+ category: support
52
+ email_url: mailto:IT-Servicedesk@example.ac.uk
53
+ givenname: IT Service Desk
54
+ technical_contact: !ruby/object:Shibkit::MetaMeta::Contact
55
+ category: technical
56
+ email_url: mailto:a.person@example.ac.uk
57
+ givenname: A
58
+ surname: Person
59
+ ukfm: true
60
+ - !ruby/object:Shibkit::MetaMeta::Entity
61
+ accountable: true
62
+ athens: false
63
+ entity_uri: https://idp.exampleacademy.exampleshire.sch.uk/shibboleth
64
+ federation_uri: http://examplefederation.org
65
+ idp: true
66
+ metadata_id: ef00002
67
+ organisation: !ruby/object:Shibkit::MetaMeta::Organisation
68
+ display_name: Example Secondary School
69
+ name: Example Secondary School
70
+ url: http://www.exampleacademy.exampleshire.sch.uk/
71
+ scopes:
72
+ - exampleacademy.exampleshire.sch.uk
73
+ sp: true
74
+ support_contact: !ruby/object:Shibkit::MetaMeta::Contact
75
+ category: support
76
+ email_url: mailto:support@exampleacademy.exampleshire.sch.uk
77
+ givenname: IT Service Desk
78
+ technical_contact: !ruby/object:Shibkit::MetaMeta::Contact
79
+ category: technical
80
+ email_url: mailto:sysadmin@exampleacademy.exampleshire.sch.uk
81
+ givenname: A
82
+ surname: Person
83
+ ukfm: true
84
+ - !ruby/object:Shibkit::MetaMeta::Entity
85
+ accountable: true
86
+ athens: false
87
+ entity_uri: https://login.example.com/shibboleth
88
+ federation_uri: http://examplefederation.org
89
+ idp: true
90
+ metadata_id: ef00003
91
+ organisation: !ruby/object:Shibkit::MetaMeta::Organisation
92
+ display_name: Example Online
93
+ name: Example Online
94
+ url: http://example.com
95
+ scopes:
96
+ - example.com
97
+ sp: true
98
+ support_contact: !ruby/object:Shibkit::MetaMeta::Contact
99
+ category: support
100
+ email_url: mailto:help@example.com
101
+ givenname: IT Service Desk
102
+ technical_contact: !ruby/object:Shibkit::MetaMeta::Contact
103
+ category: technical
104
+ email_url: mailto:guru@example.com
105
+ givenname: A
106
+ surname: Person
107
+ ukfm: true
108
+ federation_uri: http://examplefederation.org
109
+ metadata_id: ef20101029T160501Z
110
+ read_at: 2010-11-03 21:35:56.872815 +00:00
111
+ valid_until: "2010-11-12T16:05:01Z"
112
+ - !ruby/object:Shibkit::MetaMeta::Federation
113
+ display_name: UnCommon
114
+ entities:
115
+ - !ruby/object:Shibkit::MetaMeta::Entity
116
+ accountable: true
117
+ athens: false
118
+ entity_uri: https://shibboleth.example.edu/shibboleth
119
+ federation_uri: http://uncommonfed.org
120
+ idp: true
121
+ metadata_id: uf00001
122
+ organisation: !ruby/object:Shibkit::MetaMeta::Organisation
123
+ display_name: University of Example
124
+ name: The University of Example
125
+ url: http://www.example.edu/
126
+ scopes:
127
+ - example.edu
128
+ sp: true
129
+ support_contact: !ruby/object:Shibkit::MetaMeta::Contact
130
+ category: support
131
+ email_url: mailto:IT-Servicedesk@example.edu
132
+ givenname: IT Service Desk
133
+ technical_contact: !ruby/object:Shibkit::MetaMeta::Contact
134
+ category: technical
135
+ email_url: mailto:a.person@example.edu
136
+ givenname: A
137
+ surname: Person
138
+ ukfm: true
139
+ - !ruby/object:Shibkit::MetaMeta::Entity
140
+ accountable: false
141
+ athens: false
142
+ entity_uri: https://login.example.com/shibboleth
143
+ federation_uri: http://uncommonfed.org
144
+ idp: true
145
+ metadata_id: uf00002
146
+ organisation: !ruby/object:Shibkit::MetaMeta::Organisation
147
+ display_name: Example Online
148
+ name: Example Online
149
+ url: http://example.com
150
+ scopes:
151
+ - example.com
152
+ sp: true
153
+ support_contact: !ruby/object:Shibkit::MetaMeta::Contact
154
+ category: support
155
+ email_url: mailto:help@example.com
156
+ givenname: IT Service Desk
157
+ technical_contact: !ruby/object:Shibkit::MetaMeta::Contact
158
+ category: technical
159
+ email_url: mailto:guru@example.com
160
+ givenname: A
161
+ surname: Person
162
+ ukfm: false
163
+ federation_uri: http://uncommonfed.org
164
+ metadata_id: ef20101029T160501Z
165
+ read_at: 2010-11-03 21:35:56.879264 +00:00
166
+ valid_until: "2010-11-12T16:05:01Z"