diff --git a/README.md b/README.md
index 63fba15b..20dae1a5 100644
--- a/README.md
+++ b/README.md
@@ -18,9 +18,13 @@ The second main category excluded from the public repository is the historic reg
Since 2016, we have separated the entity database and aggregate record from the main toolchain repository, but the nature of Git is to never discard anything. We will therefore continue to make this repository publicly available only in redacted form.
-## Licensing
+## Copyright and License
-Everything in the public repository is Copyright (C) 2004–2015, University of Edinburgh. Each file is made available to you under the following terms:
+The contents of this repository are Copyright (C) the named contributors or their
+employers, as appropriate.
+
+In particular, all content authored prior to the 1st of August 2016 is
+Copyright (C) 2011—2016, University of Edinburgh.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
diff --git a/attic/extract_entityids.xsl b/attic/extract_entityids.xsl
index dc915ee3..0723dd87 100644
--- a/attic/extract_entityids.xsl
+++ b/attic/extract_entityids.xsl
@@ -1,31 +1,30 @@
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:ds="http://www.w3.org/2000/09/xmldsig#"
+ xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ exclude-result-prefixes="md ds">
+
+
+
-
-
+
+
+
+
-
-
-
-
-
-
-
-
+
+
+
diff --git a/attic/extract_member_dates.xsl b/attic/extract_member_dates.xsl
index b1e69ec8..0a793447 100644
--- a/attic/extract_member_dates.xsl
+++ b/attic/extract_member_dates.xsl
@@ -1,34 +1,34 @@
-
-
-
-
-
-
- ,"
-
- "
-
-
-
-
-
-
-
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata"
+ xmlns:ukfm="http://ukfederation.org.uk/2007/01/members">
+
+
+
+
+
+
+ ,"
+
+ "
+
+
+
+
+
+
+
diff --git a/attic/extract_saml2sp.xsl b/attic/extract_saml2sp.xsl
index e3378aaf..aa59a0db 100644
--- a/attic/extract_saml2sp.xsl
+++ b/attic/extract_saml2sp.xsl
@@ -1,37 +1,37 @@
-
-
-
-
-
-
-
-
- yes
- no
-
-
-
-
-
-
-
-
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:ds="http://www.w3.org/2000/09/xmldsig#"
+ xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ exclude-result-prefixes="md ds">
+
+
+
+
+
+
+
+
+ yes
+ no
+
+
+
+
+
+
+
+
diff --git a/attic/identity.xsl b/attic/identity.xsl
index caac8f28..23f2a177 100644
--- a/attic/identity.xsl
+++ b/attic/identity.xsl
@@ -1,30 +1,30 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/attic/keynames.pl b/attic/keynames.pl
index 23216794..a917025d 100755
--- a/attic/keynames.pl
+++ b/attic/keynames.pl
@@ -1,10 +1,11 @@
-#!/usr/bin/env perl -w
+#!/usr/bin/env perl
#
# keynames.pl
#
# Extracts statistics about KeyName elements from the published metadata.
#
+use warnings;
use lib "../build";
use Xalan;
use Months;
diff --git a/attic/keynames_inner.pl b/attic/keynames_inner.pl
index bed6059f..3778f942 100755
--- a/attic/keynames_inner.pl
+++ b/attic/keynames_inner.pl
@@ -1,4 +1,6 @@
-#!/usr/bin/env perl -w
+#!/usr/bin/env perl
+
+use warnings;
use POSIX qw(floor);
use File::Temp qw(tempfile);
use Date::Format;
diff --git a/attic/members_domains.xsl b/attic/members_domains.xsl
index f1104725..6764589b 100644
--- a/attic/members_domains.xsl
+++ b/attic/members_domains.xsl
@@ -1,78 +1,78 @@
+ xmlns:members="http://ukfederation.org.uk/2007/01/members"
+ xmlns:xalan="http://xml.apache.org/xalan"
+
+ exclude-result-prefixes="members xalan"
+ xmlns="http://ukfederation.org.uk/2007/01/members"
+ >
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/attic/patch_entity.pl b/attic/patch_entity.pl
index a720c6ba..a47c4dfa 100755
--- a/attic/patch_entity.pl
+++ b/attic/patch_entity.pl
@@ -5,4 +5,4 @@
next;
}
print $_;
-}
\ No newline at end of file
+}
diff --git a/build.xml b/build.xml
index 3d51a54d..947cf0ee 100644
--- a/build.xml
+++ b/build.xml
@@ -145,9 +145,10 @@
Metadata Distribution Service server properties.
-->
-
-
-
+
+
+
+
@@ -171,7 +172,7 @@
Web server properties.
-->
-
+
@@ -521,7 +522,7 @@
fs.tar.mdqcache">
Stage 4 Success: MDQ cache created; all files comitted to data repository.
-
+
- Switching to deferred branch in data repository.
+ Switching to master branch in data repository.
@@ -1186,7 +1187,7 @@
-
+
@@ -1269,52 +1270,68 @@
- Verifying metadata held at ${md.dist.host1.name}
- Verifying metadata held at ${md.dist.host-ne-01.name}
+
+
+
+
+
+
+
+
+ Verifying metadata held at ${md.dist.host-ne-02.name}
+
-
-
-
-
-
-
- Verifying metadata held at ${md.dist.host2.name}
- Verifying metadata held at ${md.dist.host-we-01.name}
+
-
-
-
-
-
-
- Verifying metadata held at ${md.dist.host3.name}
- Verifying metadata held at ${md.dist.host-we-02.name}
+
-
-
-
-
-
-
Verification completed.
@@ -1689,7 +1706,7 @@
-
+
@@ -2040,22 +2057,28 @@
Push metadata files for the UK Federation to the MD dist servers
-->
Pushing UK Federation metadata files to MD dist.
- -> MD1
+ -> MD-NE-01
+
+
+
+
+
+ -> MD-NE-02
-
+
- -> MD2
+ -> MD-WE-01
-
+
- -> MD3
+ -> MD-WE-01
-
+
@@ -2065,20 +2088,26 @@
Push mdq cache tar to the MD dist servers
-->
Pushing UK Federation mdq cache to MD dist.
- -> MD1
-
+ -> MD-NE-01
+
- -> MD2
-
+ -> MD-NE-02
+
- -> MD3
-
+ -> MD-WE-01
+
+
+
+
+
+ -> MD-WE-02
+
@@ -2294,6 +2323,15 @@
+
+
+
+
+
+
@@ -2434,6 +2472,29 @@
+
+
+ Extracting embedded certificates
+
+ Checking embedded certificates
+ Note: ignore expiry on eduGAIN entities
+
+
+
+
+
+
+
diff --git a/build/extract_addresses.xsl b/build/extract_addresses.xsl
index 24bcf16a..76dbd4c5 100644
--- a/build/extract_addresses.xsl
+++ b/build/extract_addresses.xsl
@@ -1,46 +1,45 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:ds="http://www.w3.org/2000/09/xmldsig#"
+ xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ exclude-result-prefixes="md ds">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/build/extract_cert_locs.xsl b/build/extract_cert_locs.xsl
index 983f7194..46a293e6 100644
--- a/build/extract_cert_locs.xsl
+++ b/build/extract_cert_locs.xsl
@@ -1,40 +1,40 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ exclude-result-prefixes="md">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/build/extract_embedded.xsl b/build/extract_embedded.xsl
index 9dc0d3bb..751a6a91 100644
--- a/build/extract_embedded.xsl
+++ b/build/extract_embedded.xsl
@@ -1,62 +1,62 @@
-
-
-
-
-
-
-
-
-
-
-
-
- Entity:
-
- [
-
- ]
-
-
- KeyName:
-
-
-
-
-
- (none)
-
-
-
- -----BEGIN CERTIFICATE-----
-
-
- -----END CERTIFICATE-----
-
-
-
-
-
-
-
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:ds="http://www.w3.org/2000/09/xmldsig#"
+ xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:mdxTextUtils="xalan://uk.ac.sdss.xalan.md.TextUtils">
+
+
+
+
+
+
+
+
+
+
+
+
+ Entity:
+
+ [
+
+ ]
+
+
+ KeyName:
+
+
+
+
+
+ (none)
+
+
+
+ -----BEGIN CERTIFICATE-----
+
+
+ -----END CERTIFICATE-----
+
+
+
+
+
+
+
diff --git a/build/extract_locs.xsl b/build/extract_locs.xsl
index db55917b..468b75e2 100644
--- a/build/extract_locs.xsl
+++ b/build/extract_locs.xsl
@@ -1,46 +1,45 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:ds="http://www.w3.org/2000/09/xmldsig#"
+ xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ exclude-result-prefixes="md ds">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/build/extract_nk_cert_locs.xsl b/build/extract_nk_cert_locs.xsl
index b18d937d..08b25ce2 100644
--- a/build/extract_nk_cert_locs.xsl
+++ b/build/extract_nk_cert_locs.xsl
@@ -1,54 +1,54 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+ xmlns:ds="http://www.w3.org/2000/09/xmldsig#"
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ exclude-result-prefixes="md">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/build/extract_nk_nocert_locs.xsl b/build/extract_nk_nocert_locs.xsl
index fae05589..1a9afcc5 100644
--- a/build/extract_nk_nocert_locs.xsl
+++ b/build/extract_nk_nocert_locs.xsl
@@ -1,57 +1,56 @@
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:ds="http://www.w3.org/2000/09/xmldsig#"
+ xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ exclude-result-prefixes="md ds">
-
-
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/build/extract_nocert_locs.xsl b/build/extract_nocert_locs.xsl
index 335e0fc7..054d09bf 100644
--- a/build/extract_nocert_locs.xsl
+++ b/build/extract_nocert_locs.xsl
@@ -1,42 +1,41 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:ds="http://www.w3.org/2000/09/xmldsig#"
+ xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ exclude-result-prefixes="md ds">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/build/find_OpenAthens_entities_not_in_Eduserv_metadata.xq b/build/find_OpenAthens_entities_not_in_Eduserv_metadata.xq
index e7617b9e..1d134de6 100644
--- a/build/find_OpenAthens_entities_not_in_Eduserv_metadata.xq
+++ b/build/find_OpenAthens_entities_not_in_Eduserv_metadata.xq
@@ -24,4 +24,4 @@ return
{data($f/@entityID)}
}
-
\ No newline at end of file
+
diff --git a/charting/fetch.pl b/charting/fetch.pl
index 9b01e351..47d3e51e 100755
--- a/charting/fetch.pl
+++ b/charting/fetch.pl
@@ -1,8 +1,9 @@
-#!/usr/bin/env perl -w
+#!/usr/bin/env perl
#
# fetch.pl
#
+use warnings;
use File::stat;
use Months;
diff --git a/charting/just_ours.xsl b/charting/just_ours.xsl
index 5c7323c0..3324d60f 100644
--- a/charting/just_ours.xsl
+++ b/charting/just_ours.xsl
@@ -1,44 +1,44 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+ xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata"
+ xmlns:mdrpi="urn:oasis:names:tc:SAML:metadata:rpi"
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/charting/mdui.pl b/charting/mdui.pl
index b6e14bd0..fb2a6bfd 100755
--- a/charting/mdui.pl
+++ b/charting/mdui.pl
@@ -1,8 +1,9 @@
-#!/usr/bin/env perl -w
+#!/usr/bin/env perl
#
# mdui.pl
#
+use warnings;
use lib "../build";
use Xalan;
use Months;
diff --git a/charting/saml2.pl b/charting/saml2.pl
index bc69fd04..fd790429 100755
--- a/charting/saml2.pl
+++ b/charting/saml2.pl
@@ -1,10 +1,11 @@
-#!/usr/bin/env perl -w
+#!/usr/bin/env perl
#
# saml2.pl
#
# Extracts statistics about SAML 2 adoption from the published metadata.
#
+use warnings;
use lib "../build";
use Xalan;
use Months;
diff --git a/charting/saml2.xsl b/charting/saml2.xsl
index 17780729..04dd4455 100644
--- a/charting/saml2.xsl
+++ b/charting/saml2.xsl
@@ -1,52 +1,52 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata"
+ xmlns:mdrpi="urn:oasis:names:tc:SAML:metadata:rpi"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ exclude-result-prefixes="md mdrpi">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/charting/scopes.pl b/charting/scopes.pl
index 2e38809d..3927471b 100755
--- a/charting/scopes.pl
+++ b/charting/scopes.pl
@@ -1,10 +1,11 @@
-#!/usr/bin/env perl -w
+#!/usr/bin/env perl
#
# scopes.pl
#
# Extracts statistics about number of scopes from the published metadata.
#
+use warnings;
use lib "../build";
use Xalan;
use Months;
diff --git a/charting/scopes.xsl b/charting/scopes.xsl
index 6b05fd54..76e808c2 100644
--- a/charting/scopes.xsl
+++ b/charting/scopes.xsl
@@ -1,46 +1,46 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:shibmd="urn:mace:shibboleth:metadata:1.0"
+ xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata"
+ xmlns:mdrpi="urn:oasis:names:tc:SAML:metadata:rpi"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/charting/sizes.pl b/charting/sizes.pl
index 4d36b33d..004c6e3f 100755
--- a/charting/sizes.pl
+++ b/charting/sizes.pl
@@ -1,8 +1,9 @@
-#!/usr/bin/env perl -w
+#!/usr/bin/env perl
#
# sizes.pl
#
+use warnings;
use lib "../build";
use File::stat;
use Xalan;
diff --git a/charting/statistics_mdui.xsl b/charting/statistics_mdui.xsl
index 1faf2ae3..15c37bf5 100644
--- a/charting/statistics_mdui.xsl
+++ b/charting/statistics_mdui.xsl
@@ -27,7 +27,7 @@
+ [descendant::mdrpi:RegistrationInfo/@registrationAuthority='http://ukfederation.org.uk']"/>
diff --git a/mdx/_rules/check_adfs.xsl b/mdx/_rules/check_adfs.xsl
index c5336cc8..0381d285 100644
--- a/mdx/_rules/check_adfs.xsl
+++ b/mdx/_rules/check_adfs.xsl
@@ -1,77 +1,77 @@
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns="urn:oasis:names:tc:SAML:2.0:metadata">
+
+
+
+
+
+
+
+ ADFS IdP role lacks SSO service with appropriate Binding
+
+
+
+
+
+
+ ADFS SP role lacks SSO service with appropriate Binding
+
+
+
+
+
+
+ ADFS SingleSignOnService requires appropriate protocolSupportEnumeration
+
+
+
+
+
+ ADFS AssertionConsumerService requires appropriate protocolSupportEnumeration
+
+
-
-
+
+
+ ADFS SingleLogoutService requires appropriate protocolSupportEnumeration
+
+
-
-
-
- ADFS IdP role lacks SSO service with appropriate Binding
-
-
-
-
-
-
- ADFS SP role lacks SSO service with appropriate Binding
-
-
-
-
-
-
- ADFS SingleSignOnService requires appropriate protocolSupportEnumeration
-
-
-
-
-
- ADFS AssertionConsumerService requires appropriate protocolSupportEnumeration
-
-
-
-
-
- ADFS SingleLogoutService requires appropriate protocolSupportEnumeration
-
-
-
diff --git a/mdx/_rules/check_aggregate.xsl b/mdx/_rules/check_aggregate.xsl
index e331c1c2..44337a70 100644
--- a/mdx/_rules/check_aggregate.xsl
+++ b/mdx/_rules/check_aggregate.xsl
@@ -1,45 +1,45 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- duplicate entityID:
-
-
-
-
-
-
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata"
+ xmlns:set="http://exslt.org/sets"
+ xmlns="urn:oasis:names:tc:SAML:2.0:metadata">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ duplicate entityID:
+
+
+
+
+
+
diff --git a/mdx/_rules/check_algsupport.xsl b/mdx/_rules/check_algsupport.xsl
index 2902221f..b9a0962d 100644
--- a/mdx/_rules/check_algsupport.xsl
+++ b/mdx/_rules/check_algsupport.xsl
@@ -1,64 +1,64 @@
+ xmlns:alg="urn:oasis:names:tc:SAML:metadata:algsupport"
+ xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns="urn:oasis:names:tc:SAML:2.0:metadata">
+
+
+
+
+
+
+
+ EncryptionMethod should not be present on 'signing' KeyDescriptor
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ alg:
+
+ must only appear within an Extensions element
+
+
+
+
+
+
-
-
+
+
+
-
-
-
- EncryptionMethod should not be present on 'signing' KeyDescriptor
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- alg:
-
- must only appear within an Extensions element
-
-
-
-
-
-
-
-
-
-
-
diff --git a/mdx/_rules/check_bindings.xsl b/mdx/_rules/check_bindings.xsl
index 2525981a..b371869d 100644
--- a/mdx/_rules/check_bindings.xsl
+++ b/mdx/_rules/check_bindings.xsl
@@ -1,176 +1,178 @@
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns="urn:oasis:names:tc:SAML:2.0:metadata">
+
+
+
+
+
+
+
+ invalid binding '
+
+ ' on
+
+
+
+
+
+
+
+
+ invalid binding '
+
+ ' on
+
+
+
+
+
+
+
+
+ invalid binding '
+
+ ' on
+
+
+
+
+
+
+
+
+ invalid binding '
+
+ ' on
+
+
+
+
+
+
+
+
+ invalid binding '
+
+ ' on
+
+
+
+
+
+
+
+
+ invalid binding '
+
+ ' on
+
+
+
+
-
-
+
+
+
+ invalid binding '
+
+ ' on
+
+
+
+
-
-
-
- invalid binding '
-
- ' on
-
-
-
-
-
-
-
-
- invalid binding '
-
- ' on
-
-
-
-
-
-
-
-
- invalid binding '
-
- ' on
-
-
-
-
+
+
+
+ invalid binding '
+
+ ' on
+
+
+
+
-
-
-
- invalid binding '
-
- ' on
-
-
-
-
-
-
-
-
- invalid binding '
-
- ' on
-
-
-
-
-
-
-
-
- invalid binding '
-
- ' on
-
-
-
-
+
+
+
+
+ unknown binding '
+
+ ' on
+
+
+
+
-
-
-
- invalid binding '
-
- ' on
-
-
-
-
-
-
-
-
- invalid binding '
-
- ' on
-
-
-
-
-
-
-
-
-
- unknown binding '
-
- ' on
-
-
-
-
-
diff --git a/mdx/_rules/check_entityid_prefix.xsl b/mdx/_rules/check_entityid_prefix.xsl
index 6c8e4c71..bf53c54a 100644
--- a/mdx/_rules/check_entityid_prefix.xsl
+++ b/mdx/_rules/check_entityid_prefix.xsl
@@ -1,33 +1,33 @@
-
-
-
-
-
-
-
-
- entity ID does not start with acceptable prefix
-
-
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata"
+ xmlns="urn:oasis:names:tc:SAML:2.0:metadata">
+
+
+
+
+
+
+
+
+ entity ID does not start with acceptable prefix
+
+
diff --git a/mdx/_rules/check_filtered.xsl b/mdx/_rules/check_filtered.xsl
index fdb40a1f..83c057dd 100644
--- a/mdx/_rules/check_filtered.xsl
+++ b/mdx/_rules/check_filtered.xsl
@@ -1,35 +1,35 @@
-
-
-
-
-
-
-
- ds:X509SerialNumber should have been filtered out
-
-
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:ds="http://www.w3.org/2000/09/xmldsig#"
+ xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata"
+ xmlns:saml="urn:oasis:names:tc:SAML:2.0:assertion"
+ xmlns:shibmd="urn:mace:shibboleth:metadata:1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:idpdisc="urn:oasis:names:tc:SAML:profiles:SSO:idp-discovery-protocol"
+ xmlns="urn:oasis:names:tc:SAML:2.0:metadata">
+
+
+
+
+
+
+
+ ds:X509SerialNumber should have been filtered out
+
+
diff --git a/mdx/_rules/check_framework.xsl b/mdx/_rules/check_framework.xsl
index 613c1b6a..f4e8d017 100644
--- a/mdx/_rules/check_framework.xsl
+++ b/mdx/_rules/check_framework.xsl
@@ -1,128 +1,128 @@
-
-
-
-
-
-
-
-
-
-
- [ERROR]
-
-
-
-
-
-
-
-
-
-
-
- :
-
-
-
-
-
-
-
-
-
-
-
- [WARN]
-
-
-
-
-
-
-
-
-
-
-
- :
-
-
-
-
-
-
-
-
-
-
-
- [INFO]
-
-
-
-
-
-
-
-
-
-
-
- :
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+
+
+
+
+
+
+
+
+
+
+ [ERROR]
+
+
+
+
+
+
+
+
+
+
+
+ :
+
+
+
+
+
+
+
+
+
+
+
+ [WARN]
+
+
+
+
+
+
+
+
+
+
+
+ :
+
+
+
+
+
+
+
+
+
+
+
+ [INFO]
+
+
+
+
+
+
+
+
+
+
+
+ :
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/mdx/_rules/check_future_0.xsl b/mdx/_rules/check_future_0.xsl
index f503721c..809f9ee0 100644
--- a/mdx/_rules/check_future_0.xsl
+++ b/mdx/_rules/check_future_0.xsl
@@ -1,31 +1,30 @@
+ xmlns="urn:oasis:names:tc:SAML:2.0:metadata">
-
-
+
+
diff --git a/mdx/_rules/check_future_1.xsl b/mdx/_rules/check_future_1.xsl
index fef00c40..ed05b114 100644
--- a/mdx/_rules/check_future_1.xsl
+++ b/mdx/_rules/check_future_1.xsl
@@ -1,31 +1,30 @@
+ xmlns="urn:oasis:names:tc:SAML:2.0:metadata">
-
-
+
+
diff --git a/mdx/_rules/check_future_2.xsl b/mdx/_rules/check_future_2.xsl
index c944e5b4..ee51f733 100644
--- a/mdx/_rules/check_future_2.xsl
+++ b/mdx/_rules/check_future_2.xsl
@@ -1,31 +1,30 @@
+ xmlns="urn:oasis:names:tc:SAML:2.0:metadata">
-
-
+
+
diff --git a/mdx/_rules/check_future_3.xsl b/mdx/_rules/check_future_3.xsl
index f0e655b9..a0b99011 100644
--- a/mdx/_rules/check_future_3.xsl
+++ b/mdx/_rules/check_future_3.xsl
@@ -1,32 +1,31 @@
-
-
-
-
-
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:ds="http://www.w3.org/2000/09/xmldsig#"
+ xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata"
+ xmlns:mdui="urn:oasis:names:tc:SAML:metadata:ui"
+ xmlns:saml="urn:oasis:names:tc:SAML:2.0:assertion"
+ xmlns:shibmd="urn:mace:shibboleth:metadata:1.0"
+ xmlns:set="http://exslt.org/sets"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:idpdisc="urn:oasis:names:tc:SAML:profiles:SSO:idp-discovery-protocol"
+
+ xmlns="urn:oasis:names:tc:SAML:2.0:metadata">
+
+
+
+
+
diff --git a/mdx/_rules/check_future_4.xsl b/mdx/_rules/check_future_4.xsl
index 7c8ae169..8a7084f8 100644
--- a/mdx/_rules/check_future_4.xsl
+++ b/mdx/_rules/check_future_4.xsl
@@ -1,31 +1,30 @@
+ xmlns="urn:oasis:names:tc:SAML:2.0:metadata">
-
-
+
+
diff --git a/mdx/_rules/check_future_5.xsl b/mdx/_rules/check_future_5.xsl
index 326c22c2..8ebfc25d 100644
--- a/mdx/_rules/check_future_5.xsl
+++ b/mdx/_rules/check_future_5.xsl
@@ -1,26 +1,26 @@
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata"
+ xmlns:mdui="urn:oasis:names:tc:SAML:metadata:ui"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:idpdisc="urn:oasis:names:tc:SAML:profiles:SSO:idp-discovery-protocol"
+ xmlns:set="http://exslt.org/sets"
+ xmlns="urn:oasis:names:tc:SAML:2.0:metadata">
-
-
+
+
diff --git a/mdx/_rules/check_future_6.xsl b/mdx/_rules/check_future_6.xsl
index b312f48e..14726df4 100644
--- a/mdx/_rules/check_future_6.xsl
+++ b/mdx/_rules/check_future_6.xsl
@@ -1,26 +1,26 @@
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata"
+ xmlns:mdui="urn:oasis:names:tc:SAML:metadata:ui"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:idpdisc="urn:oasis:names:tc:SAML:profiles:SSO:idp-discovery-protocol"
+ xmlns:set="http://exslt.org/sets"
+ xmlns="urn:oasis:names:tc:SAML:2.0:metadata">
-
-
+
+
diff --git a/mdx/_rules/check_future_7.xsl b/mdx/_rules/check_future_7.xsl
index 65f06792..5dbd9a92 100644
--- a/mdx/_rules/check_future_7.xsl
+++ b/mdx/_rules/check_future_7.xsl
@@ -1,27 +1,27 @@
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata"
+ xmlns:mdui="urn:oasis:names:tc:SAML:metadata:ui"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:idpdisc="urn:oasis:names:tc:SAML:profiles:SSO:idp-discovery-protocol"
+ xmlns:set="http://exslt.org/sets"
+ xmlns="urn:oasis:names:tc:SAML:2.0:metadata">
-
-
+
+
diff --git a/mdx/_rules/check_future_8.xsl b/mdx/_rules/check_future_8.xsl
index 52030060..c763514f 100644
--- a/mdx/_rules/check_future_8.xsl
+++ b/mdx/_rules/check_future_8.xsl
@@ -1,27 +1,27 @@
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata"
+ xmlns:mdui="urn:oasis:names:tc:SAML:metadata:ui"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:idpdisc="urn:oasis:names:tc:SAML:profiles:SSO:idp-discovery-protocol"
+ xmlns:set="http://exslt.org/sets"
+ xmlns="urn:oasis:names:tc:SAML:2.0:metadata">
-
-
+
+
diff --git a/mdx/_rules/check_future_9.xsl b/mdx/_rules/check_future_9.xsl
index edfbec8e..54911d3d 100644
--- a/mdx/_rules/check_future_9.xsl
+++ b/mdx/_rules/check_future_9.xsl
@@ -1,27 +1,27 @@
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata"
+ xmlns:mdui="urn:oasis:names:tc:SAML:metadata:ui"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:idpdisc="urn:oasis:names:tc:SAML:profiles:SSO:idp-discovery-protocol"
+ xmlns:set="http://exslt.org/sets"
+ xmlns="urn:oasis:names:tc:SAML:2.0:metadata">
-
-
+
+
diff --git a/mdx/_rules/check_hasreginfo.xsl b/mdx/_rules/check_hasreginfo.xsl
index f3319047..e2cb6801 100644
--- a/mdx/_rules/check_hasreginfo.xsl
+++ b/mdx/_rules/check_hasreginfo.xsl
@@ -1,27 +1,27 @@
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata"
+ xmlns:mdrpi="urn:oasis:names:tc:SAML:metadata:rpi"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns="urn:oasis:names:tc:SAML:2.0:metadata">
+
+
+
+
+
+
+ entity does not have an mdrpi:RegistrationInfo element
+
+
-
-
-
-
-
- entity does not have an mdrpi:RegistrationInfo element
-
-
-
diff --git a/mdx/_rules/check_hoksso.xsl b/mdx/_rules/check_hoksso.xsl
index ed17d412..d3e50bc1 100644
--- a/mdx/_rules/check_hoksso.xsl
+++ b/mdx/_rules/check_hoksso.xsl
@@ -1,160 +1,160 @@
-
-
-
-
-
-
-
-
-
- unknown element hoksso:
-
-
-
-
-
-
-
-
- unknown attribute hoksso:
-
-
-
-
-
-
-
-
-
- hoksso:ProtocolBinding may not appear on
-
-
-
-
-
-
-
-
-
- hoksso:ProtocolBinding requires @Binding of
- urn:oasis:names:tc:SAML:2.0:profiles:holder-of-key:SSO:browser
- , saw
-
-
-
-
-
-
-
-
-
-
- holder of key SSO @Binding on
-
- also requires hoksso:ProtocolBinding
-
-
-
-
-
-
-
- holder of key SSO requires appropriate hoksso:ProtocolBinding
-
- , saw
-
-
-
-
-
-
-
-
-
- holder of key SSO requires appropriate hoksso:ProtocolBinding
-
- , saw
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+ unknown element hoksso:
+
+
+
+
+
+
+
+
+ unknown attribute hoksso:
+
+
+
+
+
+
+
+
+
+ hoksso:ProtocolBinding may not appear on
+
+
+
+
+
+
+
+
+
+ hoksso:ProtocolBinding requires @Binding of
+ urn:oasis:names:tc:SAML:2.0:profiles:holder-of-key:SSO:browser
+ , saw
+
+
+
+
+
+
+
+
+
+
+ holder of key SSO @Binding on
+
+ also requires hoksso:ProtocolBinding
+
+
+
+
+
+
+
+ holder of key SSO requires appropriate hoksso:ProtocolBinding
+
+ , saw
+
+
+
+
+
+
+
+
+
+ holder of key SSO requires appropriate hoksso:ProtocolBinding
+
+ , saw
+
+
+
+
+
+
+
-
-
-
- holder of key binding requires SAML 2.0 token in AttributeAuthorityDescriptor/@protocolSupportEnumeration
-
-
-
-
-
-
-
- holder of key binding requires SAML 2.0 token in SPSSODescriptor/@protocolSupportEnumeration
-
-
-
-
+
+
+
+ holder of key binding requires SAML 2.0 token in AttributeAuthorityDescriptor/@protocolSupportEnumeration
+
+
+
+
+
+
+
+ holder of key binding requires SAML 2.0 token in SPSSODescriptor/@protocolSupportEnumeration
+
+
+
+
diff --git a/mdx/_rules/check_idp_tls.xsl b/mdx/_rules/check_idp_tls.xsl
index bb6fa6dd..b06074b4 100644
--- a/mdx/_rules/check_idp_tls.xsl
+++ b/mdx/_rules/check_idp_tls.xsl
@@ -1,36 +1,46 @@
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata"
+ xmlns="urn:oasis:names:tc:SAML:2.0:metadata">
-
-
+
+
-
+
Location does not start with https://
-
-
- Location does not start with https://
-
-
+
+
+ ResponseLocation does not start with https://
+
+
+
+
+ Location does not start with https://
+
+
+
+
+ ResponseLocation does not start with https://
+
+
diff --git a/mdx/_rules/check_idpdisc.xsl b/mdx/_rules/check_idpdisc.xsl
index 14077c40..0b4766a7 100644
--- a/mdx/_rules/check_idpdisc.xsl
+++ b/mdx/_rules/check_idpdisc.xsl
@@ -1,65 +1,65 @@
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:idpdisc="urn:oasis:names:tc:SAML:profiles:SSO:idp-discovery-protocol"
+ xmlns:set="http://exslt.org/sets"
+ xmlns="urn:oasis:names:tc:SAML:2.0:metadata">
+
+
+
+
+
+
+
+
+
+
+
+ DiscoveryResponse index values not all different
+
+
+
+
+
+
+
+
+
+
+ missing index attribute on DiscoveryResponse
+
+
+
+
+
+ missing Binding attribute on DiscoveryResponse
+
+
+
+
+
+ incorrect Binding value on DiscoveryResponse
+
+
-
-
-
-
-
-
-
-
-
- DiscoveryResponse index values not all different
-
-
-
-
-
-
-
-
-
-
- missing index attribute on DiscoveryResponse
-
-
-
-
-
- missing Binding attribute on DiscoveryResponse
-
-
-
-
-
- incorrect Binding value on DiscoveryResponse
-
-
-
-
diff --git a/mdx/_rules/check_imported.xsl b/mdx/_rules/check_imported.xsl
index e632f40d..b3064734 100644
--- a/mdx/_rules/check_imported.xsl
+++ b/mdx/_rules/check_imported.xsl
@@ -1,42 +1,42 @@
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:ds="http://www.w3.org/2000/09/xmldsig#"
+ xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata"
+ xmlns:saml="urn:oasis:names:tc:SAML:2.0:assertion"
+ xmlns:shibmd="urn:mace:shibboleth:metadata:1.0"
+ xmlns:dyn="http://exslt.org/dynamic"
+ xmlns:set="http://exslt.org/sets"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:idpdisc="urn:oasis:names:tc:SAML:profiles:SSO:idp-discovery-protocol"
+ xmlns="urn:oasis:names:tc:SAML:2.0:metadata">
+
+
+
-
-
+
+
+
+
+
+ this IdP does not have any Scope elements
+
+
+
-
-
-
-
-
- this IdP does not have any Scope elements
-
-
-
-
diff --git a/mdx/_rules/check_incmd.xsl b/mdx/_rules/check_incmd.xsl
index 214860a3..2af81047 100644
--- a/mdx/_rules/check_incmd.xsl
+++ b/mdx/_rules/check_incmd.xsl
@@ -1,97 +1,97 @@
-
-
-
-
-
-
-
-
- incmd:contactType should only appear on md:ContactPerson
-
-
-
-
-
-
- incmd:contactType requires contactType='other', found '
-
- '
-
-
-
-
-
-
- incmd:contactType must be an absolute URI
-
-
-
-
-
-
-
- unknown value '
-
- ' for incmd:contactType
-
-
-
-
-
-
-
-
-
-
-
-
-
- unknown element incmd:
-
-
-
-
-
-
-
-
- unknown attribute incmd:
-
-
-
-
-
+ xmlns:incmd="http://id.incommon.org/metadata"
+ xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+
+ xmlns="urn:oasis:names:tc:SAML:2.0:metadata">
+
+
+
+
+
+
+
+
+ incmd:contactType should only appear on md:ContactPerson
+
+
+
+
+
+
+ incmd:contactType requires contactType='other', found '
+
+ '
+
+
+
+
+
+
+ incmd:contactType must be an absolute URI
+
+
+
+
+
+
+
+ unknown value '
+
+ ' for incmd:contactType
+
+
+
+
+
+
+
+
+
+
+
+
+
+ unknown element incmd:
+
+
+
+
+
+
+
+
+ unknown attribute incmd:
+
+
+
+
+
diff --git a/mdx/_rules/check_init.xsl b/mdx/_rules/check_init.xsl
index f33fd624..c7349ddd 100644
--- a/mdx/_rules/check_init.xsl
+++ b/mdx/_rules/check_init.xsl
@@ -1,42 +1,42 @@
-
-
-
-
-
-
-
-
- missing Binding attribute on RequestInitiator
-
-
-
-
-
- incorrect Binding value on RequestInitiator
-
-
-
-
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:init="urn:oasis:names:tc:SAML:profiles:SSO:request-init"
+ xmlns="urn:oasis:names:tc:SAML:2.0:metadata">
+
+
+
+
+
+
+
+
+ missing Binding attribute on RequestInitiator
+
+
+
+
+
+ incorrect Binding value on RequestInitiator
+
+
+
+
diff --git a/mdx/_rules/check_mdattr.xsl b/mdx/_rules/check_mdattr.xsl
index f5782d52..3b0e6ad3 100644
--- a/mdx/_rules/check_mdattr.xsl
+++ b/mdx/_rules/check_mdattr.xsl
@@ -1,70 +1,70 @@
+
+
+
+
+
+
+
+ EntityAttributes must only appear within an Extensions element
+
+
+
+
+ EntityAttributes must only appear within Extensions of EntityDescriptor or EntitiesDescriptor
+
+
+
+
+
+
+ Assertion may not appear in the EntityAttributes for an EntitiesDescriptor
+
+
-
-
-
-
-
-
- EntityAttributes must only appear within an Extensions element
-
-
-
-
- EntityAttributes must only appear within Extensions of EntityDescriptor or EntitiesDescriptor
-
-
-
-
-
-
- Assertion may not appear in the EntityAttributes for an EntitiesDescriptor
-
-
+ EntityAttributes MUST NOT appear more than once within a given element.
+ -->
+
+
+ more than one EntityAttributes element in an Extensions element
+
+
-
-
-
- more than one EntityAttributes element in an Extensions element
-
-
-
diff --git a/mdx/_rules/check_mdiop.xsl b/mdx/_rules/check_mdiop.xsl
index ac3104fd..ee0ec366 100644
--- a/mdx/_rules/check_mdiop.xsl
+++ b/mdx/_rules/check_mdiop.xsl
@@ -1,46 +1,46 @@
-
-
-
-
-
-
-
- KeyDescriptor does not contain a key representation
-
-
-
-
-
-
- KeyDescriptor contains more than one X509Certificate
-
-
-
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:ds="http://www.w3.org/2000/09/xmldsig#"
+ xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns="urn:oasis:names:tc:SAML:2.0:metadata">
+
+
+
+
+
+
+
+ KeyDescriptor does not contain a key representation
+
+
+
+
+
+
+ KeyDescriptor contains more than one X509Certificate
+
+
+
diff --git a/mdx/_rules/check_mdrpi.xsl b/mdx/_rules/check_mdrpi.xsl
index db9911b9..0530f57a 100644
--- a/mdx/_rules/check_mdrpi.xsl
+++ b/mdx/_rules/check_mdrpi.xsl
@@ -1,175 +1,175 @@
-
-
-
-
-
-
-
- RegistrationInfo must only appear within an Extensions element
-
-
-
-
- RegistrationInfo must only appear within Extensions of EntityDescriptor or EntitiesDescriptor
-
-
-
-
-
-
- more than one RegistrationInfo element in one Extensions element
-
-
-
-
-
-
- RegistrationInfo may not appear on both EntitiesDescriptor and child elements
-
-
-
-
-
-
-
- registrationInstant does not end with 'Z':
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- non-unique lang values on
-
- elements
-
-
-
-
-
-
+
+
+
+
+
+ RegistrationInfo must only appear within an Extensions element
+
+
+
+
+ RegistrationInfo must only appear within Extensions of EntityDescriptor or EntitiesDescriptor
+
+
+
+
+
+
+ more than one RegistrationInfo element in one Extensions element
+
+
+
+
+
+
+ RegistrationInfo may not appear on both EntitiesDescriptor and child elements
+
+
+
+
+
+
+
+ registrationInstant does not end with 'Z':
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ non-unique lang values on
+
+ elements
+
+
+
+
+
+
-
-
- PublicationInfo must only appear within an Extensions element
-
-
-
-
- PublicationInfo must only appear within Extensions of EntityDescriptor or EntitiesDescriptor
-
-
-
-
-
-
- PublicationInfo must be within document element's Extensions
-
-
-
-
+
+
+ PublicationInfo must be within document element's Extensions
+
+
+
+
-
-
- more than one PublicationInfo element in one Extensions element
-
-
-
-
-
-
-
- misspelled or misplaced mdrpi element within md:Extensions:
-
-
-
-
-
+
+
+
+ misspelled or misplaced mdrpi element within md:Extensions:
+
+
+
+
+
diff --git a/mdx/_rules/check_mdui.xsl b/mdx/_rules/check_mdui.xsl
index a2a53f44..547a524e 100644
--- a/mdx/_rules/check_mdui.xsl
+++ b/mdx/_rules/check_mdui.xsl
@@ -1,141 +1,141 @@
-
-
-
-
-
-
-
- more than one UIInfo element in one Extensions element
-
-
-
-
-
-
-
- misspelled or misplaced mdui element within md:Extensions:
-
-
-
-
-
-
-
-
- UIInfo appearing outside Extensions element
-
-
-
-
-
- UIInfo appearing outside SSO descriptor element (
-
- )
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- non-unique lang values on
-
- elements
-
-
-
-
-
-
-
-
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:ds="http://www.w3.org/2000/09/xmldsig#"
+ xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata"
+ xmlns:mdui="urn:oasis:names:tc:SAML:metadata:ui"
+ xmlns:mdxURL="xalan://uk.ac.sdss.xalan.md.URLchecker"
+ xmlns:set="http://exslt.org/sets"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns="urn:oasis:names:tc:SAML:2.0:metadata">
+
+
+
+
+
+
+
+ more than one UIInfo element in one Extensions element
+
+
+
+
+
+
+
+ misspelled or misplaced mdui element within md:Extensions:
+
+
+
+
+
+
+
+
+ UIInfo appearing outside Extensions element
+
+
+
+
+
+ UIInfo appearing outside SSO descriptor element (
+
+ )
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ non-unique lang values on
+
+ elements
+
+
+
+
+
+
+
+
-
-
-
- mdui:Logo URL does not start with https://
-
-
-
-
+
+
+
+
+
+ mdui:Logo URL does not start with https://
+
+
+
+
@@ -190,85 +190,85 @@
-
-
-
-
-
-
- mdui:
-
- '
-
- ' is not a valid URL:
-
-
-
-
-
-
+
+
+
+ mdui:
+
+ '
+
+ ' is not a valid URL:
+
+
+
+
+
+
-
-
-
- mdui:
-
- '
-
- ' is not a valid URL:
-
-
-
-
-
-
-
-
- DiscoHints appearing outside Extensions element
-
-
-
-
-
- DiscoHints appearing outside IDPSSODescriptor element (
-
- )
-
-
-
-
-
-
-
- more than one DiscoHints element in one Extensions element
-
-
-
-
-
-
- GeolocationHint must be RFC5870 URI starting with 'geo:'
-
-
-
+
+
+
+ mdui:
+
+ '
+
+ ' is not a valid URL:
+
+
+
+
+
+
+
+
+ DiscoHints appearing outside Extensions element
+
+
+
+
+
+ DiscoHints appearing outside IDPSSODescriptor element (
+
+ )
+
+
+
+
+
+
+
+ more than one DiscoHints element in one Extensions element
+
+
+
+
+
+
+ GeolocationHint must be RFC5870 URI starting with 'geo:'
+
+
+
diff --git a/mdx/_rules/check_misc.xsl b/mdx/_rules/check_misc.xsl
index 1b498ab0..4288d858 100644
--- a/mdx/_rules/check_misc.xsl
+++ b/mdx/_rules/check_misc.xsl
@@ -1,93 +1,106 @@
-
-
-
-
-
-
-
-
- entity ID contains space character
-
-
-
-
-
-
-
- OrganizationDisplayName contains line break
-
-
-
-
-
-
-
- Location contains space character
-
-
-
-
-
-
-
- Binding contains space character
-
-
-
-
-
-
-
- empty xml:lang attribute
-
-
-
-
-
-
-
- bare 'ac.uk' scope not permitted
-
-
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:ds="http://www.w3.org/2000/09/xmldsig#"
+ xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata"
+ xmlns:shibmd="urn:mace:shibboleth:metadata:1.0"
+ xmlns="urn:oasis:names:tc:SAML:2.0:metadata">
+
+
+
+
+
+
+
+
+ entity ID contains space character
+
+
+
+
+
+
+
+ OrganizationDisplayName contains line break
+
+
+
+
+
+
+
+ Location contains space character
+
+
+
+
+
+
+
+ ResponseLocation contains space character
+
+
+
+
+
+
+
+ Binding contains space character
+
+
+
+
+
+
+
+ empty xml:lang attribute
+
+
+
+
+
+
+
+ bare 'ac.uk' scope not permitted
+
+
diff --git a/mdx/_rules/check_namespaces.xsl b/mdx/_rules/check_namespaces.xsl
index 315d39ca..fffd0369 100644
--- a/mdx/_rules/check_namespaces.xsl
+++ b/mdx/_rules/check_namespaces.xsl
@@ -1,112 +1,107 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Unknown namespace:
-
- on element
-
-
-
-
-
+ xmlns:alg="urn:oasis:names:tc:SAML:metadata:algsupport"
+ xmlns:ds="http://www.w3.org/2000/09/xmldsig#"
+ xmlns:hoksso="urn:oasis:names:tc:SAML:2.0:profiles:holder-of-key:SSO:browser"
+ xmlns:idpdisc="urn:oasis:names:tc:SAML:profiles:SSO:idp-discovery-protocol"
+ xmlns:init="urn:oasis:names:tc:SAML:profiles:SSO:request-init"
+ xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata"
+ xmlns:mdattr="urn:oasis:names:tc:SAML:metadata:attribute"
+ xmlns:mdrpi="urn:oasis:names:tc:SAML:metadata:rpi"
+ xmlns:mdui="urn:oasis:names:tc:SAML:metadata:ui"
+ xmlns:saml="urn:oasis:names:tc:SAML:2.0:assertion"
+ xmlns:shibmd="urn:mace:shibboleth:metadata:1.0"
+ xmlns:ukfedlabel="http://ukfederation.org.uk/2006/11/label"
+ xmlns:xenc="http://www.w3.org/2001/04/xmlenc#"
+
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns="urn:oasis:names:tc:SAML:2.0:metadata">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Unknown namespace:
+
+ on element
+
+
+
+
+
diff --git a/mdx/_rules/check_rands_member.xsl b/mdx/_rules/check_rands_member.xsl
index bee2e9d0..0d98138a 100644
--- a/mdx/_rules/check_rands_member.xsl
+++ b/mdx/_rules/check_rands_member.xsl
@@ -1,86 +1,86 @@
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata"
+ xmlns:mdattr="urn:oasis:names:tc:SAML:metadata:attribute"
+ xmlns:mdui="urn:oasis:names:tc:SAML:metadata:ui"
+ xmlns:saml="urn:oasis:names:tc:SAML:2.0:assertion"
+ xmlns="urn:oasis:names:tc:SAML:2.0:metadata">
-
-
+
+
-
-
-
-
-
- REFEDS R+S only applies to service provider entities
-
-
-
+
+
+
+
+
+ REFEDS R+S only applies to service provider entities
+
+
+
+
+
+ REFEDS R+S requires SAML 2.0 POST support
+
+
+
-
-
- REFEDS R+S requires SAML 2.0 POST support
-
-
-
-
-
- REFEDS R+S requires mdui:DisplayName
-
-
-
-
- REFEDS R+S requires mdui:InformationURL
-
-
-
+
+
+ REFEDS R+S requires mdui:DisplayName
+
+
+
+
+ REFEDS R+S requires mdui:InformationURL
+
+
+
-
-
- REFEDS R+S requires one or more technical contacts
-
-
-
-
+ The Service Provider provides one or more technical contacts in metadata.
+ -->
+
+
+ REFEDS R+S requires one or more technical contacts
+
+
+
+
diff --git a/mdx/_rules/check_rands_support.xsl b/mdx/_rules/check_rands_support.xsl
index fe92e6d8..c767b394 100644
--- a/mdx/_rules/check_rands_support.xsl
+++ b/mdx/_rules/check_rands_support.xsl
@@ -1,49 +1,49 @@
-
-
-
-
-
+
+
+
-
-
-
-
-
- REFEDS R+S support only applies to identity provider entities
-
-
-
-
+
+
+ REFEDS R+S support only applies to identity provider entities
+
+
+
+
diff --git a/mdx/_rules/check_regauth.xsl b/mdx/_rules/check_regauth.xsl
index e98400ae..617514ca 100644
--- a/mdx/_rules/check_regauth.xsl
+++ b/mdx/_rules/check_regauth.xsl
@@ -1,42 +1,42 @@
-
-
-
-
-
+
+
+
- (value not set)
-
-
-
-
-
- unexpected registration authority '
-
- '; expected '
-
- ' for this channel
-
-
-
-
-
+ (value not set)
+
+
+
+
+
+ unexpected registration authority '
+
+ '; expected '
+
+ ' for this channel
+
+
+
+
+
diff --git a/mdx/_rules/check_reqattr.xsl b/mdx/_rules/check_reqattr.xsl
index 6840a020..455d35e8 100644
--- a/mdx/_rules/check_reqattr.xsl
+++ b/mdx/_rules/check_reqattr.xsl
@@ -1,507 +1,507 @@
-
-
-
-
-
-
-
-
-
- RequestedAttribute
-
- lacks NameFormat attribute
- (implicitly 'urn:oasis:names:tc:SAML:2.0:attrname-format:unspecified')
-
-
-
-
-
-
-
-
-
- RequestedAttribute uses NameFormat of
-
- : unsuitable for cross-domain use
-
- (
-
- )
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- RequestedAttribute
-
- (
-
- )
-
- uses OID name
-
- with SAML 1.x NameFormat: should use urn:mace name or SAML 2.0 NameFormat
-
-
-
-
-
-
-
-
-
-
-
-
-
- RequestedAttribute
-
- (
-
- )
-
- uses OID name
-
- with SAML 1.x NameFormat: should use urn:mace name or SAML 2.0 NameFormat
-
-
-
-
-
-
-
-
-
-
-
-
-
- RequestedAttribute uses OID name
-
- with SAML 1.x NameFormat: should use urn:mace name or SAML 2.0 NameFormat
-
- (
-
- )
-
-
-
-
-
-
+
+
+
+
+
+
+
+ RequestedAttribute
+
+ lacks NameFormat attribute
+ (implicitly 'urn:oasis:names:tc:SAML:2.0:attrname-format:unspecified')
+
+
+
+
+
+
+
+
+
+ RequestedAttribute uses NameFormat of
+
+ : unsuitable for cross-domain use
+
+ (
+
+ )
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ RequestedAttribute
+
+ (
+
+ )
+
+ uses OID name
+
+ with SAML 1.x NameFormat: should use urn:mace name or SAML 2.0 NameFormat
+
+
+
+
+
+
+
+
+
+
+
+
+
+ RequestedAttribute
+
+ (
+
+ )
+
+ uses OID name
+
+ with SAML 1.x NameFormat: should use urn:mace name or SAML 2.0 NameFormat
+
+
+
+
+
+
+
+
+
+
+
+
+
+ RequestedAttribute uses OID name
+
+ with SAML 1.x NameFormat: should use urn:mace name or SAML 2.0 NameFormat
+
+ (
+
+ )
+
+
+
+
+
+
-
-
-
-
-
+
+
+
-
-
-
- RequestedAttribute uses OID name
-
- with SAML 1.x NameFormat: should use urn:mace name or SAML 2.0 NameFormat
-
- (
-
- )
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- RequestedAttribute uses unknown name
-
- with SAML 1.x NameFormat
-
- (
-
- )
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- RequestedAttribute uses legacy MACEAttr name
-
- with SAML 2.0 NameFormat: should use urn:oid name or SAML 1.x NameFormat
-
- (
-
- )
-
-
-
-
-
-
-
-
-
- RequestedAttribute uses legacy SWITCHaai name
-
- with SAML 2.0 NameFormat: should use urn:oid name or SAML 1.x NameFormat
-
- (
-
- )
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+ RequestedAttribute uses unknown name
+
+ with SAML 1.x NameFormat
+
+ (
+
+ )
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ RequestedAttribute uses legacy MACEAttr name
+
+ with SAML 2.0 NameFormat: should use urn:oid name or SAML 1.x NameFormat
+
+ (
+
+ )
+
+
+
+
+
+
+
+
+
+ RequestedAttribute uses legacy SWITCHaai name
+
+ with SAML 2.0 NameFormat: should use urn:oid name or SAML 1.x NameFormat
+
+ (
+
+ )
+
+
+
+
+
+
-
-
-
- RequestedAttribute uses legacy format name
-
- with SAML 2.0 NameFormat: should use urn:oid name or SAML 1.x NameFormat
-
- (
-
- )
-
-
-
-
-
-
-
-
-
- RequestedAttribute uses legacy format name
-
- with SAML 2.0 NameFormat: should use urn:oid name or SAML 1.x NameFormat
-
- (
-
- )
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- RequestedAttribute uses unknown name
-
- with SAML 2.0 NameFormat
-
- (
-
- )
-
-
-
-
-
-
-
-
+
+
+
+ RequestedAttribute uses legacy format name
+
+ with SAML 2.0 NameFormat: should use urn:oid name or SAML 1.x NameFormat
+
+ (
+
+ )
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ RequestedAttribute uses unknown name
+
+ with SAML 2.0 NameFormat
+
+ (
+
+ )
+
+
+
+
+
+
+
+
diff --git a/mdx/_rules/check_saml1.xsl b/mdx/_rules/check_saml1.xsl
index 92de66c5..33325ed0 100644
--- a/mdx/_rules/check_saml1.xsl
+++ b/mdx/_rules/check_saml1.xsl
@@ -1,83 +1,83 @@
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns="urn:oasis:names:tc:SAML:2.0:metadata">
+
+
+
-
-
+
+
+
+ no POST support on SAML 1.1 SP
+
+
-
-
-
- no POST support on SAML 1.1 SP
-
-
-
-
-
-
- SAML 1.1 AttributeAuthority missing appropriately bound AttributeService
-
-
-
-
-
-
-
- SAML 1.0 binding requires SAML 1.1 token in IDPSSODescriptor/@protocolSupportEnumeration
-
-
-
-
-
-
-
-
- SAML 1.0 binding requires SAML 1.1 token in AttributeAuthorityDescriptor/@protocolSupportEnumeration
-
-
-
-
-
-
-
-
- SAML 1.0 binding requires SAML 1.1 token in SPSSODescriptor/@protocolSupportEnumeration
-
-
-
-
+
+
+
+ SAML 1.0 binding requires SAML 1.1 token in SPSSODescriptor/@protocolSupportEnumeration
+
+
+
+
diff --git a/mdx/_rules/check_saml2.xsl b/mdx/_rules/check_saml2.xsl
index e35ed8a6..0f1fed85 100644
--- a/mdx/_rules/check_saml2.xsl
+++ b/mdx/_rules/check_saml2.xsl
@@ -1,110 +1,110 @@
-
-
-
-
-
-
-
-
- more than one SingleSignOnService with SAML 2.0 HTTP-POST binding
-
-
-
-
-
- more than one SingleSignOnService with SAML 2.0 HTTP-POST-SimpleSign binding
-
-
-
-
-
- more than one SingleSignOnService with SAML 2.0 HTTP-Redirect binding
-
-
-
-
+
+
+
+
+
+
+ more than one SingleSignOnService with SAML 2.0 HTTP-POST binding
+
+
+
+
+
+ more than one SingleSignOnService with SAML 2.0 HTTP-POST-SimpleSign binding
+
+
+
+
+
+ more than one SingleSignOnService with SAML 2.0 HTTP-Redirect binding
+
+
+
+
-
-
- SAML 2.0 AttributeAuthority missing appropriately bound AttributeService
-
-
+
+
+ SAML 2.0 AttributeAuthority missing appropriately bound AttributeService
+
+
-
-
-
- SAML 2.0 SP has no encryption key
-
-
-
-
+
+
+ SAML 2.0 SP has no encryption key
+
+
+
+
-
-
-
- SAML 2.0 binding requires SAML 2.0 token in IDPSSODescriptor/@protocolSupportEnumeration
-
-
-
-
-
-
-
-
- SAML 2.0 binding requires SAML 2.0 token in AttributeAuthorityDescriptor/@protocolSupportEnumeration
-
-
-
-
-
-
-
-
- SAML 2.0 binding requires SAML 2.0 token in SPSSODescriptor/@protocolSupportEnumeration
-
-
-
-
+
+
+
+ SAML 2.0 binding requires SAML 2.0 token in SPSSODescriptor/@protocolSupportEnumeration
+
+
+
+
diff --git a/mdx/_rules/check_saml2int.xsl b/mdx/_rules/check_saml2int.xsl
index 812fe87e..42f30770 100644
--- a/mdx/_rules/check_saml2int.xsl
+++ b/mdx/_rules/check_saml2int.xsl
@@ -1,142 +1,142 @@
-
-
-
-
-
-
-
-
- SP excludes both SAML 2 name identifier formats
-
-
-
-
-
-
- SAML 2.0 IDPSSODescriptor excludes SAML 2 transient name identifier format
-
-
-
-
- SAML 2.0 AttributeAuthorityDescriptor excludes SAML 2 transient name identifier format
-
-
-
-
+
+
+
+
+
+
+ SP excludes both SAML 2 name identifier formats
+
+
+
+
+
+
+ SAML 2.0 IDPSSODescriptor excludes SAML 2 transient name identifier format
+
+
+
+
+ SAML 2.0 AttributeAuthorityDescriptor excludes SAML 2 transient name identifier format
+
+
+
+
-
-
- SAML 2.0 IDPSSODescriptor does not support HTTP-Redirect SSO binding
-
-
-
-
-
-
-
- Attribute
-
- lacks NameFormat attribute
-
-
-
-
-
-
- Attribute
-
- has incorrect NameFormat
-
-
-
-
-
-
-
-
- no HTTP-POST support on SAML 2.0 SP
-
-
-
-
-
-
- SAML 2.0 IdP has no embedded signing key
-
-
-
-
- SAML 2.0 AttributeAuthority has no embedded signing key
-
-
-
+
+
+ SAML 2.0 IDPSSODescriptor does not support HTTP-Redirect SSO binding
+
+
+
+
+
+
+
+ Attribute
+
+ lacks NameFormat attribute
+
+
+
+
+
+
+ Attribute
+
+ has incorrect NameFormat
+
+
+
+
+
+
+
+
+ no HTTP-POST support on SAML 2.0 SP
+
+
+
+
+
+
+ SAML 2.0 IdP has no embedded signing key
+
+
+
+
+ SAML 2.0 AttributeAuthority has no embedded signing key
+
+
+
diff --git a/mdx/_rules/check_saml2meta.xsl b/mdx/_rules/check_saml2meta.xsl
index b3990b9b..42b5fad4 100644
--- a/mdx/_rules/check_saml2meta.xsl
+++ b/mdx/_rules/check_saml2meta.xsl
@@ -1,33 +1,33 @@
-
-
-
-
-
-
-
-
+ xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata"
+ xmlns:mdxURL="xalan://uk.ac.sdss.xalan.md.URLchecker"
+ xmlns:set="http://exslt.org/sets"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns="urn:oasis:names:tc:SAML:2.0:metadata">
+
+
+
+
+
+
+
+
@@ -37,63 +37,77 @@
-
-
-
-
- AssertionConsumerService index values not all different
-
-
-
-
-
-
-
-
-
-
-
-
- ArtifactResolutionService index values not all different
-
-
-
-
-
-
-
-
-
-
-
-
-
- Location is not a valid URL:
-
-
-
-
-
-
-
-
-
-
- OrganizationURL '
-
- ' is not a valid URL:
-
-
-
-
-
-
+
+
+
+
+ AssertionConsumerService index values not all different
+
+
+
+
+
+
+
+
+
+
+
+
+ ArtifactResolutionService index values not all different
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Location is not a valid URL:
+
+
+
+
+
+
+
+
+
+
+
+ ResponseLocation is not a valid URL:
+
+
+
+
+
+
+
+
+
+
+ OrganizationURL '
+
+ ' is not a valid URL:
+
+
+
+
+
+
diff --git a/mdx/_rules/check_shib_noregscope.xsl b/mdx/_rules/check_shib_noregscope.xsl
index 0f1e0b79..e516425f 100644
--- a/mdx/_rules/check_shib_noregscope.xsl
+++ b/mdx/_rules/check_shib_noregscope.xsl
@@ -1,7 +1,7 @@
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata"
+ xmlns:shibmd="urn:mace:shibboleth:metadata:1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns="urn:oasis:names:tc:SAML:2.0:metadata">
-
-
+
+
+
+
+
+ Scope lacks @regexp
+
+
-
-
- Scope lacks @regexp
-
-
-
diff --git a/mdx/_rules/check_shib_regscope.xsl b/mdx/_rules/check_shib_regscope.xsl
index b20fa7d3..7f522e92 100644
--- a/mdx/_rules/check_shib_regscope.xsl
+++ b/mdx/_rules/check_shib_regscope.xsl
@@ -1,31 +1,31 @@
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata"
+ xmlns:shibmd="urn:mace:shibboleth:metadata:1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns="urn:oasis:names:tc:SAML:2.0:metadata">
+
+
+
+
+
+
+
+ regular expression in scope '
+
+ '
+
+
+
-
-
-
-
-
-
- regular expression in scope '
-
- '
-
-
-
-
diff --git a/mdx/_rules/check_shibboleth.xsl b/mdx/_rules/check_shibboleth.xsl
index 79aa6799..12e87c7a 100644
--- a/mdx/_rules/check_shibboleth.xsl
+++ b/mdx/_rules/check_shibboleth.xsl
@@ -1,188 +1,188 @@
-
-
-
-
-
-
-
-
- OrganizationURL '' does not start with acceptable prefix
-
-
-
-
-
-
-
- Shibboleth 1.x auth request needs urn:oasis:names:tc:SAML:1.1:protocol in IDPSSODescriptor/@protocolSupportEnumeration
-
-
-
-
-
- Shibboleth 1.x auth request needs urn:mace:shibboleth:1.0 in IDPSSODescriptor/@protocolSupportEnumeration
-
-
-
-
-
-
-
- Shibboleth 1.x support claimed but no appropriate SSO service binding
-
-
-
-
-
-
-
- more than one SingleSignOnService with Shibboleth binding
-
-
-
-
-
-
-
- SAML 1.1 SP excludes Shibboleth transient name identifier format
-
-
-
-
-
-
-
- ds:KeyInfo child element not in ds namespace
-
-
-
-
-
-
-
- SIDPO-34: Attribute lacking NameFormat in IDPSSODescriptor
-
-
-
-
-
-
- Scope value contains space character
-
-
-
-
-
-
-
- Scope value contains line break
-
-
-
-
-
-
-
- X509Certificate contains XML comment
-
-
-
-
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:ds="http://www.w3.org/2000/09/xmldsig#"
+ xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata"
+ xmlns:saml="urn:oasis:names:tc:SAML:2.0:assertion"
+ xmlns:shibmd="urn:mace:shibboleth:metadata:1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns="urn:oasis:names:tc:SAML:2.0:metadata">
+
+
+
+
+
+
+
+
+ OrganizationURL '' does not start with acceptable prefix
+
+
+
+
+
+
+
+ Shibboleth 1.x auth request needs urn:oasis:names:tc:SAML:1.1:protocol in IDPSSODescriptor/@protocolSupportEnumeration
+
+
+
+
+
+ Shibboleth 1.x auth request needs urn:mace:shibboleth:1.0 in IDPSSODescriptor/@protocolSupportEnumeration
+
+
+
+
+
+
+
+ Shibboleth 1.x support claimed but no appropriate SSO service binding
+
+
+
+
+
+
+
+ more than one SingleSignOnService with Shibboleth binding
+
+
+
+
+
+
+
+ SAML 1.1 SP excludes Shibboleth transient name identifier format
+
+
+
+
+
+
+
+ ds:KeyInfo child element not in ds namespace
+
+
+
+
+
+
+
+ SIDPO-34: Attribute lacking NameFormat in IDPSSODescriptor
+
+
+
+
+
+
+ Scope value contains space character
+
+
+
+
+
+
+
+ Scope value contains line break
+
+
+
+
+
+
+
+ X509Certificate contains XML comment
+
+
+
+
diff --git a/mdx/_rules/check_sirtfi.xsl b/mdx/_rules/check_sirtfi.xsl
index 78240c01..48f0e6af 100644
--- a/mdx/_rules/check_sirtfi.xsl
+++ b/mdx/_rules/check_sirtfi.xsl
@@ -1,73 +1,73 @@
-
-
-
+ xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata"
+ xmlns:mdattr="urn:oasis:names:tc:SAML:metadata:attribute"
+ xmlns:remd="http://refeds.org/metadata"
+ xmlns:saml="urn:oasis:names:tc:SAML:2.0:assertion"
-
-
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns="urn:oasis:names:tc:SAML:2.0:metadata">
-
-
+
+
-
-
-
- SIRTFI requires a REFEDS security contact
-
-
+
+
-
-
-
-
- SIRTFI requires a REFEDS security contact with a GivenName
-
-
-
-
- SIRTFI requires a REFEDS security contact with an EmailAddress
-
-
-
-
+
+
+
+
+
+
+ SIRTFI requires a REFEDS security contact
+
+
+
+
+
+
+
+ SIRTFI requires a REFEDS security contact with a GivenName
+
+
+
+
+ SIRTFI requires a REFEDS security contact with an EmailAddress
+
+
+
+
diff --git a/mdx/_rules/check_sp_tls.xsl b/mdx/_rules/check_sp_tls.xsl
index b68c9663..3432cd06 100644
--- a/mdx/_rules/check_sp_tls.xsl
+++ b/mdx/_rules/check_sp_tls.xsl
@@ -1,31 +1,36 @@
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata"
+ xmlns="urn:oasis:names:tc:SAML:2.0:metadata">
-
-
+
+
-
+
Location does not start with https://
+
+
+ ResponseLocation does not start with https://
+
+
diff --git a/mdx/_rules/check_uk_algorithms.xsl b/mdx/_rules/check_uk_algorithms.xsl
index 10db2ce2..0a4c024f 100644
--- a/mdx/_rules/check_uk_algorithms.xsl
+++ b/mdx/_rules/check_uk_algorithms.xsl
@@ -1,89 +1,89 @@
-
-
-
-
-
+
+
+
-
-
-
-
-
- insecure algorithm in SigningMethod: '
-
- '
-
-
-
-
-
-
-
-
-
-
+
+
+
-
-
-
- unknown algorithm in SigningMethod: '
-
- '
-
-
-
-
-
-
-
-
-
- insecure algorithm in DigestMethod: '
-
- '
-
-
-
-
-
-
-
-
-
-
+
+
+
-
-
-
- unknown algorithm in DigestMethod: '
-
- '
-
-
-
-
-
+ -->
-
+
+
+
+ insecure algorithm in EncryptionMethod: '
+
+ '
+
+
+
+
+
+
+
+
+
+
-
-
-
- insecure algorithm in EncryptionMethod: '
-
- '
-
-
-
-
-
-
-
-
-
-
-
-
-
- unknown algorithm in EncryptionMethod: '
-
- '
-
-
-
+
+
+
+ unknown algorithm in EncryptionMethod: '
+
+ '
+
+
+
diff --git a/mdx/_rules/check_uk_trust.xsl b/mdx/_rules/check_uk_trust.xsl
index 6db92755..00a1bee9 100644
--- a/mdx/_rules/check_uk_trust.xsl
+++ b/mdx/_rules/check_uk_trust.xsl
@@ -1,118 +1,118 @@
-
-
-
-
-
-
-
-
-
- IdP SSO Descriptor lacking KeyDescriptor
-
-
-
-
-
- SP SSO Descriptor lacking KeyDescriptor
-
-
-
-
-
- IdP AA Descriptor lacking KeyDescriptor
-
-
-
-
-
+
+
+
+ IdP SSO Descriptor lacking KeyDescriptor
+
+
+
+
+
+ SP SSO Descriptor lacking KeyDescriptor
+
+
+
+
+
+ IdP AA Descriptor lacking KeyDescriptor
+
+
+
+
+
-
-
- SAML 2.0 IdP has KeyDescriptor without embedded key
-
-
-
-
-
- SAML 2.0 AttributeAuthority has KeyDescriptor without embedded key
-
-
-
-
-
- SAML 2.0 SP has KeyDescriptor without embedded key
-
-
-
-
-
- SAML 1.1 IdP has KeyDescriptor without embedded key
-
-
-
-
-
- SAML 1.1 AttributeAuthority has KeyDescriptor without embedded key
-
-
-
-
-
- SAML 1.1 SP has KeyDescriptor without embedded key
-
-
-
-
-
-
- entity has legacy KeyName element
-
-
-
+
+ In roles which indicate support through their protocolSupportEnumeration values for
+ SAML 2.0 or SAML 1.1 profiles, each MUST support the direct key
+ verification scheme as described in section 2.1.1.
+ -->
+
+
+ SAML 2.0 IdP has KeyDescriptor without embedded key
+
+
+
+
+
+ SAML 2.0 AttributeAuthority has KeyDescriptor without embedded key
+
+
+
+
+
+ SAML 2.0 SP has KeyDescriptor without embedded key
+
+
+
+
+
+ SAML 1.1 IdP has KeyDescriptor without embedded key
+
+
+
+
+
+ SAML 1.1 AttributeAuthority has KeyDescriptor without embedded key
+
+
+
+
+
+ SAML 1.1 SP has KeyDescriptor without embedded key
+
+
+
+
+
+
+ entity has legacy KeyName element
+
+
+
diff --git a/mdx/_rules/check_uk_wayf.xsl b/mdx/_rules/check_uk_wayf.xsl
deleted file mode 100644
index c2e443cd..00000000
--- a/mdx/_rules/check_uk_wayf.xsl
+++ /dev/null
@@ -1,46 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
- unknown element name wayf:
-
-
-
-
-
-
-
-
- misplaced wayf:HideFromWAYF element
-
-
-
-
diff --git a/mdx/_rules/check_vhosts.xsl b/mdx/_rules/check_vhosts.xsl
index 7b7a1999..230f88c3 100644
--- a/mdx/_rules/check_vhosts.xsl
+++ b/mdx/_rules/check_vhosts.xsl
@@ -1,58 +1,58 @@
-
-
-
-
-
-
-
-
-
- substring-before(substring-after(concat(., '/'), 'https://'), '/')
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- at least one SOAP location on same vhost as an SSO location
-
-
-
-
+ xmlns:dyn="http://exslt.org/dynamic"
+ xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata"
+ xmlns:set="http://exslt.org/sets"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns="urn:oasis:names:tc:SAML:2.0:metadata">
+
+
+
+
+
+
+
+
+
+ substring-before(substring-after(concat(., '/'), 'https://'), '/')
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ at least one SOAP location on same vhost as an SSO location
+
+
+
+
diff --git a/mdx/_rules/mdui_dn_en_match.xsl b/mdx/_rules/mdui_dn_en_match.xsl
index 8281fe9d..7ecb8015 100644
--- a/mdx/_rules/mdui_dn_en_match.xsl
+++ b/mdx/_rules/mdui_dn_en_match.xsl
@@ -1,41 +1,41 @@
-
-
-
-
-
-
-
-
-
-
- mismatched xml:lang='en' DisplayNames: '
-
- ' in mdui vs. '
-
- ' in ODN
-
-
-
-
-
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata"
+ xmlns:mdui="urn:oasis:names:tc:SAML:metadata:ui"
+ xmlns="urn:oasis:names:tc:SAML:2.0:metadata">
+
+
+
+
+
+
+
+
+
+
+ mismatched xml:lang='en' DisplayNames: '
+
+ ' in mdui vs. '
+
+ ' in ODN
+
+
+
+
+
diff --git a/mdx/_rules/mdui_dn_en_present.xsl b/mdx/_rules/mdui_dn_en_present.xsl
index 16e2ab15..e5364e11 100644
--- a/mdx/_rules/mdui_dn_en_present.xsl
+++ b/mdx/_rules/mdui_dn_en_present.xsl
@@ -1,31 +1,31 @@
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata"
+ xmlns:mdui="urn:oasis:names:tc:SAML:metadata:ui"
+ xmlns="urn:oasis:names:tc:SAML:2.0:metadata">
+
+
+
-
-
+
+
+
+ mdui:UIInfo with no xml:lang='en' DisplayName
+
+
+
-
-
-
- mdui:UIInfo with no xml:lang='en' DisplayName
-
-
-
-
diff --git a/mdx/at_aconet/beans.xml b/mdx/at_aconet/beans.xml
index 15d9c658..5ab7a9fc 100644
--- a/mdx/at_aconet/beans.xml
+++ b/mdx/at_aconet/beans.xml
@@ -11,23 +11,24 @@
xsi:schemaLocation="
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util.xsd">
-
+
-
+
-
+
-
+
-
+
+
@@ -35,11 +36,12 @@
-
+
-
+
+
@@ -47,13 +49,13 @@
-
+
-
+
@@ -63,10 +65,10 @@
-
+
@@ -77,10 +79,10 @@
-
+
@@ -91,15 +93,15 @@
-
+
-
+
-
+
-
+
-
+
diff --git a/mdx/at_aconet/verbs.xml b/mdx/at_aconet/verbs.xml
index 4b5a334a..54399699 100644
--- a/mdx/at_aconet/verbs.xml
+++ b/mdx/at_aconet/verbs.xml
@@ -11,26 +11,27 @@
xsi:schemaLocation="
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util.xsd">
-
+
-
+
-
-
+
+
+
-
+
-
-
+
+
@@ -41,7 +42,7 @@
-
+
@@ -49,8 +50,8 @@
-
-
+
+
@@ -60,8 +61,8 @@
-
-
+
+
@@ -69,29 +70,28 @@
-
-
+
+
-
+
-
-
+
-
@@ -104,7 +104,7 @@
-
+
diff --git a/mdx/clean-import.xsl b/mdx/clean-import.xsl
index 029642f8..e7c2211b 100644
--- a/mdx/clean-import.xsl
+++ b/mdx/clean-import.xsl
@@ -1,79 +1,79 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+ xmlns:ds="http://www.w3.org/2000/09/xmldsig#"
+ xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata"
+ xmlns:mdxTextUtils="xalan://uk.ac.sdss.xalan.md.TextUtils"
+ xmlns:saml="urn:oasis:names:tc:SAML:2.0:assertion"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns="urn:oasis:names:tc:SAML:2.0:metadata"
+ extension-element-prefixes="mdxTextUtils">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/mdx/common-beans.xml b/mdx/common-beans.xml
index 7c687117..db6b1d20 100644
--- a/mdx/common-beans.xml
+++ b/mdx/common-beans.xml
@@ -19,6 +19,16 @@
-->
+
+
+
+
+
+
-
+
+
-
+
@@ -40,7 +51,7 @@
class="org.springframework.core.io.ClassPathResource"/>
-
+
@@ -49,38 +60,27 @@
-
-
-
-
-
-
+
http://www.w3.org/2001/04/xmldsig-more#md5
@@ -93,10 +93,10 @@
-
+
@@ -117,78 +117,6 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
-
+
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
-
+
@@ -355,17 +170,16 @@
-
-
+
@@ -388,7 +202,6 @@
-
@@ -397,72 +210,64 @@
-
+
-
-
+
-
-
-
+
-
-
+
-
-
+
-
-
-
-
-
+
-
-
+
-
+
-
+
@@ -505,7 +310,7 @@
-
+
@@ -525,12 +330,13 @@
+
+
+
-
-
@@ -543,9 +349,9 @@
-
+
-
+
@@ -620,12 +426,11 @@
-
+
@@ -634,14 +439,13 @@
-
+
-
+
@@ -649,14 +453,13 @@
-
+
-
+
@@ -664,14 +467,14 @@
-
+
-
+
@@ -679,15 +482,15 @@
-
+
-
+
@@ -695,9 +498,9 @@
-
-
-
+
+
+
-
+
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
+
+
-
-
+
+
-
+
-
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
-
+
-
-
+
+
-
-
+
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
-
-
+
-
-
+
-
-
-
+
-
+
-
+
-
+
-
-
+
-
+
-
-
-
-
+
+
+
-
+
-
+
-
+
@@ -1048,10 +850,6 @@
-
-
-
-
@@ -1073,44 +871,43 @@
-
+
-
+
-
-
-
+
-
+
-
-
+
+
-
-
+
+
-
-
+
-
+
+
+
+
+
+
+
+
+
+
+
+
-
+
-
+
@@ -1173,7 +981,7 @@
Strip all elements and attributes that are in namespaces
other than the ones we accept from partners.
-->
-
@@ -1207,45 +1015,45 @@
-
+
-
-
-
+
+
-
+
-
+
-
+
-
+
@@ -1255,5 +1063,5 @@
-
+
diff --git a/mdx/default_regauth.xsl b/mdx/default_regauth.xsl
index 9d0365a8..c7143d35 100644
--- a/mdx/default_regauth.xsl
+++ b/mdx/default_regauth.xsl
@@ -1,25 +1,25 @@
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata"
+ xmlns:mdrpi="urn:oasis:names:tc:SAML:metadata:rpi"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns="urn:oasis:names:tc:SAML:2.0:metadata">
-
(value not set)
-
+
@@ -61,17 +61,17 @@
-
+
-
+
-
+
diff --git a/mdx/identity.xsl b/mdx/identity.xsl
index dc2ad8b1..23f2a177 100644
--- a/mdx/identity.xsl
+++ b/mdx/identity.xsl
@@ -1,30 +1,30 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/mdx/int_cobweb/beans.xml b/mdx/int_cobweb/beans.xml
index 2922f2fc..a937917c 100644
--- a/mdx/int_cobweb/beans.xml
+++ b/mdx/int_cobweb/beans.xml
@@ -11,18 +11,19 @@
xsi:schemaLocation="
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util.xsd">
-
+
-
+
-
+
-
+
+
@@ -30,13 +31,13 @@
-
+
-
+
@@ -47,11 +48,11 @@
-
+
-
+
-
+
-
+
diff --git a/mdx/int_cobweb/verbs.xml b/mdx/int_cobweb/verbs.xml
index dde7a217..0a626f57 100644
--- a/mdx/int_cobweb/verbs.xml
+++ b/mdx/int_cobweb/verbs.xml
@@ -11,26 +11,27 @@
xsi:schemaLocation="
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util.xsd">
-
+
-
+
-
-
+
+
+
-
+
-
-
+
+
@@ -40,8 +41,8 @@
-
-
+
+
@@ -50,8 +51,8 @@
-
-
+
+
@@ -59,7 +60,7 @@
-
+
diff --git a/mdx/int_edugain/beans.xml b/mdx/int_edugain/beans.xml
index 05b7c9b3..95222469 100644
--- a/mdx/int_edugain/beans.xml
+++ b/mdx/int_edugain/beans.xml
@@ -11,29 +11,30 @@
xsi:schemaLocation="
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util.xsd">
-
+
-
+
-
+
-
+
-
+
+
@@ -41,11 +42,12 @@
-
+
-
+
+
@@ -53,13 +55,13 @@
-
+
-
+
@@ -70,14 +72,14 @@
-
-
+
@@ -90,9 +92,9 @@
-
+
-
+
-
+
@@ -120,11 +122,11 @@
-
+
-
+
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns="urn:oasis:names:tc:SAML:2.0:metadata">
+
+
+
-
-
+
+
+ entity has recovered from a previous error condition
+
+
-
-
- entity has recovered from a previous error condition
-
-
-
diff --git a/mdx/int_edugain/verbs.xml b/mdx/int_edugain/verbs.xml
index ed4a6400..e4fa53e4 100644
--- a/mdx/int_edugain/verbs.xml
+++ b/mdx/int_edugain/verbs.xml
@@ -11,26 +11,41 @@
xsi:schemaLocation="
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util.xsd">
-
+
-
+
-
-
+
+
+
-
+
-
-
+
+
+
+
+
+
+
+
+
+
+
@@ -41,7 +56,7 @@
-
+
@@ -49,8 +64,8 @@
-
-
+
+
@@ -60,20 +75,21 @@
-
+
-
+
-
+
@@ -85,18 +101,18 @@
-
+
-
+
-
-
+
@@ -105,54 +121,56 @@
-
+
-
+
+
-
+
-
-
+
-
-
+
-
+
-
+
+
-
+
diff --git a/mdx/mda-beans.xml b/mdx/mda-beans.xml
new file mode 100644
index 00000000..ea592084
--- /dev/null
+++ b/mdx/mda-beans.xml
@@ -0,0 +1,272 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/mdx/ns_norm.xsl b/mdx/ns_norm.xsl
index 2c907602..60b4c6ac 100644
--- a/mdx/ns_norm.xsl
+++ b/mdx/ns_norm.xsl
@@ -1,229 +1,222 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+ xmlns:alg="urn:oasis:names:tc:SAML:metadata:algsupport"
+ xmlns:ds="http://www.w3.org/2000/09/xmldsig#"
+ xmlns:idpdisc="urn:oasis:names:tc:SAML:profiles:SSO:idp-discovery-protocol"
+ xmlns:init="urn:oasis:names:tc:SAML:profiles:SSO:request-init"
+ xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata"
+ xmlns:mdattr="urn:oasis:names:tc:SAML:metadata:attribute"
+ xmlns:mdrpi="urn:oasis:names:tc:SAML:metadata:rpi"
+ xmlns:mdui="urn:oasis:names:tc:SAML:metadata:ui"
+ xmlns:saml="urn:oasis:names:tc:SAML:2.0:assertion"
+ xmlns:shibmd="urn:mace:shibboleth:metadata:1.0"
+ xmlns:ukfedlabel="http://ukfederation.org.uk/2006/11/label"
+ xmlns:xenc="http://www.w3.org/2001/04/xmlenc#"
+
+ exclude-result-prefixes="md"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns="urn:oasis:names:tc:SAML:2.0:metadata">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/mdx/schema/MetadataExchange.xsd b/mdx/schema/MetadataExchange.xsd
index 53094fb7..06d2a6fd 100644
--- a/mdx/schema/MetadataExchange.xsd
+++ b/mdx/schema/MetadataExchange.xsd
@@ -2,15 +2,15 @@
-
-
-
-
-
- This type represents an element with arbitrary attributes.
-
-
-
-
-
-
-
-
-
-
- This type is used for password elements per Section 4.1.
-
-
-
-
-
-
-
-
-
- This type is used for elements containing stringified binary data.
-
-
-
-
-
-
-
-
-
- This type represents a username token per Section 4.1
-
-
-
-
-
-
-
-
-
-
- A security token that is encoded in binary
-
-
-
-
-
-
-
-
-
- A security token key identifier
-
-
-
-
-
-
-
-
-
- Typedef to allow a list of usages (as URIs).
-
-
-
-
-
- This global attribute is used to indicate the usage of a referenced or indicated token within the containing context
-
-
-
-
- This type represents a reference to an external security token.
-
-
-
-
-
-
-
- This type represents a reference to an embedded security token.
-
-
-
-
-
-
-
-
-
- This type is used reference a security token.
-
-
-
-
-
-
-
-
-
-
- This complexType defines header block to use for security-relevant data directed at a specific SOAP actor.
-
-
-
-
- The use of "any" is to allow extensibility and different forms of security data.
-
-
-
-
-
-
-
- This complexType defines a container for elements to be specified from any namespace as properties/parameters of a DSIG transformation.
-
-
-
-
- The use of "any" is to allow extensibility from any namespace.
-
-
-
-
-
-
-
- This element defines the wsse:UsernameToken element per Section 4.1.
-
-
-
-
- This element defines the wsse:BinarySecurityToken element per Section 4.2.
-
-
-
-
- This element defines a security token reference
-
-
-
-
- This element defines a security token embedded reference
-
-
-
-
- This element defines a key identifier reference
-
-
-
-
- This element defines the wsse:SecurityTokenReference per Section 4.3.
-
-
-
-
- This element defines the wsse:Security SOAP header element per Section 4.
-
-
-
-
- This element contains properties for transformations from any namespace, including DSIG.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+ This type represents an element with arbitrary attributes.
+
+
+
+
+
+
+
+
+
+
+ This type is used for password elements per Section 4.1.
+
+
+
+
+
+
+
+
+
+ This type is used for elements containing stringified binary data.
+
+
+
+
+
+
+
+
+
+ This type represents a username token per Section 4.1
+
+
+
+
+
+
+
+
+
+
+ A security token that is encoded in binary
+
+
+
+
+
+
+
+
+
+ A security token key identifier
+
+
+
+
+
+
+
+
+
+ Typedef to allow a list of usages (as URIs).
+
+
+
+
+
+ This global attribute is used to indicate the usage of a referenced or indicated token within the containing context
+
+
+
+
+ This type represents a reference to an external security token.
+
+
+
+
+
+
+
+ This type represents a reference to an embedded security token.
+
+
+
+
+
+
+
+
+
+ This type is used reference a security token.
+
+
+
+
+
+
+
+
+
+
+ This complexType defines header block to use for security-relevant data directed at a specific SOAP actor.
+
+
+
+
+ The use of "any" is to allow extensibility and different forms of security data.
+
+
+
+
+
+
+
+ This complexType defines a container for elements to be specified from any namespace as properties/parameters of a DSIG transformation.
+
+
+
+
+ The use of "any" is to allow extensibility from any namespace.
+
+
+
+
+
+
+
+ This element defines the wsse:UsernameToken element per Section 4.1.
+
+
+
+
+ This element defines the wsse:BinarySecurityToken element per Section 4.2.
+
+
+
+
+ This element defines a security token reference
+
+
+
+
+ This element defines a security token embedded reference
+
+
+
+
+ This element defines a key identifier reference
+
+
+
+
+ This element defines the wsse:SecurityTokenReference per Section 4.3.
+
+
+
+
+ This element defines the wsse:Security SOAP header element per Section 4.
+
+
+
+
+ This element contains properties for transformations from any namespace, including DSIG.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/mdx/schema/oasis-200401-wss-wssecurity-utility-1.0.xsd b/mdx/schema/oasis-200401-wss-wssecurity-utility-1.0.xsd
index f8d74e9c..f2ed72d8 100644
--- a/mdx/schema/oasis-200401-wss-wssecurity-utility-1.0.xsd
+++ b/mdx/schema/oasis-200401-wss-wssecurity-utility-1.0.xsd
@@ -1,5 +1,5 @@
-
-
-
-
-
-
+
+
+
+
This type defines the fault code value for Timestamp message expiration.
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
This global attribute supports annotating arbitrary elements with an ID.
-
-
-
-
-
+
+
+
+
+
Convenience attribute group used to simplify this schema.
-
-
-
-
-
-
-
-
-This type is for elements whose [children] is a psuedo-dateTime and can have arbitrary attributes.
+
+
+
+
+
+
+
+
+This type is for elements whose [children] is a psuedo-dateTime and can have arbitrary attributes.
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
This type is for elements whose [children] is an anyURI and can have arbitrary attributes.
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
This complex type ties together the timestamp related elements into a composite type.
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
This element allows Timestamps to be applied anywhere element wildcards are present,
including as a SOAP header.
-
-
-
-
-
-
+
+
+
+
+
+
This element allows an expiration time to be applied anywhere element wildcards are present.
-
-
-
-
-
+
+
+
+
+
This element allows a creation time to be applied anywhere element wildcards are present.
-
-
+
+
diff --git a/mdx/schema/refeds-metadata.xsd b/mdx/schema/refeds-metadata.xsd
index 1dadc094..3cab63b2 100644
--- a/mdx/schema/refeds-metadata.xsd
+++ b/mdx/schema/refeds-metadata.xsd
@@ -7,14 +7,14 @@
attributeFormDefault="unqualified"
blockDefault="substitution"
version="2.0">
-
+
Unofficial schema for REFEDS metadata;
specifically the contactType extension required for SIRTFI.
-
+
-
+
diff --git a/mdx/schema/saml-metadata-rpi-v1.0.xsd b/mdx/schema/saml-metadata-rpi-v1.0.xsd
index 135efa33..d5025fe2 100644
--- a/mdx/schema/saml-metadata-rpi-v1.0.xsd
+++ b/mdx/schema/saml-metadata-rpi-v1.0.xsd
@@ -12,10 +12,10 @@
xmlns="http://www.w3.org/2001/XMLSchema"
xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata"
xmlns:mdrpi="urn:oasis:names:tc:SAML:metadata:rpi"
- elementFormDefault="unqualified"
- attributeFormDefault="unqualified"
- blockDefault="substitution"
- version="1.0">
+ elementFormDefault="unqualified"
+ attributeFormDefault="unqualified"
+ blockDefault="substitution"
+ version="1.0">
@@ -24,17 +24,17 @@
Location: http://docs.oasis-open.org/security/saml/Post2.0/
Revision history:
21 March 2011
- Correct minOccurs on elements that were meant to be optional
+ Correct minOccurs on elements that were meant to be optional
17 December 2010
Change of document title and namespace
24 November 2010
Initial Submission
-
+
-
+
@@ -45,9 +45,9 @@
-
+
-
+
@@ -59,21 +59,21 @@
-
+
-
+
-
+
-
-
\ No newline at end of file
+
+
diff --git a/mdx/schema/saml-schema-assertion-2.0.xsd b/mdx/schema/saml-schema-assertion-2.0.xsd
index 2b2f7b80..a1ef536c 100644
--- a/mdx/schema/saml-schema-assertion-2.0.xsd
+++ b/mdx/schema/saml-schema-assertion-2.0.xsd
@@ -163,7 +163,7 @@
-
+
diff --git a/mdx/schema/saml-schema-metadata-2.0.xsd b/mdx/schema/saml-schema-metadata-2.0.xsd
index b656d4f4..f052721c 100644
--- a/mdx/schema/saml-schema-metadata-2.0.xsd
+++ b/mdx/schema/saml-schema-metadata-2.0.xsd
@@ -47,14 +47,14 @@
-
+
-
+
@@ -64,7 +64,7 @@
-
+
@@ -73,7 +73,7 @@
-
+
@@ -116,7 +116,7 @@
-
+
@@ -202,7 +202,7 @@
-
+
@@ -239,7 +239,7 @@
-
+
@@ -274,7 +274,7 @@
-
+
@@ -318,7 +318,7 @@
-
+
diff --git a/mdx/schema/shibboleth-metadata-1.0.xsd b/mdx/schema/shibboleth-metadata-1.0.xsd
index be1441dd..476ba7b8 100644
--- a/mdx/schema/shibboleth-metadata-1.0.xsd
+++ b/mdx/schema/shibboleth-metadata-1.0.xsd
@@ -1,42 +1,42 @@
+ xmlns="http://www.w3.org/2001/XMLSchema"
+ xmlns:ds="http://www.w3.org/2000/09/xmldsig#"
+ elementFormDefault="unqualified"
+ attributeFormDefault="unqualified"
+ version="1.0">
-
+
-
-
-
- SAML metadata extension used to regulate allowable attribute scopes.
-
-
-
-
-
-
-
-
-
-
+
+
+
+ SAML metadata extension used to regulate allowable attribute scopes.
+
+
+
+
+
+
+
+
+
+
-
-
-
- Binds keying authorities to the system entity/entities to which the enclosing
- metadata element applies.
-
-
-
-
-
-
-
-
-
-
+
+
+
+ Binds keying authorities to the system entity/entities to which the enclosing
+ metadata element applies.
+
+
+
+
+
+
+
+
+
+
diff --git a/mdx/schema/sstc-metadata-attr.xsd b/mdx/schema/sstc-metadata-attr.xsd
index 5a445e21..432ef1a7 100644
--- a/mdx/schema/sstc-metadata-attr.xsd
+++ b/mdx/schema/sstc-metadata-attr.xsd
@@ -22,4 +22,4 @@
-
\ No newline at end of file
+
diff --git a/mdx/schema/sstc-saml-holder-of-key-browser-sso.xsd b/mdx/schema/sstc-saml-holder-of-key-browser-sso.xsd
index 7860d029..11f34de3 100644
--- a/mdx/schema/sstc-saml-holder-of-key-browser-sso.xsd
+++ b/mdx/schema/sstc-saml-holder-of-key-browser-sso.xsd
@@ -14,10 +14,10 @@
Document identifier: sstc-saml-holder-of-key-browser-sso.xsd
Location: http://www.oasis-open.org/committees/documents.php?wg_abbrev=security
Revision history:
- V1.2 (2 November 2008):
- Renamed attribute from protocol to ProtocolBinding; targetNamespace changed in accordance with new conventions
- V1.1 (6 August 2008):
- string type changed to anyURI to match original SAML2Meta schema
+ V1.2 (2 November 2008):
+ Renamed attribute from protocol to ProtocolBinding; targetNamespace changed in accordance with new conventions
+ V1.1 (6 August 2008):
+ string type changed to anyURI to match original SAML2Meta schema
V1.0 (4 August 2008):
Initial version.
diff --git a/mdx/schema/sstc-saml-metadata-algsupport-v1.0.xsd b/mdx/schema/sstc-saml-metadata-algsupport-v1.0.xsd
index c4e0f58b..8e30f4af 100644
--- a/mdx/schema/sstc-saml-metadata-algsupport-v1.0.xsd
+++ b/mdx/schema/sstc-saml-metadata-algsupport-v1.0.xsd
@@ -10,7 +10,7 @@
-->
-
-
-
+
@@ -89,7 +89,7 @@
-
+
diff --git a/mdx/schema/uk-fed-label.xsd b/mdx/schema/uk-fed-label.xsd
index 8c1656ae..fdf261d3 100644
--- a/mdx/schema/uk-fed-label.xsd
+++ b/mdx/schema/uk-fed-label.xsd
@@ -4,17 +4,17 @@
targetNamespace="http://ukfederation.org.uk/2006/11/label"
version="2016-09-15"
elementFormDefault="qualified">
-
+
This schema describes the UK federation label namespace.
-
+
For additional information, see the Federation Technical Specification.
-
+
This version of the schema follows FTS edition 1.1 of 1-June-2007.
-
+
@@ -28,7 +28,7 @@
neither text nor nested elements.
-->
-
+
@@ -84,7 +84,7 @@
-
+
@@ -95,7 +95,7 @@
-
+
@@ -104,7 +104,7 @@
version of software used. This information is added to
an entity only if it has been received from the deployer
of the entity on the indicated date.
-
+
This information is used in entity fragment files only,
and is not included in the metadata published by the
UK federation. Its principal use is in classifying
@@ -124,7 +124,7 @@
-
+
@@ -135,7 +135,7 @@
-
+
@@ -147,7 +147,7 @@
-
+
@@ -156,7 +156,7 @@
-
+
@@ -165,5 +165,5 @@
-
-
\ No newline at end of file
+
+
diff --git a/mdx/schema/uk-wayf.xsd b/mdx/schema/uk-wayf.xsd
deleted file mode 100644
index 1139a62c..00000000
--- a/mdx/schema/uk-wayf.xsd
+++ /dev/null
@@ -1,39 +0,0 @@
-
-
-
-
-
- This schema describes the WAYF namespace, used internally by the
- UK federation for the "HideFromWAYF" label.
-
- For additional information, see the Federation Technical Specification.
-
-
-
-
-
-
- Basic labels are empty elements whose presence or absence
- is all that is important.
-
-
-
-
-
-
-
-
- Indicates an entity which should be hidden from the
- Central Discovery Service.
-
-
-
-
-
diff --git a/mdx/schema/ws-addr.xsd b/mdx/schema/ws-addr.xsd
index 47362edb..f6fc9c53 100644
--- a/mdx/schema/ws-addr.xsd
+++ b/mdx/schema/ws-addr.xsd
@@ -16,122 +16,122 @@
$Id: ws-addr.xsd,v 1.2 2008/07/23 13:38:16 plehegar Exp $
-->
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/mdx/schema/ws-authorization.xsd b/mdx/schema/ws-authorization.xsd
index 5b8ae986..51dc059e 100644
--- a/mdx/schema/ws-authorization.xsd
+++ b/mdx/schema/ws-authorization.xsd
@@ -1,34 +1,34 @@
-
+ xmlns:xenc='http://www.w3.org/2001/04/xmlenc#'
+ xmlns:tns='http://docs.oasis-open.org/wsfed/authorization/200706'
+ targetNamespace='http://docs.oasis-open.org/wsfed/authorization/200706'
+ elementFormDefault='qualified' >
-
+
@@ -45,8 +45,8 @@ MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
-
-
+
+
@@ -57,16 +57,16 @@ MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
-
+
-
-
+
+
-
-
-
+
+
+
@@ -127,7 +127,7 @@ MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
-
+
@@ -142,4 +142,4 @@ MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
-
\ No newline at end of file
+
diff --git a/mdx/schema/ws-federation.xsd b/mdx/schema/ws-federation.xsd
index f87059db..d7b3dcf5 100644
--- a/mdx/schema/ws-federation.xsd
+++ b/mdx/schema/ws-federation.xsd
@@ -1,49 +1,49 @@
-
+ targetNamespace='http://docs.oasis-open.org/wsfed/federation/200706'
+ elementFormDefault='qualified' >
+ schemaLocation='oasis-200401-wss-wssecurity-secext-1.0.xsd' />
+ schemaLocation='oasis-200401-wss-wssecurity-utility-1.0.xsd' />
+ schemaLocation='ws-addr.xsd' />
+ schemaLocation='MetadataExchange.xsd' />
+ schemaLocation='saml-schema-metadata-2.0.xsd' />
+ schemaLocation='ws-securitypolicy-1.2.xsd'/>
@@ -53,22 +53,22 @@ MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
-
-
-
-
+
+
+
+
-
-
-
-
-
+
+
+
+
+
@@ -170,17 +170,17 @@ MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
-
-
-
-
+
+
+
+
-
-
-
-
+
+
+
+
@@ -188,7 +188,7 @@ MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
-
+
@@ -202,31 +202,31 @@ MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
-
-
-
-
-
+
+
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
-
-
+
+
+
+
-
+
@@ -236,7 +236,7 @@ MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
-
+
@@ -254,41 +254,41 @@ MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
-
+
-
+
-
+
-
+
-
-
-
-
-
-
-
+
+
+
+
+
+
+
-
-
-
-
+
+
+
+
@@ -297,98 +297,98 @@ MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
-
-
-
-
-
-
+
+
+
+
+
+
-
-
-
-
+
+
+
+
-
-
-
-
+
+
+
+
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
-
-
-
-
+
+
+
+
-
-
-
-
+
+
+
+
-
-
-
-
-
-
+
+
+
+
+
+
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
-
-
-
-
-
+
+
+
+
+
@@ -397,48 +397,48 @@ MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
-
+
-
-
-
-
+
+
+
+
-
-
-
-
-
-
-
+
+
+
+
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
-
-
-
-
+
+
+
+
+
+
@@ -446,10 +446,10 @@ MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
-
-
-
-
+
+
+
+
@@ -459,7 +459,7 @@ MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
-
+
diff --git a/mdx/schema/ws-securitypolicy-1.2.xsd b/mdx/schema/ws-securitypolicy-1.2.xsd
index 0e562726..bda124b8 100644
--- a/mdx/schema/ws-securitypolicy-1.2.xsd
+++ b/mdx/schema/ws-securitypolicy-1.2.xsd
@@ -1,39 +1,39 @@
-
+ elementFormDefault="qualified"
+ blockDefault="#all" >
-
+
+ 4. Protection Assertions
+ -->
@@ -95,8 +95,8 @@ MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
+ 5. Token Assertions
+ -->
@@ -131,9 +131,9 @@ MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
+ Actual content model is non-deterministic, hence wildcard. The following shows intended content model:
+
+ -->
@@ -191,9 +191,9 @@ MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
+ Actual content model is non-deterministic, hence wildcard. The following shows intended content model:
+
+ -->
@@ -253,7 +253,7 @@ MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
-
+
@@ -373,9 +373,9 @@ MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
+ Actual content model is non-deterministic, hence wildcard. The following shows intended content model:
+
+ -->
@@ -446,9 +446,9 @@ MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
+ Actual content model is non-deterministic, hence wildcard. The following shows intended content model:
+
+ -->
@@ -574,7 +574,7 @@ MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
-
+
@@ -585,9 +585,9 @@ MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
+ Actual content model is non-deterministic, hence wildcard. The following shows intended content model:
+
+ -->
@@ -600,10 +600,10 @@ MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
-
+
+ 7. Security Binding Assertions
+ -->
@@ -961,8 +961,8 @@ MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
+ 8. Supporting Tokens
+ -->
@@ -1040,7 +1040,7 @@ MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
-
+
@@ -1066,10 +1066,10 @@ MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
-
+
+ 9. WSS: SOAP Message Security Options
+ -->
@@ -1142,8 +1142,8 @@ MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
+ 10. WS-Trust Options
+ -->
@@ -1201,5 +1201,5 @@ MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
-
-
\ No newline at end of file
+
+
diff --git a/mdx/schema/xenc-schema-11.xsd b/mdx/schema/xenc-schema-11.xsd
index 1abb6437..9535d2f7 100644
--- a/mdx/schema/xenc-schema-11.xsd
+++ b/mdx/schema/xenc-schema-11.xsd
@@ -2,14 +2,14 @@
@@ -21,77 +21,77 @@
targetNamespace='http://www.w3.org/2009/xmlenc11#'
elementFormDefault='qualified'>
-
+
-
+
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
+
+
+
+
+
+
+
-
+
-
-
-
-
+
+
+
+
-
+
-
-
+
+
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/mdx/schema/xenc-schema.xsd b/mdx/schema/xenc-schema.xsd
index cdfc8333..82f7be4b 100644
--- a/mdx/schema/xenc-schema.xsd
+++ b/mdx/schema/xenc-schema.xsd
@@ -2,14 +2,14 @@
@@ -35,7 +35,7 @@
-
+
@@ -166,6 +166,6 @@
-
+
diff --git a/mdx/schema/xml.xsd b/mdx/schema/xml.xsd
index 38bba34d..f10e6abb 100644
--- a/mdx/schema/xml.xsd
+++ b/mdx/schema/xml.xsd
@@ -27,7 +27,7 @@
<type . . .>
. . .
<attributeGroup ref="xml:specialAttrs"/>
-
+
will define a type which will schema-validate an instance
element with any of those attributes
diff --git a/mdx/schema/xmldsig-core-schema.xsd b/mdx/schema/xmldsig-core-schema.xsd
index 07aad278..ebcd6a42 100644
--- a/mdx/schema/xmldsig-core-schema.xsd
+++ b/mdx/schema/xmldsig-core-schema.xsd
@@ -19,7 +19,7 @@
+ version="0.1" elementFormDefault="qualified">
@@ -32,16 +32,16 @@
-
-
-
-
-
-
+
+
+
+
+
+
-
+
@@ -54,21 +54,21 @@
-
-
-
-
-
-
+
+
+
+
+
+
-
+
-
+
@@ -78,48 +78,48 @@
-
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
-
+
-
+
-
+
-
+
-
+
-
-
+
+
@@ -131,26 +131,26 @@
-
+
-
-
-
-
-
-
+
+
+
+
+
+
-
+
-
+
@@ -159,18 +159,18 @@
-
+
-
-
+
+
-
+
@@ -184,10 +184,10 @@
-
-
-
-
+
+
+
+
@@ -195,17 +195,17 @@
-
-
+
+
-
-
+
+
-
+
@@ -216,13 +216,13 @@
-
+
-
+
@@ -230,40 +230,40 @@
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
-
+
+
@@ -296,10 +296,10 @@
-
-
+
+
-
+
diff --git a/mdx/schema/xmldsig11-schema.xsd b/mdx/schema/xmldsig11-schema.xsd
index f03643a3..4de60789 100644
--- a/mdx/schema/xmldsig11-schema.xsd
+++ b/mdx/schema/xmldsig11-schema.xsd
@@ -2,14 +2,14 @@
@@ -37,7 +37,7 @@
-
+
@@ -53,7 +53,7 @@
type="dsig11:ECValidationDataType" minOccurs="0"/>
-
+
@@ -91,7 +91,7 @@
-
+
@@ -125,7 +125,7 @@
-
+
diff --git a/mdx/strip-aa-mdui.xsl b/mdx/strip-aa-mdui.xsl
index dd323f4b..2368a915 100644
--- a/mdx/strip-aa-mdui.xsl
+++ b/mdx/strip-aa-mdui.xsl
@@ -1,32 +1,32 @@
+ xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata"
+ xmlns:mdui="urn:oasis:names:tc:SAML:metadata:ui"
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns="urn:oasis:names:tc:SAML:2.0:metadata">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/mdx/strip-comments.xsl b/mdx/strip-comments.xsl
index d42afa7e..5bbe1fb9 100644
--- a/mdx/strip-comments.xsl
+++ b/mdx/strip-comments.xsl
@@ -1,28 +1,28 @@
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns="urn:oasis:names:tc:SAML:2.0:metadata">
+
+
+
+
+
+
+
+
-
-
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/mdx/strip-mdui-logo-data.xsl b/mdx/strip-mdui-logo-data.xsl
index da379da0..e4923841 100644
--- a/mdx/strip-mdui-logo-data.xsl
+++ b/mdx/strip-mdui-logo-data.xsl
@@ -1,32 +1,32 @@
+ xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata"
+ xmlns:mdui="urn:oasis:names:tc:SAML:metadata:ui"
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns="urn:oasis:names:tc:SAML:2.0:metadata">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/mdx/strip-mdui-logo-http.xsl b/mdx/strip-mdui-logo-http.xsl
index 50702a53..68526030 100644
--- a/mdx/strip-mdui-logo-http.xsl
+++ b/mdx/strip-mdui-logo-http.xsl
@@ -1,49 +1,49 @@
-
-
-
-
-
-
-
-
-
-
-
- mdui:Logo from non-TLS location removed: '
-
- '
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:mdui="urn:oasis:names:tc:SAML:metadata:ui"
+ xmlns="urn:oasis:names:tc:SAML:2.0:metadata">
+
+
+
+
+
+
+
+
+
+
+
+ mdui:Logo from non-TLS location removed: '
+
+ '
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/mdx/test/beans.xml b/mdx/test/beans.xml
index 2795c95b..e3a8f5a0 100644
--- a/mdx/test/beans.xml
+++ b/mdx/test/beans.xml
@@ -11,17 +11,18 @@
xsi:schemaLocation="
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util.xsd">
-
+
-
-
+
-
+
@@ -29,5 +30,5 @@
-
+
diff --git a/mdx/test/verbs.xml b/mdx/test/verbs.xml
index f5f692df..3214ed55 100644
--- a/mdx/test/verbs.xml
+++ b/mdx/test/verbs.xml
@@ -11,26 +11,27 @@
xsi:schemaLocation="
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util.xsd">
-
+
-
+
-
-
+
+
+
-
+
-
-
+
+
@@ -41,7 +42,7 @@
-
+
@@ -49,5 +50,5 @@
-
+
diff --git a/mdx/uk/README.md b/mdx/uk/README.md
index fdff0d19..88b4703b 100644
--- a/mdx/uk/README.md
+++ b/mdx/uk/README.md
@@ -28,9 +28,9 @@ before being included in the `export` version consumed by interfederation partne
### Export Preview Aggregate vs. Export Aggregate
-Status (2017-01-27):
+Status (2017-02-14):
-* these two aggregates are currently identical.
+* These aggregates are currently identical.
## Production Maturity Pipeline
@@ -43,6 +43,12 @@ The production maturity pipeline consists of:
In this arrangement, features are first introduced to the `test` variant of the aggregate for a period
before being included in the `metadata` variant consumed by federation members.
+The following additional aggregates are normally kept in sync (where appropriate) with the production `metadata`
+aggregate:
+
+* `ukfederation-cdsall-unsigned.xml`
+* `ukfederation-wayf-unsigned.xml`
+
Once a feature has been "in production" (present in the `metadata` variant) for a period, normally one month but
subject to extension at Federation discretion, it will be introduced to the `back` variant. This provides a
temporary "fallback" mechanism for entity owners whose entities have difficulty with a newly introduced
@@ -53,21 +59,13 @@ when it appeared in the fallback aggregate, which would be too late to take corr
### Test Aggregate vs. Production Aggregate
-Status (2017-01-27):
+Status (2017-03-02):
-* the test aggregate implements a _blacklisting_ approach to entity attributes imported from eduGAIN,
-while the production aggregate implements the traditional entity attribute _whitelist_.
-* the test aggregate no longer implements the "key use" fixup required for pre-1.3.1 Shibboleth SPs.
-This adds the `use="signing"` XML attribute to `` elements present in IdP metadata
-without a `use` attribute. It is not needed for later releases of the Shibboleth SP.
-* The test aggregate defines the `saml` namespace prefix (used by entity attributes) on the document element
-instead of in each SAML ``.
-* The test aggregate defines the `mdattr` namespace prefix (used by entity attributes) on the document element
-instead of in each `` element.
-* The test aggregate normalises the `xenc` namespace to not use a prefix, as it is not very commonly used.
+* These aggregates are currently identical.
### Fallback Aggregate vs. Production Aggregate
-Status (2017-01-27):
+Status (2017-03-14):
-* these two aggregates are currently identical
+* the production aggregate implements a _blacklisting_ approach to entity attributes imported from eduGAIN,
+while the production aggregate implements the traditional entity attribute _whitelist_. (2017-03-02)
diff --git a/mdx/uk/beans.xml b/mdx/uk/beans.xml
index 6fb81d6a..22b88e63 100644
--- a/mdx/uk/beans.xml
+++ b/mdx/uk/beans.xml
@@ -15,24 +15,24 @@
-
+
-
+
-
-
+
+
@@ -42,53 +42,54 @@
-
+
+
-
+
-
-
+
+
-
+
+
-
+
-
-
+
+
-
-
+
+
-
-
+
+
-
+
@@ -98,35 +99,34 @@
-->
-
-
+
+
-
+
-
+
-
+
-
-
+
+
@@ -135,11 +135,11 @@
-
-
+
+
-
+
-
-
+
+
-
-
-
+
+
-
-
+
-
-
+
-
-
-
-
+
+
-
-
-
+
+
-
-
+
-
-
-
+
+
-
+
administrative
@@ -237,46 +235,32 @@
-
-
+
+
-
-
+
+
-
+
-
+
-
-
-
-
-
-
-
-
+
-
+
@@ -286,81 +270,56 @@
Make all three potential scope lists equivalent (on the entity, on
the IDPSSODescriptor and on the AttributeAuthority).
-->
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
-
-
-
+
+
-
-
+
-
-
+
+
-
+
@@ -373,16 +332,23 @@
-
-
+
+
-
-
+
+
+
+
-
+
-
-
+
-
+
@@ -423,10 +389,10 @@
-
+
@@ -437,7 +403,7 @@
-
+
-
+
-
+
+
-
+
-
+
-
-
+
-
+
@@ -491,7 +458,7 @@
-
+
-
+
-
+
-
+
-
+
-
+
diff --git a/mdx/uk/check_fixup_encmethod.xsl b/mdx/uk/check_fixup_encmethod.xsl
index 0e5825cf..afbe978e 100644
--- a/mdx/uk/check_fixup_encmethod.xsl
+++ b/mdx/uk/check_fixup_encmethod.xsl
@@ -1,36 +1,36 @@
-
-
-
-
-
-
-
-
- KeyDescriptor contains EncryptionMethod: OpenSAML-C 2.0 problem
-
-
-
-
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:ds="http://www.w3.org/2000/09/xmldsig#"
+ xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata"
+ xmlns:saml="urn:oasis:names:tc:SAML:2.0:assertion"
+ xmlns:shibmd="urn:mace:shibboleth:metadata:1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:idpdisc="urn:oasis:names:tc:SAML:profiles:SSO:idp-discovery-protocol"
+ xmlns="urn:oasis:names:tc:SAML:2.0:metadata">
+
+
+
+
+
+
+
+
+ KeyDescriptor contains EncryptionMethod: OpenSAML-C 2.0 problem
+
+
+
+
diff --git a/mdx/uk/check_fixup_keyuse.xsl b/mdx/uk/check_fixup_keyuse.xsl
deleted file mode 100644
index cb91fe5d..00000000
--- a/mdx/uk/check_fixup_keyuse.xsl
+++ /dev/null
@@ -1,44 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
- IdP SSO KeyDescriptor lacking @use
-
-
-
-
-
- IdP AA KeyDescriptor lacking @use
-
-
-
-
diff --git a/mdx/uk/check_uk_keydesc_key.xsl b/mdx/uk/check_uk_keydesc_key.xsl
index 1214b41c..a134c95f 100644
--- a/mdx/uk/check_uk_keydesc_key.xsl
+++ b/mdx/uk/check_uk_keydesc_key.xsl
@@ -1,33 +1,33 @@
-
-
-
-
-
-
-
-
- KeyDescriptor lacks embedded key material
-
-
-
-
+ xmlns:ds="http://www.w3.org/2000/09/xmldsig#"
+ xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata"
+ xmlns:mdrpi="urn:oasis:names:tc:SAML:metadata:rpi"
+ xmlns:ukfedlabel="http://ukfederation.org.uk/2006/11/label"
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns="urn:oasis:names:tc:SAML:2.0:metadata">
+
+
+
+
+
+
+
+
+ KeyDescriptor lacks embedded key material
+
+
+
+
diff --git a/mdx/uk/check_uk_mdattr.xsl b/mdx/uk/check_uk_mdattr.xsl
index c7e4d913..48f3ef66 100644
--- a/mdx/uk/check_uk_mdattr.xsl
+++ b/mdx/uk/check_uk_mdattr.xsl
@@ -1,123 +1,124 @@
-
-
-
+ xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata"
+ xmlns:mdattr="urn:oasis:names:tc:SAML:metadata:attribute"
+ xmlns:saml="urn:oasis:names:tc:SAML:2.0:assertion"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns="urn:oasis:names:tc:SAML:2.0:metadata">
+
+
+
-
-
-
- Assertion not permitted within EntityAttributes
-
-
-
-
-
-
-
- entity attribute
-
- has no NameFormat attribute
-
-
-
-
-
-
- entity attribute
-
- has wrong NameFormat value
-
-
-
-
-
-
-
-
- unknown entity attribute name
-
-
-
-
-
-
-
-
-
- unknown entity category URI
-
-
-
-
-
-
+
+
+ Assertion not permitted within EntityAttributes
+
+
+
+
+
+
+
+ entity attribute
+
+ has no NameFormat attribute
+
+
+
+
+
+
+ entity attribute
+
+ has wrong NameFormat value
+
+
+
+
+
+
+
+
+
+ unknown entity attribute name
+
+
+
+
+
+
+
+
+
+ unknown entity category URI
+
+
+
+
+
+
-
-
-
- unknown entity category support URI
-
-
-
-
+
+
+
+ unknown entity category support URI
+
+
+
+
-
-
-
-
- unknown assurance certification URI
-
-
-
-
+
+
+
+
+ unknown assurance certification URI
+
+
+
+
diff --git a/mdx/uk/check_uk_mdrps.xsl b/mdx/uk/check_uk_mdrps.xsl
index d7b83d45..bebafa19 100644
--- a/mdx/uk/check_uk_mdrps.xsl
+++ b/mdx/uk/check_uk_mdrps.xsl
@@ -1,57 +1,57 @@
-
-
-
-
-
-
-
-
-
- exported entity lacks a registrationInstant value
-
-
-
-
-
-
-
-
-
- invalid RegistrationPolicy value
-
-
-
-
-
-
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata"
+ xmlns:mdrpi="urn:oasis:names:tc:SAML:metadata:rpi"
+ xmlns:ukfedlabel="http://ukfederation.org.uk/2006/11/label"
+ xmlns="urn:oasis:names:tc:SAML:2.0:metadata">
+
+
+
+
+
+
+
+
+
+ exported entity lacks a registrationInstant value
+
+
+
+
+
+
+
+
+
+ invalid RegistrationPolicy value
+
+
+
+
+
+
diff --git a/mdx/uk/check_uk_urlenc.xsl b/mdx/uk/check_uk_urlenc.xsl
index d9806fc9..3f14f05c 100644
--- a/mdx/uk/check_uk_urlenc.xsl
+++ b/mdx/uk/check_uk_urlenc.xsl
@@ -1,32 +1,32 @@
-
-
-
-
-
-
-
- URL-encoded Location attribute; should be entity-encoded
-
-
-
-
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:ds="http://www.w3.org/2000/09/xmldsig#"
+ xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata"
+ xmlns:shibmd="urn:mace:shibboleth:metadata:1.0"
+ xmlns="urn:oasis:names:tc:SAML:2.0:metadata">
+
+
+
+
+
+
+
+ URL-encoded Location attribute; should be entity-encoded
+
+
+
+
diff --git a/mdx/uk/check_ukfedlabel.xsl b/mdx/uk/check_ukfedlabel.xsl
new file mode 100644
index 00000000..8d236355
--- /dev/null
+++ b/mdx/uk/check_ukfedlabel.xsl
@@ -0,0 +1,74 @@
+
+
+
+
+
+
+
+
+
+
+
+
+ entity must not have more than one ukfedlabel:AccountableUsers element
+
+
+
+
+
+
+ entity must not have more than one ukfedlabel:ExportOptIn element
+
+
+
+
+
+
+ entity must not have more than one ukfedlabel:ExportOptOut element
+
+
+
+
+
+
+ entity must not have more than one ukfedlabel:Software element
+
+
+
+
+
+
+ entity must not have more than one ukfedlabel:UKFederationMember element
+
+
+
+
+
+
+
+
+
+ entity cannot be both opted in to and opted out from export
+
+
+
+
+
diff --git a/mdx/uk/check_ukreg.xsl b/mdx/uk/check_ukreg.xsl
index 728c0306..b29eea90 100644
--- a/mdx/uk/check_ukreg.xsl
+++ b/mdx/uk/check_ukreg.xsl
@@ -1,65 +1,53 @@
+
+
+
+
- xmlns:mdxMail="xalan://uk.ac.sdss.xalan.md.Mail"
- extension-element-prefixes="mdxMail"
+
+
+
+ badly formatted e-mail address: ''
+
+
- xmlns="urn:oasis:names:tc:SAML:2.0:metadata">
-
-
+
+
+
+
+
+ Location
+
+ not in standard form
+
+
+
-
-
-
-
- badly formatted e-mail address: ''
-
-
-
-
-
-
-
-
-
- Location
-
- not in standard form
-
-
-
-
-
-
-
-
-
- entity cannot be both opted in to and opted out from export
-
-
-
-
diff --git a/mdx/uk/collect.xml b/mdx/uk/collect.xml
index fa987eb6..fd7392f5 100644
--- a/mdx/uk/collect.xml
+++ b/mdx/uk/collect.xml
@@ -16,21 +16,22 @@
Import commonly used beans.
-->
-
+
-
+
+
-
+
-
+
diff --git a/mdx/uk/entity_scopes.xsl b/mdx/uk/entity_scopes.xsl
index 66c3548f..34e74758 100644
--- a/mdx/uk/entity_scopes.xsl
+++ b/mdx/uk/entity_scopes.xsl
@@ -1,38 +1,38 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+ xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata"
+ xmlns:shibmd="urn:mace:shibboleth:metadata:1.0"
+
+ xmlns="urn:oasis:names:tc:SAML:2.0:metadata"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ exclude-result-prefixes="md">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/mdx/uk/final_tweak.xsl b/mdx/uk/final_tweak.xsl
index f27f7e9a..c52acc4c 100644
--- a/mdx/uk/final_tweak.xsl
+++ b/mdx/uk/final_tweak.xsl
@@ -1,183 +1,167 @@
-
-
-
-
-
-
-
-
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
U K F E D E R A T I O N M E T A D A T A
-
-
- ***
-
- ***
-
-
- Aggregate built
+
+
U K F E D E R A T I O N M E T A D A T A
+
+
+ ***
+
+ ***
+
+
+ Aggregate built
(
local)
-
-
- Aggregate valid for
-
- days, until
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/mdx/uk/fix_mailto.xsl b/mdx/uk/fix_mailto.xsl
index b25f1793..1c99b1e5 100644
--- a/mdx/uk/fix_mailto.xsl
+++ b/mdx/uk/fix_mailto.xsl
@@ -1,40 +1,40 @@
-
-
-
-
-
-
-
- mailto:
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+ xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata"
+
+ xmlns="urn:oasis:names:tc:SAML:2.0:metadata"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ exclude-result-prefixes="md">
+
+
+
+
+
+
+
+ mailto:
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/mdx/uk/fixup_keyuse.xsl b/mdx/uk/fixup_keyuse.xsl
deleted file mode 100644
index 126069b6..00000000
--- a/mdx/uk/fixup_keyuse.xsl
+++ /dev/null
@@ -1,52 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
- signing
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/mdx/uk/fragment.xsl b/mdx/uk/fragment.xsl
index f0a7ef0b..87375526 100644
--- a/mdx/uk/fragment.xsl
+++ b/mdx/uk/fragment.xsl
@@ -1,73 +1,73 @@
+ exclude-result-prefixes="xsi xsl">
+
+
+
+
+
+
+
-
-
+
+
+
-
-
+
-
-
-
-
+
+
+
-
-
-
-
-
-
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/mdx/uk/generate.xml b/mdx/uk/generate.xml
index d4fcbaaa..0c679ef1 100644
--- a/mdx/uk/generate.xml
+++ b/mdx/uk/generate.xml
@@ -16,13 +16,13 @@
Import commonly used beans.
-->
-
+
-
+
@@ -36,23 +36,23 @@
*** ***
*****************************
-->
-
+
-
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
+
-
+
@@ -120,6 +80,18 @@
+
+
+
+
+
+
+
+
-
+
-
-
+
-
-
@@ -194,13 +166,13 @@
-
+
@@ -212,84 +184,56 @@
-
-
+
-
+
-
+
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
-
+
@@ -299,8 +243,8 @@
-
-
+
+
-
+
-
+
+
-
+
-
+
-
-
+
-
-
+
-
+
-
-
+
-
+
-
+
-
+
-
-
+
+
+
-
+
-
-
+
+
-
+
-
@@ -420,7 +362,7 @@
-
+
-
+
-
+
-
+
-
-
+
@@ -456,15 +397,15 @@
-
+
-
+
-
+
-
-
-
+
-
+
-
-
+
+
+
-
+
-
-
+
+
-
+
-
+
-
+
@@ -527,17 +469,18 @@
+
-
+
-
+
-
+
-
+
-
-
-
-
+
+
+
-
+
-
-
+
+
-
-
+
-
-
+
-
+
-
-
+
-
+
-
+
-
-
-
-
+
+
+
-
+
-
-
+
+
-
+
+
-
+
+
-
+
-
+
@@ -651,7 +595,7 @@
*** ***
*******************************************
-->
-
+
-
-
-
-
+
+
-
-
+
+
+
-
+
-
-
+
+
-
-
+
+
-
+
@@ -704,39 +646,43 @@
matching specific rules.
-->
-
+
-
+
-
-
+
-
-
+
https://idp.glowscotland.org.uk/shibboleth
-
+
-
@@ -749,18 +695,20 @@
-->
-
+
-
-
-
+
+
+
+
@@ -768,12 +716,12 @@
-
+
-
+
-
-
+
+
-
-
+
+
-
+
-
+
@@ -814,12 +762,13 @@
matching specific rules.
-->
-
+
-
@@ -827,17 +776,19 @@
-
-
+
https://idp.glowscotland.org.uk/shibboleth
@@ -846,7 +797,8 @@
-
@@ -859,18 +811,20 @@
-->
-
+
-
-
-
+
+
+
+
@@ -878,15 +832,16 @@
-
-
+
+
+
-
+
-
+
@@ -899,32 +854,32 @@
*** ***
*************************************
-->
-
-
+
+
-
+
-
+
-
+
@@ -935,36 +890,36 @@
-
+
-
+
-
+
-
+
@@ -979,10 +934,10 @@
-
+
-
+
-
-
+
+
@@ -1009,14 +965,14 @@
-
+
-
+
@@ -1052,11 +1008,12 @@
*** P R E - P R O D U C T I O N M D X M E R G E ***
*** ***
***********************************************************
-
+
Merge in entities from pre-production metadata exchange sources.
-->
-
+
@@ -1064,24 +1021,24 @@
-
+
-
+
-
+
@@ -1092,7 +1049,7 @@
-
+
diff --git a/mdx/uk/import.xsl b/mdx/uk/import.xsl
index c413f8c6..900cd105 100644
--- a/mdx/uk/import.xsl
+++ b/mdx/uk/import.xsl
@@ -75,7 +75,6 @@
urn:mace:shibboleth:metadata:1.0 shibboleth-metadata-1.0.xsd
http://ukfederation.org.uk/2006/11/label uk-fed-label.xsd
http://refeds.org/metadata refeds-metadata.xsd
- http://sdss.ac.uk/2006/06/WAYF uk-wayf.xsd
http://www.w3.org/2001/04/xmlenc# xenc-schema.xsd
http://www.w3.org/2009/xmlenc11# xenc-schema-11.xsd
http://www.w3.org/2000/09/xmldsig# xmldsig-core-schema.xsd">
diff --git a/mdx/uk/mdq-multisign.xml b/mdx/uk/mdq-multisign.xml
index 443f09a8..f97e91d3 100644
--- a/mdx/uk/mdq-multisign.xml
+++ b/mdx/uk/mdq-multisign.xml
@@ -38,18 +38,22 @@
-
+
-
+
+
+
+
+
@@ -57,16 +61,20 @@
-
-
-
+
+
+
+
+
+
+
-
-
+
-
+
+
-
+
-
+
-
+
diff --git a/mdx/uk/ns_norm_back.xsl b/mdx/uk/ns_norm_back.xsl
index f485059c..c482464e 100644
--- a/mdx/uk/ns_norm_back.xsl
+++ b/mdx/uk/ns_norm_back.xsl
@@ -1,117 +1,138 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+ xmlns:alg="urn:oasis:names:tc:SAML:metadata:algsupport"
+ xmlns:ds="http://www.w3.org/2000/09/xmldsig#"
+ xmlns:idpdisc="urn:oasis:names:tc:SAML:profiles:SSO:idp-discovery-protocol"
+ xmlns:init="urn:oasis:names:tc:SAML:profiles:SSO:request-init"
+ xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata"
+ xmlns:mdattr="urn:oasis:names:tc:SAML:metadata:attribute"
+ xmlns:mdrpi="urn:oasis:names:tc:SAML:metadata:rpi"
+ xmlns:mdui="urn:oasis:names:tc:SAML:metadata:ui"
+ xmlns:remd="http://refeds.org/metadata"
+ xmlns:saml="urn:oasis:names:tc:SAML:2.0:assertion"
+ xmlns:shibmd="urn:mace:shibboleth:metadata:1.0"
+ xmlns:ukfedlabel="http://ukfederation.org.uk/2006/11/label"
+ xmlns:xenc="http://www.w3.org/2001/04/xmlenc#"
+
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ exclude-result-prefixes="alg md xenc"
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns="urn:oasis:names:tc:SAML:2.0:metadata">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/mdx/uk/ns_norm_cds.xsl b/mdx/uk/ns_norm_cds.xsl
index 718dba73..2d3dcfb2 100644
--- a/mdx/uk/ns_norm_cds.xsl
+++ b/mdx/uk/ns_norm_cds.xsl
@@ -1,78 +1,77 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+ xmlns:alg="urn:oasis:names:tc:SAML:metadata:algsupport"
+ xmlns:ds="http://www.w3.org/2000/09/xmldsig#"
+ xmlns:idpdisc="urn:oasis:names:tc:SAML:profiles:SSO:idp-discovery-protocol"
+ xmlns:init="urn:oasis:names:tc:SAML:profiles:SSO:request-init"
+ xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata"
+ xmlns:mdattr="urn:oasis:names:tc:SAML:metadata:attribute"
+ xmlns:mdrpi="urn:oasis:names:tc:SAML:metadata:rpi"
+ xmlns:mdui="urn:oasis:names:tc:SAML:metadata:ui"
+ xmlns:saml="urn:oasis:names:tc:SAML:2.0:assertion"
+ xmlns:shibmd="urn:mace:shibboleth:metadata:1.0"
+ xmlns:ukfedlabel="http://ukfederation.org.uk/2006/11/label"
+
+ exclude-result-prefixes="alg ds init md mdattr saml shibmd ukfedlabel xsi"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns="urn:oasis:names:tc:SAML:2.0:metadata">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/mdx/uk/ns_norm_export.xsl b/mdx/uk/ns_norm_export.xsl
index 45f91dd9..7947548f 100644
--- a/mdx/uk/ns_norm_export.xsl
+++ b/mdx/uk/ns_norm_export.xsl
@@ -1,117 +1,132 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/mdx/uk/ns_norm_export_preview.xsl b/mdx/uk/ns_norm_export_preview.xsl
new file mode 100644
index 00000000..0ddc1e1f
--- /dev/null
+++ b/mdx/uk/ns_norm_export_preview.xsl
@@ -0,0 +1,132 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/mdx/uk/ns_norm_fragment.xsl b/mdx/uk/ns_norm_fragment.xsl
index 9d58ec58..1402c135 100644
--- a/mdx/uk/ns_norm_fragment.xsl
+++ b/mdx/uk/ns_norm_fragment.xsl
@@ -1,85 +1,84 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/mdx/uk/ns_norm_test.xsl b/mdx/uk/ns_norm_test.xsl
index b05bf888..3f930240 100644
--- a/mdx/uk/ns_norm_test.xsl
+++ b/mdx/uk/ns_norm_test.xsl
@@ -1,121 +1,120 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
diff --git a/mdx/uk/ns_norm_uk.xsl b/mdx/uk/ns_norm_uk.xsl
index e42943f7..dca0f099 100644
--- a/mdx/uk/ns_norm_uk.xsl
+++ b/mdx/uk/ns_norm_uk.xsl
@@ -1,117 +1,138 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+ xmlns:alg="urn:oasis:names:tc:SAML:metadata:algsupport"
+ xmlns:ds="http://www.w3.org/2000/09/xmldsig#"
+ xmlns:idpdisc="urn:oasis:names:tc:SAML:profiles:SSO:idp-discovery-protocol"
+ xmlns:init="urn:oasis:names:tc:SAML:profiles:SSO:request-init"
+ xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata"
+ xmlns:mdattr="urn:oasis:names:tc:SAML:metadata:attribute"
+ xmlns:mdrpi="urn:oasis:names:tc:SAML:metadata:rpi"
+ xmlns:mdui="urn:oasis:names:tc:SAML:metadata:ui"
+ xmlns:remd="http://refeds.org/metadata"
+ xmlns:saml="urn:oasis:names:tc:SAML:2.0:assertion"
+ xmlns:shibmd="urn:mace:shibboleth:metadata:1.0"
+ xmlns:ukfedlabel="http://ukfederation.org.uk/2006/11/label"
+ xmlns:xenc="http://www.w3.org/2001/04/xmlenc#"
+
+ exclude-result-prefixes="alg md xenc"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns="urn:oasis:names:tc:SAML:2.0:metadata">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/mdx/uk/scopes_copy.xsl b/mdx/uk/scopes_copy.xsl
index 658a1a18..c97e12e5 100644
--- a/mdx/uk/scopes_copy.xsl
+++ b/mdx/uk/scopes_copy.xsl
@@ -1,22 +1,22 @@
-
-
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/mdx/uk/sp_mdui_test.xsl b/mdx/uk/sp_mdui_test.xsl
index b1e2a0e1..4c67f43f 100644
--- a/mdx/uk/sp_mdui_test.xsl
+++ b/mdx/uk/sp_mdui_test.xsl
@@ -1,11 +1,11 @@
@@ -16,29 +16,28 @@
xmlns:mdui="urn:oasis:names:tc:SAML:metadata:ui"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:members="http://ukfederation.org.uk/2007/01/members"
- xmlns:wayf="http://sdss.ac.uk/2006/06/WAYF"
xmlns:math="http://exslt.org/math"
xmlns:date="http://exslt.org/dates-and-times"
xmlns:dyn="http://exslt.org/dynamic"
xmlns:set="http://exslt.org/sets"
xmlns:idpdisc="urn:oasis:names:tc:SAML:profiles:SSO:idp-discovery-protocol"
- exclude-result-prefixes="xsl ds md mdui xsi members wayf math date dyn set idpdisc"
+ exclude-result-prefixes="xsl ds md mdui xsi members math date dyn set idpdisc"
version="1.0">
-
+
-
+
-
+
UK Federation SP discovery UI test
UK Federation SP discovery UI test
-
+
:
-
+
-
+
-
@@ -87,7 +86,7 @@
-
+
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Members:
+
+
+
+ Entities:
+
+
+
+ IdPs:
+
+
+
+ SPs:
+
+
+
+ Entities per member:
+
+
+
+
+
+ Algorithm support:
+
+ of all entities
+
+
+
+
+ GCM support:
+
+ of all entities
+
+
+
+
+ Algorithm support:
+
+ of SP entities
+
+
+
+
+ Shibboleth IdP v3:
+
+ (
+
+ of IdPs)
+
+
+
+
+
+ SPs without SAML 2.0 support:
+
+
+
+
+
+
+
+ :
+
+ :
+
+
+
+
+
+ (
+
+ )
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ IdPs without SAML 2.0 support:
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Breakdown by software used:
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Shibboleth 3.x
+
+
+
+
+
+ Shibboleth 2.x
+
+
+
+
+
+
+ Shibboleth combined
+
+
+
+
+
+
+ Other than Shibboleth
+
+
+
+
+
+ EZproxy
+
+
+
+
+
+ simpleSAMLphp
+
+
+
+
+
+ Atypon SAML SP
+
+
+
+
+
+ AthensIM
+
+
+
+
+
+ Guanxi
+
+
+
+
+
+ Athens/Shibboleth gateway
+
+
+
+
+
+ OpenAthens Virtual IdP
+
+
+
+
+
+ OpenAthens
+
+
+
+
+
+ Unknown or other
+
+
+
+
+
+
+
+
+
+
+
+ 0
+ 0
+ 8
+
+
+
+
+ :
+
+ (
+
+ )
+
+
+
+
+
+
+ :
+
+
+
+
+ ()
+
+
+
+
+
+
+
+
+
+
diff --git a/mdx/uk/statistics.xsl b/mdx/uk/statistics.xsl
index c31d1721..ab3b13c3 100644
--- a/mdx/uk/statistics.xsl
+++ b/mdx/uk/statistics.xsl
@@ -1,11 +1,11 @@
@@ -30,16 +30,16 @@
version="1.0">
-
+
-
+
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
+
-
+
-
+
-
+
-
+
Outsourcing worksheet:
- -
-
- Members who are Eduserv:
- ()
-
-
- -
-
- Members using an Athens IdP:
- ()
-
-
- -
-
- Members (other than Eduserv) using an Athens IdP:
- ()
-
-
-
Members pushing scopes:
@@ -372,16 +306,6 @@
()
- -
-
- Chart:
- ,
- ,
- ,
- ,
- .
-
-
@@ -392,22 +316,22 @@
*** ***
*********************************************
-->
-
+
- This section provides a useful bottom-up summary of the federation,
- by categorisation of entities, both total numbers and percentages.
- There are three subsections, presenting statistics applying to all entities,
- to Identity Providers and to Service Providers.
- In each subsection there is a 'breakdown by software used'.
- This lists the entities using each type of software recorded if
- there are fewer than 10 such entities in the category;
- otherwise only the overall numbers and percentages are given.
+ This section provides a useful bottom-up summary of the federation,
+ by categorisation of entities, both total numbers and percentages.
+ There are three subsections, presenting statistics applying to all entities,
+ to Identity Providers and to Service Providers.
+ In each subsection there is a 'breakdown by software used'.
+ This lists the entities using each type of software recorded if
+ there are fewer than 10 such entities in the category;
+ otherwise only the overall numbers and percentages are given.
(The software used is requested by the UK federation as part of the entity registration procedure,
and this information is recorded in the Software element of our records but not included
in published metadata. Heuristics are used to guess the software in use
- if there is no Software element in the metadata.)
+ if there is no Software element in the metadata.)
Total entities: . This breaks down into:
-
+
Of the entities:
-
+
@@ -482,7 +406,7 @@
-
+
@@ -502,11 +426,11 @@
-
+
-
+
@@ -526,8 +450,8 @@
*** ***
***********************************************
-->
-
-
+
+
Identity Providers
There are identity providers,
including
@@ -560,12 +484,12 @@
Support SAML 1.1 artifact resolution:
(
- of all IdPs,
+ of all IdPs,
of SAML 1.1 IdPs).
-
+
@@ -582,7 +506,7 @@
-
+
SSO protocol support:
-
+
@@ -632,7 +556,7 @@
()
-
+
Not supporting SAML 1.1 SSO:
@@ -641,7 +565,7 @@
()
-
+
@@ -651,7 +575,7 @@
SAML 2.0 SSO:
()
-
+
@@ -661,7 +585,7 @@
( of SAML 2.0 IdPs,
of all IdPs)
-
+
@@ -673,7 +597,7 @@
-
+
Not supporting SAML 2.0 SSO:
@@ -682,7 +606,7 @@
()
-
+
@@ -692,8 +616,8 @@
-
-
+
+
-
-
+
+
Service Providers
There are service providers,
including
@@ -718,7 +642,7 @@
().
-
+
@@ -727,7 +651,7 @@
().
-
+
@@ -738,7 +662,7 @@
().
-
+
@@ -747,7 +671,7 @@
().
-
+
@@ -762,9 +686,9 @@
-
+
-
+
SSO protocol support:
)
-
+
@@ -798,7 +722,7 @@
-
+
@@ -818,7 +742,7 @@
()
-
+
@@ -831,7 +755,7 @@
-
+
Not supporting SAML 1.1 SSO:
@@ -840,7 +764,7 @@
()
-
+
@@ -860,7 +784,7 @@
()
-
+
@@ -889,11 +813,11 @@
PAOS:
()
-
-
+
+
-
+
Not supporting SAML 2.0 SSO:
@@ -904,7 +828,7 @@
-
+
@@ -912,9 +836,9 @@
-
-
-
+
+
+
- This section is intended to be largely self-explanatory.
- Any items in [...] brackets give additional information about the entity:
- its type, the software used, etc.
+ This section is intended to be largely self-explanatory.
+ Any items in [...] brackets give additional information about the entity:
+ its type, the software used, etc.
-
-
+
+
-
+
The following entities are visible in the main federation discovery service
but do not assert user accountability:
@@ -971,8 +895,8 @@
***************************************************************
-->
-
-
+
+
The following
members of the UK federation have no deployed entities,
- either in their own name or deployed on their behalf by other members.
+ either in their own name or deployed on their behalf by other members
+ and to which they have "pushed" scopes.
+ Use of OpenAthens virtual IdPs is not considered here.
The list is ordered by date of joining the UK federation.
-
+
-
-
-
- The following lists show entities that are believed to be running the
- Shibboleth 1.3 software, which reached its official end of life
- date on 30-June-2010.
- As heuristics have been used to create these lists, they may
- not be completely accurate.
-
- Shibboleth 1.3 Identity Provider Entities
-
-
-
-
- Shibboleth 1.3 Service Provider Entities
-
-
-
-
-
-
+
@@ -1050,7 +949,7 @@
[RqA]
- [!RqA]
+ [!RqA]
@@ -1070,13 +969,13 @@
No SAML 2.0 support
-
+
-
+
-
+
@@ -1104,7 +1003,7 @@
[RqA]
- [!RqA]
+ [!RqA]
@@ -1124,13 +1023,14 @@
No SAML 2.0 support
-
+
-
+
+
-
+
@@ -1211,6 +1145,18 @@
)
+
+
+
+
+
+
+
+
+
+
+
+ |
@@ -1246,31 +1192,26 @@
|
-
+
-
-
+
+
-
-
-
- *
-
-
+
*
-
+
@@ -1279,7 +1220,7 @@
|
-
+
@@ -1336,7 +1277,7 @@
*** " O F T H E S E " E X T R A S ***
*** ***
*********************************************
-
+
Extra list entries for the "of these" breakdowns
in the entity sections.
-->
@@ -1355,7 +1296,7 @@
-
+
@@ -1366,7 +1307,7 @@
()
provide algorithm support metadata:
-
+
@@ -1385,7 +1326,7 @@
()
-
+
@@ -1394,7 +1335,7 @@
()
-
+
@@ -1403,7 +1344,7 @@
()
-
+
@@ -1412,7 +1353,7 @@
()
-
+
@@ -1433,9 +1374,9 @@
()
-
+
-
+
@@ -1453,7 +1394,7 @@
()
-
+
@@ -1462,7 +1403,7 @@
()
-
+
@@ -1489,7 +1430,7 @@
()
-
+
()
-
+
@@ -1519,9 +1460,9 @@
[, ]
-
+
-
+
@@ -1542,71 +1483,15 @@
()
-
+
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- entities:
-
-
-
- -
- :
-
-
-
- [HasEncKey]
-
- (
-
- )
-
-
-
-
-
@@ -1623,7 +1508,7 @@
*** C L A S S I F Y E N T I T I E S B Y S O F T W A R E ***
*** ***
*********************************************************************
-
+
The classification algorithms used here are chained together so that
each classification step works only on those entities not already
classified. This means that entities won't be counted twice, but
@@ -1631,10 +1516,10 @@
shouldn't be changed without careful thought. In general, more
specific algorithms should appear before more general ones.
-->
-
+
@@ -1674,7 +1559,7 @@
select="$entities.simplesamlphp.in[md:Extensions/ukfedlabel:Software/@name='simpleSAMLphp']"/>
-
+
@@ -1683,7 +1568,7 @@
select="$entities.atyponsamlsp.in[md:Extensions/ukfedlabel:Software/@name='Atypon SAML SP 1.1/2.0']"/>
-
+
@@ -1692,7 +1577,7 @@
select="$entities.openathens.in[md:Extensions/ukfedlabel:Software/@name='OpenAthens']"/>
-
+
@@ -1703,7 +1588,7 @@
]"/>
-
+
@@ -1717,30 +1602,15 @@
-
-
-
-
-
-
+
-
+
@@ -1754,7 +1624,7 @@
]"/>
-
+
@@ -1763,7 +1633,7 @@
select="$entities.guanxi.in[md:Extensions/ukfedlabel:Software/@name='Guanxi']"/>
-
+
@@ -1772,14 +1642,14 @@
select="$entities.athensim.in[md:Extensions/ukfedlabel:Software/@name='AthensIM']"/>
-
+
-
+
-
+
Shibboleth 3.x
-
+
Shibboleth 2.x
-
-
-
- Shibboleth 1.3
-
-
-
-
+
Shibboleth combined
@@ -1820,13 +1683,13 @@
Other than Shibboleth
-
+
EZproxy
-
+
simpleSAMLphp
@@ -1844,31 +1707,31 @@
AthensIM
-
+
Guanxi
-
+
Athens/Shibboleth gateway
-
+
OpenAthens Virtual IdP
-
+
OpenAthens
-
+
Unknown or other
@@ -1915,7 +1778,7 @@
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+ xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata"
+ xmlns:ukfedlabel="http://ukfederation.org.uk/2006/11/label"
+
+ xmlns:exsl="http://exslt.org/common"
+ extension-element-prefixes="exsl"
+
+ xmlns="urn:oasis:names:tc:SAML:2.0:metadata"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ exclude-result-prefixes="md">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/mdx/uk/strip_sirtfi_contacts.xsl b/mdx/uk/strip_sirtfi_contacts.xsl
index 9975d051..659847dd 100644
--- a/mdx/uk/strip_sirtfi_contacts.xsl
+++ b/mdx/uk/strip_sirtfi_contacts.xsl
@@ -1,34 +1,34 @@
+ xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata"
+ xmlns:mdrpi="urn:oasis:names:tc:SAML:metadata:rpi"
+ xmlns:remd="http://refeds.org/metadata"
+
+ xmlns="urn:oasis:names:tc:SAML:2.0:metadata"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ exclude-result-prefixes="md">
+
+
+
+
+
+
+
+
+
-
-
-
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/mdx/uk/verbs.xml b/mdx/uk/verbs.xml
index e613951b..cfed773c 100644
--- a/mdx/uk/verbs.xml
+++ b/mdx/uk/verbs.xml
@@ -16,12 +16,12 @@
Import commonly used beans.
-->
-
+
-
+
-
+
-
+
@@ -46,22 +46,53 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
-
-
+
+
-
+
@@ -77,8 +108,8 @@
*** ***
***********************
-->
-
-
+
+
-
+
-
-
+
+
-
+
-
-
+
+
@@ -158,25 +189,25 @@
-
+
-
+
-
+
-
+
-
+
-
+
+
-
+
-
+
-
+
+
-
+
@@ -214,39 +247,39 @@
-
+
-
+
-
+
-
+
-
-
+
-
-
+
-
+
@@ -272,43 +305,43 @@
-
-
+
+
-
-
+
-
+
-
+
-
+
-
+
@@ -322,16 +355,17 @@
### ###
#################################################
-->
-
-
+
+
+
-
+
-
-
+
+
@@ -341,8 +375,8 @@
-
-
+
+
@@ -350,7 +384,7 @@
-
+
-
+
diff --git a/mdx/us_incommon/beans.xml b/mdx/us_incommon/beans.xml
index 749202da..8d99949b 100644
--- a/mdx/us_incommon/beans.xml
+++ b/mdx/us_incommon/beans.xml
@@ -11,27 +11,28 @@
xsi:schemaLocation="
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util.xsd">
-
+
-
+
-
+
-
+
-
+
-
+
-
+
+
@@ -39,13 +40,13 @@
-
+
-
+ p:resource="classpath:us_incommon/inc-md-cert.pem"/>
+
@@ -55,7 +56,7 @@
@@ -66,10 +67,10 @@
-
+
@@ -80,11 +81,11 @@
-
+
-
+
@@ -97,20 +98,20 @@
-
+
-
+
-
+
-
+
-
+
-
@@ -143,20 +143,19 @@
-
+
-
-
+
-
+
-
+
-
+
-
+
diff --git a/mdx/us_incommon/verbs.xml b/mdx/us_incommon/verbs.xml
index 6ca5a631..aff47f46 100644
--- a/mdx/us_incommon/verbs.xml
+++ b/mdx/us_incommon/verbs.xml
@@ -11,29 +11,30 @@
xsi:schemaLocation="
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util.xsd">
-
+
-
+
-
+
-
+
+
-
+
-
-
+
+
@@ -44,7 +45,7 @@
-
+
@@ -52,8 +53,8 @@
-
-
+
+
@@ -63,8 +64,8 @@
-
-
+
+
@@ -72,7 +73,7 @@
-
+
diff --git a/mdx/validation-beans.xml b/mdx/validation-beans.xml
index da3237f7..f7ed527f 100644
--- a/mdx/validation-beans.xml
+++ b/mdx/validation-beans.xml
@@ -20,12 +20,12 @@
***********************************
-->
-
-
+
-
-
+
-
-
+
-
-
+
-
-
+
-
-
+
-
-
+
-
-
+
-
-
+
-
-
+
-
-
+
-
+
@@ -115,7 +115,7 @@
-
+
-
@@ -143,10 +143,10 @@
-
-
+
-
+
-
-
+
-
+
-
+
-
-
+
-
-
+
-
+
-
-
+
-
-
+
-
-
+
-
-
+
-
+
@@ -273,10 +272,10 @@
-
-
+
-
-
-
+
@@ -311,27 +310,27 @@
-
-
-
@@ -346,7 +345,7 @@
-
@@ -357,24 +356,18 @@
*** ***
*******************************************************************
-->
-
+
-
-
+
-
-
-
-
-
+
-
-
+
-
+
-
+
-
-
-
@@ -441,7 +433,7 @@
Blacklist of known compromised 1024-bit keys, e.g., "dummy" keys shipped with
SAML products that are sometimes deployed by accident.
-->
-
@@ -449,7 +441,7 @@
Blacklist of known compromised 2048-bit keys, e.g., "dummy" keys shipped with
SAML products that are sometimes deployed by accident.
-->
-
@@ -465,123 +457,123 @@
-
-
+
-
-
+
-
-
+
-
-
+
-
-
+
-
-
+
-
-
+
-
-
+
-
-
-
-
-
+
-
-
+
-
-
+
-
-
-
+
-
-
+
-
-
+
-
+
@@ -607,27 +599,26 @@
-
+
-
+
-
@@ -638,11 +629,11 @@
*** ***
*********************************************
-->
-
+
-
+
@@ -660,6 +651,7 @@
+
@@ -672,9 +664,8 @@
-
-
+
diff --git a/preprod.properties b/preprod.properties
index 5d6b3cb4..ef97e089 100644
--- a/preprod.properties
+++ b/preprod.properties
@@ -35,13 +35,14 @@ git.repo.project.tooling=ukf-test-meta
#
# Preprod publishes its aggregates to / but accessible at a different hostname
#
-md.dist.host1.name=md1-test.infr.ukfederation.org.uk
-md.dist.host2.name=md2-test.infr.ukfederation.org.uk
-md.dist.host3.name=md3-test.infr.ukfederation.org.uk
+md.dist.host-ne-01.name=md-ne-01-test.infr.ukfederation.org.uk
+md.dist.host-ne-02.name=md-ne-02-test.infr.ukfederation.org.uk
+md.dist.host-we-01.name=md-we-01-test.infr.ukfederation.org.uk
+md.dist.host-we-02.name=md-we-02-test.infr.ukfederation.org.uk
md.dist.path.name=/
#
# Preprod MDQ cache is a different file published at a different hostname
#
mdq.dist.name=mdq-test.ukfederation.org.uk
-mdq.cache=mdqcache-test.tar.gz
\ No newline at end of file
+mdq.cache=mdqcache-test.tar.gz
diff --git a/tools/ukf-mda/ukf-mda-0.9.4.jar b/tools/ukf-mda/ukf-mda-0.9.4.jar
deleted file mode 100644
index 2f7e1a70..00000000
Binary files a/tools/ukf-mda/ukf-mda-0.9.4.jar and /dev/null differ
diff --git a/tools/ukf-mda/ukf-mda-0.9.5.jar b/tools/ukf-mda/ukf-mda-0.9.5.jar
new file mode 100644
index 00000000..de2941e6
Binary files /dev/null and b/tools/ukf-mda/ukf-mda-0.9.5.jar differ
diff --git a/utilities/2016-09-16/doall.pl b/utilities/2016-09-16/doall.pl
index 7056b5d1..d2b8255b 100755
--- a/utilities/2016-09-16/doall.pl
+++ b/utilities/2016-09-16/doall.pl
@@ -1,4 +1,6 @@
-#!/usr/bin/env perl -W
+#!/usr/bin/env perl
+
+use warnings;
open(F, "id-to-name.txt") || die "could not open id-to-name map";
while () {
diff --git a/utilities/2016-09-16/gen-id-to-name.xsl b/utilities/2016-09-16/gen-id-to-name.xsl
index a2c477cc..4f1d0a7b 100644
--- a/utilities/2016-09-16/gen-id-to-name.xsl
+++ b/utilities/2016-09-16/gen-id-to-name.xsl
@@ -1,19 +1,19 @@
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
-
+
-
-
-
-
-
-
+
+
+
+
+
+
-
-
-
+
+
+
diff --git a/utilities/2016-09-16/gen-ukid-to-name.xsl b/utilities/2016-09-16/gen-ukid-to-name.xsl
index 3df2bd3b..0cd3ba9f 100644
--- a/utilities/2016-09-16/gen-ukid-to-name.xsl
+++ b/utilities/2016-09-16/gen-ukid-to-name.xsl
@@ -1,19 +1,19 @@
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
-
+
-
-
-
-
-
-
+
+
+
+
+
+
-
-
-
+
+
+
diff --git a/utilities/2016-09-16/patch.pl b/utilities/2016-09-16/patch.pl
index c47766c3..543e0a0c 100755
--- a/utilities/2016-09-16/patch.pl
+++ b/utilities/2016-09-16/patch.pl
@@ -1,4 +1,6 @@
-#!/usr/bin/env perl -W
+#!/usr/bin/env perl
+
+use warnings;
my $orgID = shift @ARGV;
diff --git a/utilities/2016-10-06/gen-id-to-name.xsl b/utilities/2016-10-06/gen-id-to-name.xsl
index a2c477cc..4f1d0a7b 100644
--- a/utilities/2016-10-06/gen-id-to-name.xsl
+++ b/utilities/2016-10-06/gen-id-to-name.xsl
@@ -1,19 +1,19 @@
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
-
+
-
-
-
-
-
-
+
+
+
+
+
+
-
-
-
+
+
+
diff --git a/utilities/2016-10-06/patch.pl b/utilities/2016-10-06/patch.pl
index 638f5d7d..86744119 100755
--- a/utilities/2016-10-06/patch.pl
+++ b/utilities/2016-10-06/patch.pl
@@ -1,4 +1,6 @@
-#!/usr/bin/env perl -W
+#!/usr/bin/env perl
+
+use warnings;
open(F, "id-to-name.txt") || die "could not open id-to-name map";
while () {
diff --git a/utilities/2017-02-27/README.md b/utilities/2017-02-27/README.md
new file mode 100644
index 00000000..525155d2
--- /dev/null
+++ b/utilities/2017-02-27/README.md
@@ -0,0 +1,42 @@
+# `utilities/2017-02-27`
+
+Scripts to replace the HideFromWAYF element in entity fragment files
+with the REFEDS Hide from Discovery Entity Category.
+
+## 1. Check that no hidden IdPs have Entity Attributes already
+
+Since there can only be a single Entity Attribute element in an entity fragment file,
+we first check that there are no hidden IdPs that already have an Entity Attributes
+element. If there are (and there are not too many) we edit these files manually.
+
+First, check that the XSLT will flag an entity fragment file that has an Entity
+Attribute and the HideFromWAYF element. Run `xsltproc listHideFromWAYFandEA.xsl ./test.xml`.
+This should report `https://idp.example.ac.uk/idp/shibboleth`.
+
+Then run the script on all entity fragment files: `xsltproc listHideFromWAYFandEA.xsl uk*.xml`
+
+## 2. Replace HideFromWAYF element with hide-from-disco Entity Category
+
+This command replaces the HideFromWAYF element with an Entity Attributes element
+containing the REFEDS hide-from-disco entity category:
+
+`replaceHideFromWAYF.pl uk*.xml`
+
+It presumes that the `saml` and `mdattr` namespace prefixes are already defined in the
+entity fragment files.
+
+The perl regex matches the string HideFromWAYF rather than an XML element, so check
+that transform has only modified the HideFromWAYF element by generating unsigned
+aggregates before and after the transform and and looking at the differences.
+The only changes should be the timestamp and quantities derived from the timestamp.
+There is a small possibility that the generate target imports different entities from
+eduGAIN -- these differences can be ignored.
+
+```
+ant samlmd.aggregates.generate
+cp ukfederation-metadata-unsigned.xml /tmp/
+replaceHideFromWAYF.pl uk*.xml
+ant samlmd.aggregates.generate
+diff ukfederation-metadata-unsigned.xml /tmp/
+```
+
diff --git a/utilities/2017-02-27/listHideFromWAYFandEA.xsl b/utilities/2017-02-27/listHideFromWAYFandEA.xsl
new file mode 100644
index 00000000..44d25f20
--- /dev/null
+++ b/utilities/2017-02-27/listHideFromWAYFandEA.xsl
@@ -0,0 +1,21 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/utilities/2017-02-27/replaceHideFromWAYF.pl b/utilities/2017-02-27/replaceHideFromWAYF.pl
new file mode 100755
index 00000000..32356fed
--- /dev/null
+++ b/utilities/2017-02-27/replaceHideFromWAYF.pl
@@ -0,0 +1,18 @@
+#!/usr/bin/perl -wni
+
+# If line contains HideFromWAYF, replace it with the Entity Category
+if (/HideFromWAYF/) {
+ print <
+
+ http://refeds.org/category/hide-from-discovery
+
+
+EOF
+# and don't print the line containing HideFromWAYF
+ next;
+}
+
+# If the line didn't have HideFromWAYF, print it unchanged
+print;
+
diff --git a/utilities/2017-02-27/test.xml b/utilities/2017-02-27/test.xml
new file mode 100644
index 00000000..8474b788
--- /dev/null
+++ b/utilities/2017-02-27/test.xml
@@ -0,0 +1,20 @@
+
+
+
+
+
+ http://refeds.org/category/research-and-scholarship
+
+
+
+
+
diff --git a/utilities/addresses.pl b/utilities/addresses.pl
index 09f72f14..1c9772d5 100755
--- a/utilities/addresses.pl
+++ b/utilities/addresses.pl
@@ -24,7 +24,7 @@
#
# UK addresses
#
-open(XML, xalanCall . " -IN ../mdx/uk/collected.xml -XSL extract_addresses.xsl|") || die "could not open input file";
+open(XML, xalanCall . " -IN ../mdx/uk/collected.xml -XSL ../build/extract_addresses.xsl|") || die "could not open input file";
while () {
if (/(mailto:)?(.*)<\/EmailAddress>/) {
$metadata{$2} = 1;
diff --git a/utilities/check_embedded.pl b/utilities/check_embedded.pl
index 8272fccd..6919014b 100755
--- a/utilities/check_embedded.pl
+++ b/utilities/check_embedded.pl
@@ -311,6 +311,14 @@ sub comment {
next;
}
+ #
+ # Track distinct RSA moduli
+ #
+ if (/^Modulus=(.*)$/) {
+ $modulus = $1;
+ # print " modulus: '$modulus'\n";
+ $rsa_modulus{$modulus} = 1;
+ }
}
close SSL;
#print " text lines: $#lines\n";
@@ -405,6 +413,11 @@ sub comment {
}
print "\n";
+ $distinct_moduli = scalar keys %rsa_modulus;
+ if ($distinct_moduli > 1) {
+ print "Distinct RSA moduli: $distinct_moduli\n";
+ }
+
my $first = 1;
foreach $fingerprint (sort keys %expiry_whitelist) {
if ($expiry_whitelist{$fingerprint} eq 'unused') {
diff --git a/utilities/normalise_fragment b/utilities/normalise_fragment
index a5cc93ac..9e7231ac 100755
--- a/utilities/normalise_fragment
+++ b/utilities/normalise_fragment
@@ -55,7 +55,6 @@ ED_TEMPLATE = Template('''
xmlns:saml="urn:oasis:names:tc:SAML:2.0:assertion"
xmlns:shibmd="urn:mace:shibboleth:metadata:1.0"
xmlns:ukfedlabel="http://ukfederation.org.uk/2006/11/label"
- xmlns:wayf="http://sdss.ac.uk/2006/06/WAYF"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="urn:oasis:names:tc:SAML:2.0:metadata saml-schema-metadata-2.0.xsd
urn:oasis:names:tc:SAML:metadata:algsupport sstc-saml-metadata-algsupport-v1.0.xsd
@@ -68,7 +67,6 @@ ED_TEMPLATE = Template('''
urn:mace:shibboleth:metadata:1.0 shibboleth-metadata-1.0.xsd
http://ukfederation.org.uk/2006/11/label uk-fed-label.xsd
http://refeds.org/metadata refeds-metadata.xsd
- http://sdss.ac.uk/2006/06/WAYF uk-wayf.xsd
http://www.w3.org/2001/04/xmlenc# xenc-schema.xsd
http://www.w3.org/2009/xmlenc11# xenc-schema-11.xsd
http://www.w3.org/2000/09/xmldsig# xmldsig-core-schema.xsd"
diff --git a/utilities/stats-generate.sh b/utilities/stats-generate.sh
index bbc6bbf6..2debef68 100755
--- a/utilities/stats-generate.sh
+++ b/utilities/stats-generate.sh
@@ -179,18 +179,18 @@ fi
# Get the filesize of the latest uncompressed main aggregate.
# Since this is just used for estimation, we'll just take the biggest
# unique filesize for the relevant periods
-aggrfilesizebytes=$(grep $apachesearchterm $logslocation/md/md1/metadata.uou-access_log* $logslocation/md/md2/metadata.uou-access_log* $logslocation/md/md3/metadata.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer)" | grep "ukfederation-metadata.xml" | grep "\" 200" | grep "GET" | grep -v "GZIP" | cut -f 10 -d " " | sort -r | uniq | head -1)
+aggrfilesizebytes=$(grep $apachesearchterm $logslocation/md/md1/metadata.uou-access_log* $logslocation/md/md2/metadata.uou-access_log* $logslocation/md/md3/metadata.uou-access_log* $logslocation/md/md-ne-01/metadata.uou-access_log* $logslocation/md/md-ne-02/metadata.uou-access_log* $logslocation/md/md-we-01/metadata.uou-access_log* $logslocation/md/md-we-02/metadata.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer|monitis)" | grep "ukfederation-metadata.xml" | grep "\" 200" | grep "GET" | grep -v "GZIP" | cut -f 10 -d " " | sort -r | uniq | head -1)
#
# Download counts
#
# Aggregate requests. Everything for .xml (HEAD/GET, 200 and 304)
-mdaggrcount=$(grep $apachesearchterm $logslocation/md/md1/metadata.uou-access_log* $logslocation/md/md2/metadata.uou-access_log* $logslocation/md/md3/metadata.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer)" | grep ".xml" | grep -v 404 | wc -l)
+mdaggrcount=$(grep $apachesearchterm $logslocation/md/md1/metadata.uou-access_log* $logslocation/md/md2/metadata.uou-access_log* $logslocation/md/md3/metadata.uou-access_log* $logslocation/md/md-ne-01/metadata.uou-access_log* $logslocation/md/md-ne-02/metadata.uou-access_log* $logslocation/md/md-we-01/metadata.uou-access_log* $logslocation/md/md-we-02/metadata.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer|monitis)" | grep ".xml" | grep -v 404 | wc -l)
mdaggrcountfriendly=$(echo $mdaggrcount | awk '{ printf ("%'"'"'d\n", $0) }')
# Main Aggregate requests. Everything for ukfederation-metadata.xml (HEAD/GET, 200 and 304)
-mdaggrmaincount=$(grep $apachesearchterm $logslocation/md/md1/metadata.uou-access_log* $logslocation/md/md2/metadata.uou-access_log* $logslocation/md/md3/metadata.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer)" | grep "ukfederation-metadata.xml" | wc -l)
+mdaggrmaincount=$(grep $apachesearchterm $logslocation/md/md1/metadata.uou-access_log* $logslocation/md/md2/metadata.uou-access_log* $logslocation/md/md3/metadata.uou-access_log* $logslocation/md/md-ne-01/metadata.uou-access_log* $logslocation/md/md-ne-02/metadata.uou-access_log* $logslocation/md/md-we-01/metadata.uou-access_log* $logslocation/md/md-we-02/metadata.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer|monitis)" | grep "ukfederation-metadata.xml" | wc -l)
mdaggrmaincountfriendly=$(echo $mdaggrmaincount | awk '{ printf ("%'"'"'d\n", $0) }')
if [[ "$mdaggrmaincount" -ne "0" ]]; then
mdaggrmainpc=$(echo "scale=4;($mdaggrmaincount/$mdaggrcount)*100" | bc | awk '{printf "%.1f\n", $0}')
@@ -200,42 +200,42 @@ fi
# Other aggregate requests (don't calculate these if doing daily stats)
if [[ "$timeperiod" != "day" ]]; then
- mdaggrbackcount=$(grep $apachesearchterm $logslocation/md/md1/metadata.uou-access_log* $logslocation/md/md2/metadata.uou-access_log* $logslocation/md/md3/metadata.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer)" | grep "ukfederation-back.xml" | wc -l)
+ mdaggrbackcount=$(grep $apachesearchterm $logslocation/md/md1/metadata.uou-access_log* $logslocation/md/md2/metadata.uou-access_log* $logslocation/md/md3/metadata.uou-access_log* $logslocation/md/md-ne-01/metadata.uou-access_log* $logslocation/md/md-ne-02/metadata.uou-access_log* $logslocation/md/md-we-01/metadata.uou-access_log* $logslocation/md/md-we-02/metadata.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer|monitis)" | grep "ukfederation-back.xml" | wc -l)
mdaggrbackcountfriendly=$(echo $mdaggrbackcount | awk '{ printf ("%'"'"'d\n", $0) }')
if [[ "$mdaggrbackcount" -ne "0" ]]; then
mdaggrbackpc=$(echo "scale=4;($mdaggrbackcount/$mdaggrcount)*100" | bc | awk '{printf "%.1f\n", $0}')
else
mdaggrbackpc="0.0"
fi
- mdaggrcdsallcount=$(grep $apachesearchterm $logslocation/md/md1/metadata.uou-access_log* $logslocation/md/md2/metadata.uou-access_log* $logslocation/md/md3/metadata.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer)" | grep "ukfederation-cdsall.xml" | wc -l)
+ mdaggrcdsallcount=$(grep $apachesearchterm $logslocation/md/md1/metadata.uou-access_log* $logslocation/md/md2/metadata.uou-access_log* $logslocation/md/md3/metadata.uou-access_log* $logslocation/md/md-ne-01/metadata.uou-access_log* $logslocation/md/md-ne-02/metadata.uou-access_log* $logslocation/md/md-we-01/metadata.uou-access_log* $logslocation/md/md-we-02/metadata.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer|monitis)" | grep "ukfederation-cdsall.xml" | wc -l)
mdaggrcdsallcountfriendly=$(echo $mdaggrcdsallcount | awk '{ printf ("%'"'"'d\n", $0) }')
if [[ "$mdaggrcdsallcount" -ne "0" ]]; then
mdaggrcdsallpc=$(echo "scale=4;($mdaggrcdsallcount/$mdaggrcount)*100" | bc | awk '{printf "%.1f\n", $0}')
else
mdaggrcdsallpc="0.0"
fi
- mdaggrexportpreviewcount=$(grep $apachesearchterm $logslocation/md/md1/metadata.uou-access_log* $logslocation/md/md2/metadata.uou-access_log* $logslocation/md/md3/metadata.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer)" | grep "ukfederation-export-preview.xml" | wc -l)
+ mdaggrexportpreviewcount=$(grep $apachesearchterm $logslocation/md/md1/metadata.uou-access_log* $logslocation/md/md2/metadata.uou-access_log* $logslocation/md/md3/metadata.uou-access_log* $logslocation/md/md-ne-01/metadata.uou-access_log* $logslocation/md/md-ne-02/metadata.uou-access_log* $logslocation/md/md-we-01/metadata.uou-access_log* $logslocation/md/md-we-02/metadata.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer|monitis)" | grep "ukfederation-export-preview.xml" | wc -l)
mdaggrexportpreviewcountfriendly=$(echo $mdaggrexportpreviewcount | awk '{ printf ("%'"'"'d\n", $0) }')
if [[ "$mdaggrexportpreviewkcount" -ne "0" ]]; then
mdaggrexportpreviewpc=$(echo "scale=4;($mdaggrexportpreviewcount/$mdaggrcount)*100" | bc | awk '{printf "%.1f\n", $0}')
else
mdaggrexportpreviewpc="0.0"
fi
- mdaggrexportcount=$(grep $apachesearchterm $logslocation/md/md1/metadata.uou-access_log* $logslocation/md/md2/metadata.uou-access_log* $logslocation/md/md3/metadata.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer)" | grep "ukfederation-export.xml" | wc -l)
+ mdaggrexportcount=$(grep $apachesearchterm $logslocation/md/md1/metadata.uou-access_log* $logslocation/md/md2/metadata.uou-access_log* $logslocation/md/md3/metadata.uou-access_log* $logslocation/md/md-ne-01/metadata.uou-access_log* $logslocation/md/md-ne-02/metadata.uou-access_log* $logslocation/md/md-we-01/metadata.uou-access_log* $logslocation/md/md-we-02/metadata.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer|monitis)" | grep "ukfederation-export.xml" | wc -l)
mdaggrexportcountfriendly=$(echo $mdaggrexportcount | awk '{ printf ("%'"'"'d\n", $0) }')
if [[ "$mdaggrexportcount" -ne "0" ]]; then
mdaggrexportpc=$(echo "scale=4;($mdaggrexportcount/$mdaggrcount)*100" | bc | awk '{printf "%.1f\n", $0}')
else
mdaggrexportpc="0.0"
fi
- mdaggrtestcount=$(grep $apachesearchterm $logslocation/md/md1/metadata.uou-access_log* $logslocation/md/md2/metadata.uou-access_log* $logslocation/md/md3/metadata.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer)" | grep "ukfederation-test.xml" | wc -l)
+ mdaggrtestcount=$(grep $apachesearchterm $logslocation/md/md1/metadata.uou-access_log* $logslocation/md/md2/metadata.uou-access_log* $logslocation/md/md3/metadata.uou-access_log* $logslocation/md/md-ne-01/metadata.uou-access_log* $logslocation/md/md-ne-02/metadata.uou-access_log* $logslocation/md/md-we-01/metadata.uou-access_log* $logslocation/md/md-we-02/metadata.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer|monitis)" | grep "ukfederation-test.xml" | wc -l)
mdaggrtestcountfriendly=$(echo $mdaggrtestcount | awk '{ printf ("%'"'"'d\n", $0) }')
if [[ "$mdaggrtestcount" -ne "0" ]]; then
mdaggrtestpc=$(echo "scale=4;($mdaggrtestcount/$mdaggrcount)*100" | bc | awk '{printf "%.1f\n", $0}')
else
mdaggrtestpc="0.0"
fi
- mdaggrwayfcount=$(grep $apachesearchterm $logslocation/md/md1/metadata.uou-access_log* $logslocation/md/md2/metadata.uou-access_log* $logslocation/md/md3/metadata.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer)" | grep "ukfederation-wayf.xml" | wc -l)
+ mdaggrwayfcount=$(grep $apachesearchterm $logslocation/md/md1/metadata.uou-access_log* $logslocation/md/md2/metadata.uou-access_log* $logslocation/md/md3/metadata.uou-access_log* $logslocation/md/md-ne-01/metadata.uou-access_log* $logslocation/md/md-ne-02/metadata.uou-access_log* $logslocation/md/md-we-01/metadata.uou-access_log* $logslocation/md/md-we-02/metadata.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer|monitis)" | grep "ukfederation-wayf.xml" | wc -l)
mdaggrwayfcountfriendly=$(echo $mdaggrwayfcount | awk '{ printf ("%'"'"'d\n", $0) }')
if [[ "$mdaggrwayfcount" -ne "0" ]]; then
mdaggrwayfpc=$(echo "scale=4;($mdaggrwayfcount/$mdaggrcount)*100" | bc | awk '{printf "%.1f\n", $0}')
@@ -245,11 +245,11 @@ if [[ "$timeperiod" != "day" ]]; then
fi
# Aggregate downloads (i.e. GETs with HTTP 200 responses only)
-mdaggrcountfull=$(grep $apachesearchterm $logslocation/md/md1/metadata.uou-access_log* $logslocation/md/md2/metadata.uou-access_log* $logslocation/md/md3/metadata.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer)" | grep ".xml" | grep -v 404| grep "\" 200" | grep "GET" | wc -l)
+mdaggrcountfull=$(grep $apachesearchterm $logslocation/md/md1/metadata.uou-access_log* $logslocation/md/md2/metadata.uou-access_log* $logslocation/md/md3/metadata.uou-access_log* $logslocation/md/md-ne-01/metadata.uou-access_log* $logslocation/md/md-ne-02/metadata.uou-access_log* $logslocation/md/md-we-01/metadata.uou-access_log* $logslocation/md/md-we-02/metadata.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer|monitis)" | grep ".xml" | grep -v 404| grep "\" 200" | grep "GET" | wc -l)
mdaggrcountfullfriendly=$(echo $mdaggrcountfull | awk '{ printf ("%'"'"'d\n", $0) }')
# Main Aggregate downloads (i.e. GETs with HTTP 200 responses only)
-mdaggrmaincountfull=$(grep $apachesearchterm $logslocation/md/md1/metadata.uou-access_log* $logslocation/md/md2/metadata.uou-access_log* $logslocation/md/md3/metadata.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer)" | grep "ukfederation-metadata.xml" | grep "\" 200" | grep "GET" | wc -l)
+mdaggrmaincountfull=$(grep $apachesearchterm $logslocation/md/md1/metadata.uou-access_log* $logslocation/md/md2/metadata.uou-access_log* $logslocation/md/md3/metadata.uou-access_log* $logslocation/md/md-ne-01/metadata.uou-access_log* $logslocation/md/md-ne-02/metadata.uou-access_log* $logslocation/md/md-we-01/metadata.uou-access_log* $logslocation/md/md-we-02/metadata.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer|monitis)" | grep "ukfederation-metadata.xml" | grep "\" 200" | grep "GET" | wc -l)
mdaggrmaincountfullfriendly=$(echo $mdaggrmaincountfull | awk '{ printf ("%'"'"'d\n", $0) }')
# Percentage of GETs with HTTP 200 responses compared to total requests
@@ -260,11 +260,11 @@ else
fi
# Compressed downloads for all
-mdaggrcountfullcompr=$(grep $apachesearchterm $logslocation/md/md1/metadata.uou-access_log* $logslocation/md/md2/metadata.uou-access_log* $logslocation/md/md3/metadata.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer)" | grep ".xml" | grep -v 404 | grep "\" 200" | grep "GET" | grep "\"GZIP\"" | wc -l)
+mdaggrcountfullcompr=$(grep $apachesearchterm $logslocation/md/md1/metadata.uou-access_log* $logslocation/md/md2/metadata.uou-access_log* $logslocation/md/md3/metadata.uou-access_log* $logslocation/md/md-ne-01/metadata.uou-access_log* $logslocation/md/md-ne-02/metadata.uou-access_log* $logslocation/md/md-we-01/metadata.uou-access_log* $logslocation/md/md-we-02/metadata.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer|monitis)" | grep ".xml" | grep -v 404 | grep "\" 200" | grep "GET" | grep "\"GZIP\"" | wc -l)
mdaggrcountfullcomprfriendly=$(echo $mdaggrcountfullcompr | awk '{ printf ("%'"'"'d\n", $0) }')
# Compressed downloads for main aggregate
-mdaggrmaincountfullcompr=$(grep $apachesearchterm $logslocation/md/md1/metadata.uou-access_log* $logslocation/md/md2/metadata.uou-access_log* $logslocation/md/md3/metadata.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer)" | grep "ukfederation-metadata.xml" | grep "\" 200" | grep "GET" | grep "\"GZIP\"" | wc -l)
+mdaggrmaincountfullcompr=$(grep $apachesearchterm $logslocation/md/md1/metadata.uou-access_log* $logslocation/md/md2/metadata.uou-access_log* $logslocation/md/md3/metadata.uou-access_log* $logslocation/md/md-ne-01/metadata.uou-access_log* $logslocation/md/md-ne-02/metadata.uou-access_log* $logslocation/md/md-we-01/metadata.uou-access_log* $logslocation/md/md-we-02/metadata.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer|monitis)" | grep "ukfederation-metadata.xml" | grep "\" 200" | grep "GET" | grep "\"GZIP\"" | wc -l)
# Percentage of GZIPPED HTTP 200 responses compared to total full downloads
if [[ "$mdaggrcountfull" -ne "0" ]]; then
@@ -274,18 +274,18 @@ else
fi
# Unique IP addresses requesting aggregates
-mdaggruniqueip=$(grep $apachesearchterm $logslocation/md/md1/metadata.uou-access_log* $logslocation/md/md2/metadata.uou-access_log* $logslocation/md/md3/metadata.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer)" | grep ".xml" | grep -v 404 | cut -f 2 -d ":" | cut -f 1 -d " " | sort | uniq | wc -l)
+mdaggruniqueip=$(grep $apachesearchterm $logslocation/md/md1/metadata.uou-access_log* $logslocation/md/md2/metadata.uou-access_log* $logslocation/md/md3/metadata.uou-access_log* $logslocation/md/md-ne-01/metadata.uou-access_log* $logslocation/md/md-ne-02/metadata.uou-access_log* $logslocation/md/md-we-01/metadata.uou-access_log* $logslocation/md/md-we-02/metadata.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer|monitis)" | grep ".xml" | grep -v 404 | cut -f 1 -d " " | cut -f 2-9 -d ":" | sort | uniq | wc -l)
mdaggruniqueipfriendly=$(echo $mdaggruniqueip | awk '{ printf ("%'"'"'d\n", $0) }')
# Unique IP addresses requesting aggregates, full D/Ls only
-mdaggruniqueipfull=$(grep $apachesearchterm $logslocation/md/md1/metadata.uou-access_log* $logslocation/md/md2/metadata.uou-access_log* $logslocation/md/md3/metadata.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer)" | grep ".xml" | grep -v 404 | grep "\" 200" | grep "GET" | cut -f 2 -d ":" | cut -f 1 -d " " | sort | uniq | wc -l)
+mdaggruniqueipfull=$(grep $apachesearchterm $logslocation/md/md1/metadata.uou-access_log* $logslocation/md/md2/metadata.uou-access_log* $logslocation/md/md3/metadata.uou-access_log* $logslocation/md/md-ne-01/metadata.uou-access_log* $logslocation/md/md-ne-02/metadata.uou-access_log* $logslocation/md/md-we-01/metadata.uou-access_log* $logslocation/md/md-we-02/metadata.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer|monitis)" | grep ".xml" | grep -v 404 | grep "\" 200" | grep "GET" | cut -f 1 -d " " | cut -f 2-9 -d ":" | sort | uniq | wc -l)
#
# Data shipped
#
# Total data shipped, all .xml files
-mdaggrtotalbytes=$(grep $apachesearchterm $logslocation/md/md1/metadata.uou-access_log* $logslocation/md/md2/metadata.uou-access_log* $logslocation/md/md3/metadata.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer)" | grep ".xml" | grep -v 404 | grep "\" 200" | grep "GET" | cut -f 10 -d " " | awk '{sum+=$1} END {print sum}')
+mdaggrtotalbytes=$(grep $apachesearchterm $logslocation/md/md1/metadata.uou-access_log* $logslocation/md/md2/metadata.uou-access_log* $logslocation/md/md3/metadata.uou-access_log* $logslocation/md/md-ne-01/metadata.uou-access_log* $logslocation/md/md-ne-02/metadata.uou-access_log* $logslocation/md/md-we-01/metadata.uou-access_log* $logslocation/md/md-we-02/metadata.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer|monitis)" | grep ".xml" | grep -v 404 | grep "\" 200" | grep "GET" | cut -f 10 -d " " | awk '{sum+=$1} END {print sum}')
if [[ "$mdaggrtotalbytes" -gt "0" ]]; then
mdaggrtotalhr=$(bytestohr $mdaggrtotalbytes)
else
@@ -293,7 +293,7 @@ else
fi
# Total data shipped, ukfederation-metadata.xml file
-mdaggrmaintotalbytes=$(grep $apachesearchterm $logslocation/md/md1/metadata.uou-access_log* $logslocation/md/md2/metadata.uou-access_log* $logslocation/md/md3/metadata.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer)" | grep "ukfederation-metadata.xml" | grep "\" 200" | grep "GET" | cut -f 10 -d " " | awk '{sum+=$1} END {print sum}')
+mdaggrmaintotalbytes=$(grep $apachesearchterm $logslocation/md/md1/metadata.uou-access_log* $logslocation/md/md2/metadata.uou-access_log* $logslocation/md/md3/metadata.uou-access_log* $logslocation/md/md-ne-01/metadata.uou-access_log* $logslocation/md/md-ne-02/metadata.uou-access_log* $logslocation/md/md-we-01/metadata.uou-access_log* $logslocation/md/md-we-02/metadata.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer|monitis)" | grep "ukfederation-metadata.xml" | grep "\" 200" | grep "GET" | cut -f 10 -d " " | awk '{sum+=$1} END {print sum}')
if [[ "$mdaggrtotalbytes" -gt "0" ]]; then
mdaggrmaintotalhr=$(bytestohr $mdaggrmaintotalbytes)
else
@@ -321,27 +321,34 @@ fi
#
# IPv4 vs IPv6 traffic (don't calculate these if doing daily stats)
-# Note, while all v6 traffic passes through v6v4proxy1/2, we're counting accesses from the IPv4 addresses of those servers vs all others.
-# When we add "real" v6 support to the servers, this needs changing to count IPv4 addresses vs IPv6 addresses.
+# Some v6 traffic has traditionally passed through v6v4proxy1/2, so to count v4 we're counting all accesses, minus those from the v4 proxy IP addresses, minus actual v6 addresses
if [[ "$timeperiod" != "day" ]]; then
- mdaggrv4count=$(grep $apachesearchterm $logslocation/md/md1/metadata.uou-access_log* $logslocation/md/md2/metadata.uou-access_log* $logslocation/md/md3/metadata.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer)" | grep ".xml" | grep -v 404 | grep -v 193.63.72.83 | grep -v 194.83.7.211 | wc -l)
+ mdaggrv4count=$(grep $apachesearchterm $logslocation/md/md1/metadata.uou-access_log* $logslocation/md/md2/metadata.uou-access_log* $logslocation/md/md3/metadata.uou-access_log* $logslocation/md/md-ne-01/metadata.uou-access_log* $logslocation/md/md-ne-02/metadata.uou-access_log* $logslocation/md/md-we-01/metadata.uou-access_log* $logslocation/md/md-we-02/metadata.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer|monitis)" | grep ".xml" | grep -v 404 | cut -f 1 -d " " | cut -f 2-9 -d ":" | grep -v 193.63.72.83 | grep -v 194.83.7.211 | grep -v ":" | wc -l)
mdaggrv4pc=$(echo "scale=4;($mdaggrv4count/$mdaggrcount)*100" | bc | awk '{printf "%.1f\n", $0}')
mdaggrv6count=$(( mdaggrcount - mdaggrv4count ))
mdaggrv6pc=$(echo "scale=4;($mdaggrv6count/$mdaggrcount)*100" | bc | awk '{printf "%.1f\n", $0}')
# Per-server request count
- mdaggrmd1count=$(grep $apachesearchterm $logslocation/md/md1/metadata.uou-access_log* $logslocation/md/md2/metadata.uou-access_log* $logslocation/md/md3/metadata.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer)" | grep ".xml" | grep -v 404 | cut -f 5 -d "/" | grep md1 | wc -l)
+ mdaggrmd1count=$(grep $apachesearchterm $logslocation/md/md1/metadata.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer|monitis)" | grep ".xml" | grep -v 404 | cut -f 5 -d "/" | wc -l)
mdaggrmd1pc=$(echo "scale=4;($mdaggrmd1count/$mdaggrcount)*100" | bc | awk '{printf "%.1f\n", $0}')
- mdaggrmd2count=$(grep $apachesearchterm $logslocation/md/md1/metadata.uou-access_log* $logslocation/md/md2/metadata.uou-access_log* $logslocation/md/md3/metadata.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer)" | grep ".xml" | grep -v 404 | cut -f 5 -d "/" | grep md2 | wc -l)
- mdaggrmd2pc=$(echo "scale=4;($mdaggrmd1count/$mdaggrcount)*100" | bc | awk '{printf "%.1f\n", $0}')
- mdaggrmd3count=$(grep $apachesearchterm $logslocation/md/md1/metadata.uou-access_log* $logslocation/md/md2/metadata.uou-access_log* $logslocation/md/md3/metadata.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer)" | grep ".xml" | grep -v 404 | cut -f 5 -d "/" | grep md3 | wc -l)
- mdaggrmd3pc=$(echo "scale=4;($mdaggrmd1count/$mdaggrcount)*100" | bc | awk '{printf "%.1f\n", $0}')
+ mdaggrmd2count=$(grep $apachesearchterm $logslocation/md/md2/metadata.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer|monitis)" | grep ".xml" | grep -v 404 | cut -f 5 -d "/" | wc -l)
+ mdaggrmd2pc=$(echo "scale=4;($mdaggrmd2count/$mdaggrcount)*100" | bc | awk '{printf "%.1f\n", $0}')
+ mdaggrmd3count=$(grep $apachesearchterm $logslocation/md/md3/metadata.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer|monitis)" | grep ".xml" | grep -v 404 | cut -f 5 -d "/" | wc -l)
+ mdaggrmd3pc=$(echo "scale=4;($mdaggrmd3count/$mdaggrcount)*100" | bc | awk '{printf "%.1f\n", $0}')
+ mdaggrmdne01count=$(grep $apachesearchterm $logslocation/md/md-ne-01/metadata.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer|monitis)" | grep ".xml" | grep -v 404 | cut -f 5 -d "/" | wc -l)
+ mdaggrmdne01pc=$(echo "scale=4;($mdaggrmdne01count/$mdaggrcount)*100" | bc | awk '{printf "%.1f\n", $0}')
+ mdaggrmdne02count=$(grep $apachesearchterm $logslocation/md/md-ne-02/metadata.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer|monitis)" | grep ".xml" | grep -v 404 | cut -f 5 -d "/" | wc -l)
+ mdaggrmdne02pc=$(echo "scale=4;($mdaggrmdne02count/$mdaggrcount)*100" | bc | awk '{printf "%.1f\n", $0}')
+ mdaggrmdwe01count=$(grep $apachesearchterm $logslocation/md/md-we-01/metadata.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer|monitis)" | grep ".xml" | grep -v 404 | cut -f 5 -d "/" | wc -l)
+ mdaggrmdwe01pc=$(echo "scale=4;($mdaggrmdwe01count/$mdaggrcount)*100" | bc | awk '{printf "%.1f\n", $0}')
+ mdaggrmdwe02count=$(grep $apachesearchterm $logslocation/md/md-we-02/metadata.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer|monitis)" | grep ".xml" | grep -v 404 | cut -f 5 -d "/" | wc -l)
+ mdaggrmdwe02pc=$(echo "scale=4;($mdaggrmdwe02count/$mdaggrcount)*100" | bc | awk '{printf "%.1f\n", $0}')
fi
# Min queries per IP
if [[ $mdaggrcount -gt "0" ]]; then
- mdaggrminqueriesperip=$(grep $apachesearchterm $logslocation/md/md1/metadata.uou-access_log* $logslocation/md/md2/metadata.uou-access_log* $logslocation/md/md3/metadata.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer)" | grep ".xml" | grep -v 404 | cut -f 2 -d ":" | cut -f 1 -d " " | sort | uniq -c | sort -nr | tail -1 | awk '{print $1}' | awk '{ printf ("%'"'"'d\n", $0) }')
+ mdaggrminqueriesperip=$(grep $apachesearchterm $logslocation/md/md1/metadata.uou-access_log* $logslocation/md/md2/metadata.uou-access_log* $logslocation/md/md3/metadata.uou-access_log* $logslocation/md/md-ne-01/metadata.uou-access_log* $logslocation/md/md-ne-02/metadata.uou-access_log* $logslocation/md/md-we-01/metadata.uou-access_log* $logslocation/md/md-we-02/metadata.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer|monitis)" | grep ".xml" | grep -v 404 | cut -f 1 -d " " | cut -f 2-9 -d ":" | sort | uniq -c | sort -nr | tail -1 | awk '{print $1}' | awk '{ printf ("%'"'"'d\n", $0) }')
else
mdaggrinqueriesperip="0"
fi
@@ -355,14 +362,14 @@ fi
# Max queries per IP
if [[ $mdaggrcount -gt "0" ]]; then
- mdaggrmaxqueriesperip=$(grep $apachesearchterm $logslocation/md/md1/metadata.uou-access_log* $logslocation/md/md2/metadata.uou-access_log* $logslocation/md/md3/metadata.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer)" | grep ".xml" | grep -v 404 | cut -f 2 -d ":" | cut -f 1 -d " " | sort | uniq -c | sort -nr | head -1 | awk '{print $1}' | awk '{ printf ("%'"'"'d\n", $0) }')
+ mdaggrmaxqueriesperip=$(grep $apachesearchterm $logslocation/md/md1/metadata.uou-access_log* $logslocation/md/md2/metadata.uou-access_log* $logslocation/md/md3/metadata.uou-access_log* $logslocation/md/md-ne-01/metadata.uou-access_log* $logslocation/md/md-ne-02/metadata.uou-access_log* $logslocation/md/md-we-01/metadata.uou-access_log* $logslocation/md/md-we-02/metadata.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer|monitis)" | grep ".xml" | grep -v 404 | cut -f 1 -d " " | cut -f 2-9 -d ":" | sort | uniq -c | sort -nr | head -1 | awk '{print $1}' | awk '{ printf ("%'"'"'d\n", $0) }')
else
mdaggrmaxqueriesperip="0"
fi
# Min queries per IP, full D/L only
if [[ $mdaggrcountfull -gt "0" ]]; then
- mdaggrminqueriesperipfull=$(grep $apachesearchterm $logslocation/md/md1/metadata.uou-access_log* $logslocation/md/md2/metadata.uou-access_log* $logslocation/md/md3/metadata.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer)" | grep ".xml" | grep -v 404 | grep "\" 200" | grep "GET" | cut -f 2 -d ":" | cut -f 1 -d " " | sort | uniq -c | sort -nr | tail -1 | awk '{print $1}' | awk '{ printf ("%'"'"'d\n", $0) }')
+ mdaggrminqueriesperipfull=$(grep $apachesearchterm $logslocation/md/md1/metadata.uou-access_log* $logslocation/md/md2/metadata.uou-access_log* $logslocation/md/md3/metadata.uou-access_log* $logslocation/md/md-ne-01/metadata.uou-access_log* $logslocation/md/md-ne-02/metadata.uou-access_log* $logslocation/md/md-we-01/metadata.uou-access_log* $logslocation/md/md-we-02/metadata.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer|monitis)" | grep ".xml" | grep -v 404 | grep "\" 200" | grep "GET" | cut -f 1 -d " " | cut -f 2-9 -d ":" | sort | uniq -c | sort -nr | tail -1 | awk '{print $1}' | awk '{ printf ("%'"'"'d\n", $0) }')
else
mdaggrinqueriesperipfull="0"
fi
@@ -376,7 +383,7 @@ fi
# Max queries per IP, full D/L only
if [[ $mdaggrcountfull -gt "0" ]]; then
- mdaggrmaxqueriesperipfull=$(grep $apachesearchterm $logslocation/md/md1/metadata.uou-access_log* $logslocation/md/md2/metadata.uou-access_log* $logslocation/md/md3/metadata.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer)" | grep ".xml" | grep -v 404 | grep "\" 200" | grep "GET" | cut -f 2 -d ":" | cut -f 1 -d " " | sort | uniq -c | sort -nr | head -1 | awk '{print $1}' | awk '{ printf ("%'"'"'d\n", $0) }')
+ mdaggrmaxqueriesperipfull=$(grep $apachesearchterm $logslocation/md/md1/metadata.uou-access_log* $logslocation/md/md2/metadata.uou-access_log* $logslocation/md/md3/metadata.uou-access_log* $logslocation/md/md-ne-01/metadata.uou-access_log* $logslocation/md/md-ne-02/metadata.uou-access_log* $logslocation/md/md-we-01/metadata.uou-access_log* $logslocation/md/md-we-02/metadata.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer|monitis)" | grep ".xml" | grep -v 404 | grep "\" 200" | grep "GET" | cut -f 1 -d " " | cut -f 2-9 -d ":" | sort | uniq -c | sort -nr | head -1 | awk '{print $1}' | awk '{ printf ("%'"'"'d\n", $0) }')
else
mdaggrmaxqueriesperipfull="0"
fi
@@ -386,7 +393,7 @@ if [[ "$timeperiod" != "day" ]]; then
# Top 10 downloaders and how many downloads / total data shipped (full downloads only)
if [[ "$timeperiod" != "day" ]]; then
- mdaggrtoptenipsbycount=$(grep $apachesearchterm $logslocation/md/md1/metadata.uou-access_log* $logslocation/md/md2/metadata.uou-access_log* $logslocation/md/md3/metadata.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer)" | grep ".xml" | grep -v 404 | grep "\" 200" | grep "GET" | grep -v 193.63.72.83 | grep -v 194.83.7.211 | cut -f 2 -d ":" | cut -f 1 -d " " | sort | uniq -c | sort -nr | head -10)
+ mdaggrtoptenipsbycount=$(grep $apachesearchterm $logslocation/md/md1/metadata.uou-access_log* $logslocation/md/md2/metadata.uou-access_log* $logslocation/md/md3/metadata.uou-access_log* $logslocation/md/md-ne-01/metadata.uou-access_log* $logslocation/md/md-ne-02/metadata.uou-access_log* $logslocation/md/md-we-01/metadata.uou-access_log* $logslocation/md/md-we-02/metadata.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer|monitis)" | grep ".xml" | grep -v 404 | grep "\" 200" | grep "GET" | grep -v 193.63.72.83 | grep -v 194.83.7.211 | cut -f 1 -d " " | cut -f 2-9 -d ":" | sort | uniq -c | sort -nr | head -10)
fi
#
@@ -408,7 +415,7 @@ if [[ "$timeperiod" != "day" ]]; then
countfriendly=$(echo $count | awk '{ printf ("%'"'"'d\n", $0) }')
# Figure out total traffic shipped to this IP
- totaldataforthisip=$(grep $apachesearchterm $logslocation/md/md1/metadata.uou-access_log* $logslocation/md/md2/metadata.uou-access_log* $logslocation/md/md3/metadata.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer)" | grep ".xml" | grep -v 404 | grep "\" 200" | grep "GET" | grep $ipaddr | cut -f 10 -d " " | grep -v - | awk '{sum+=$1} END {print sum}')
+ totaldataforthisip=$(grep $apachesearchterm $logslocation/md/md1/metadata.uou-access_log* $logslocation/md/md2/metadata.uou-access_log* $logslocation/md/md3/metadata.uou-access_log* $logslocation/md/md-ne-01/metadata.uou-access_log* $logslocation/md/md-ne-02/metadata.uou-access_log* $logslocation/md/md-we-01/metadata.uou-access_log* $logslocation/md/md-we-02/metadata.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer|monitis)" | grep ".xml" | grep -v 404 | grep "\" 200" | grep "GET" | grep $ipaddr | cut -f 10 -d " " | grep -v - | awk '{sum+=$1} END {print sum}')
if [[ "$totaldataforthisip" -gt "0" ]]; then
totaldataforthisiphr=$(bytestohr $totaldataforthisip)
else
@@ -436,11 +443,11 @@ fi
# =====
# MDQ requests
-mdqcount=$(grep $apachesearchterm $logslocation/md/md1/mdq.uou-access_log* $logslocation/md/md2/mdq.uou-access_log* $logslocation/md/md3/mdq.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer)" | grep -v 404 | grep "/entities" | grep -v "/entities " | grep -v "/entities/ " | wc -l)
+mdqcount=$(grep $apachesearchterm $logslocation/md/md1/mdq.uou-access_log* $logslocation/md/md2/mdq.uou-access_log* $logslocation/md/md3/mdq.uou-access_log* $logslocation/md/md-ne-01/mdq.uou-access_log* $logslocation/md/md-ne-02/mdq.uou-access_log* $logslocation/md/md-we-01/mdq.uou-access_log* $logslocation/md/md-we-02/mdq.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer|monitis)" | grep -v 404 | grep "/entities" | grep -v "/entities " | grep -v "/entities/ " | wc -l)
mdqcountfriendly=$(echo $mdqcount | awk '{ printf ("%'"'"'d\n", $0) }')
# MDQ downloads (i.e. HTTP 200 responses only)
-mdqcountfull=$(grep $apachesearchterm $logslocation/md/md1/mdq.uou-access_log* $logslocation/md/md2/mdq.uou-access_log* $logslocation/md/md3/mdq.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer)" | grep "/entities" | grep -v "/entities " | grep -v "/entities/ " | grep -v 404 | grep "\" 200" | grep "GET" | wc -l)
+mdqcountfull=$(grep $apachesearchterm $logslocation/md/md1/mdq.uou-access_log* $logslocation/md/md2/mdq.uou-access_log* $logslocation/md/md3/mdq.uou-access_log* $logslocation/md/md-ne-01/mdq.uou-access_log* $logslocation/md/md-ne-02/mdq.uou-access_log* $logslocation/md/md-we-01/mdq.uou-access_log* $logslocation/md/md-we-02/mdq.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer|monitis)" | grep "/entities" | grep -v "/entities " | grep -v "/entities/ " | grep -v 404 | grep "\" 200" | grep "GET" | wc -l)
mdqcountfullfriendly=$(echo $mdqcountfull | awk '{ printf ("%'"'"'d\n", $0) }')
# Percentage of HTTP 200 responses compared to total requests
@@ -451,7 +458,7 @@ else
fi
# Compressed downloads
-mdqfullcomprcount=$(grep $apachesearchterm $logslocation/md/md1/mdq.uou-access_log* $logslocation/md/md2/mdq.uou-access_log* $logslocation/md/md3/mdq.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer)" | grep "/entities" | grep -v "/entities " | grep -v "/entities/ " | grep -v 404 | grep "\" 200" | grep "GET" | grep "\"GZIP\"" | wc -l)
+mdqfullcomprcount=$(grep $apachesearchterm $logslocation/md/md1/mdq.uou-access_log* $logslocation/md/md2/mdq.uou-access_log* $logslocation/md/md3/mdq.uou-access_log* $logslocation/md/md-ne-01/mdq.uou-access_log* $logslocation/md/md-ne-02/mdq.uou-access_log* $logslocation/md/md-we-01/mdq.uou-access_log* $logslocation/md/md-we-02/mdq.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer|monitis)" | grep "/entities" | grep -v "/entities " | grep -v "/entities/ " | grep -v 404 | grep "\" 200" | grep "GET" | grep "\"GZIP\"" | wc -l)
mdqfullcomprcountfriendly=$(echo $mdqfullcomprcount | awk '{ printf ("%'"'"'d\n", $0) }')
# Percentage of GZIPPED HTTP 200 responses compared to total full downloads
@@ -465,10 +472,9 @@ fi
# IPv4 vs IPv6 traffic (don't calculate this for daily stats)
if [[ "$timeperiod" != "day" ]]; then
- # Note, while all v6 traffic passes through v6v4proxy1/2, we're counting accesses from the IPv4 addresses of those servers vs all others.
- # When we add "real" v6 support to the servers, this needs changing to count IPv4 addresses vs IPv6 addresses.
+ # Some v6 traffic has traditionally passed through v6v4proxy1/2, so to count v4 we're counting all accesses, minus those from the v4 proxy IP addresses, minus actual v6 addresses
if [[ "$mdqcount" -ne "0" ]]; then
- mdqv4count=$(grep $apachesearchterm $logslocation/md/md1/mdq.uou-access_log* $logslocation/md/md2/mdq.uou-access_log* $logslocation/md/md3/mdq.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer)" | grep "/entities" | grep -v "/entities " | grep -v "/entities/ " | grep -v 404 | grep -v 193.63.72.83 | grep -v 194.83.7.211 | wc -l)
+ mdqv4count=$(grep $apachesearchterm $logslocation/md/md1/mdq.uou-access_log* $logslocation/md/md2/mdq.uou-access_log* $logslocation/md/md3/mdq.uou-access_log* $logslocation/md/md-ne-01/mdq.uou-access_log* $logslocation/md/md-ne-02/mdq.uou-access_log* $logslocation/md/md-we-01/mdq.uou-access_log* $logslocation/md/md-we-02/mdq.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer|monitis)" | grep "/entities" | grep -v "/entities " | grep -v "/entities/ " | grep -v 404 | cut -f 1 -d " " | cut -f 2-9 -d ":" | grep -v 193.63.72.83 | grep -v 194.83.7.211 | grep -v ":" | wc -l)
mdqv4pc=$(echo "scale=4;($mdqv4count/$mdqcount)*100" | bc | awk '{printf "%.1f\n", $0}')
mdqv6count=$(( mdqcount - mdqv4count ))
mdqv6pc=$(echo "scale=4;($mdqv6count/$mdqcount)*100" | bc | awk '{printf "%.1f\n", $0}')
@@ -479,8 +485,8 @@ if [[ "$timeperiod" != "day" ]]; then
fi
# MDQ requests for entityId based names
-mdqcountentityidhttp=$(grep $apachesearchterm $logslocation/md/md1/mdq.uou-access_log* $logslocation/md/md2/mdq.uou-access_log* $logslocation/md/md3/mdq.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer)" | grep "/entities" | grep -v "/entities " | grep -v "/entities/ " | grep -v 404 | grep "/entities/http" | wc -l)
-mdqcountentityidurn=$(grep $apachesearchterm $logslocation/md/md1/mdq.uou-access_log* $logslocation/md/md2/mdq.uou-access_log* $logslocation/md/md3/mdq.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer)" | grep "/entities" | grep -v "/entities " | grep -v "/entities/ " | grep -v 404 | grep "/entities/urn" | wc -l)
+mdqcountentityidhttp=$(grep $apachesearchterm $logslocation/md/md1/mdq.uou-access_log* $logslocation/md/md2/mdq.uou-access_log* $logslocation/md/md3/mdq.uou-access_log* $logslocation/md/md-ne-01/mdq.uou-access_log* $logslocation/md/md-ne-02/mdq.uou-access_log* $logslocation/md/md-we-01/mdq.uou-access_log* $logslocation/md/md-we-02/mdq.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer|monitis)" | grep "/entities" | grep -v "/entities " | grep -v "/entities/ " | grep -v 404 | grep "/entities/http" | wc -l)
+mdqcountentityidurn=$(grep $apachesearchterm $logslocation/md/md1/mdq.uou-access_log* $logslocation/md/md2/mdq.uou-access_log* $logslocation/md/md3/mdq.uou-access_log* $logslocation/md/md-ne-01/mdq.uou-access_log* $logslocation/md/md-ne-02/mdq.uou-access_log* $logslocation/md/md-we-01/mdq.uou-access_log* $logslocation/md/md-we-02/mdq.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer|monitis)" | grep "/entities" | grep -v "/entities " | grep -v "/entities/ " | grep -v 404 | grep "/entities/urn" | wc -l)
mdqcountentityid=$((mdqcountentityidhttp+mdqcountentityidurn))
if [[ "$mdqcount" -ne "0" ]]; then
mdqcountentityidpc=$(echo "scale=3;($mdqcountentityid/$mdqcount)*100" | bc | awk '{printf "%.1f\n", $0}')
@@ -490,7 +496,7 @@ fi
mdqcountentityidfriendly=$(echo $mdqcountentityid | awk '{ printf ("%'"'"'d\n", $0) }')
# MDQ requests for hash based names
-mdqcountsha1=$(grep $apachesearchterm $logslocation/md/md1/mdq.uou-access_log* $logslocation/md/md2/mdq.uou-access_log* $logslocation/md/md3/mdq.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer)" | grep "/entities" | grep -v "/entities " | grep -v "/entities/ " | grep -v 404 | grep sha1 | wc -l)
+mdqcountsha1=$(grep $apachesearchterm $logslocation/md/md1/mdq.uou-access_log* $logslocation/md/md2/mdq.uou-access_log* $logslocation/md/md3/mdq.uou-access_log* $logslocation/md/md-ne-01/mdq.uou-access_log* $logslocation/md/md-ne-02/mdq.uou-access_log* $logslocation/md/md-we-01/mdq.uou-access_log* $logslocation/md/md-we-02/mdq.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer|monitis)" | grep "/entities" | grep -v "/entities " | grep -v "/entities/ " | grep -v 404 | grep sha1 | wc -l)
if [[ "$mdqcount" -ne "0" ]]; then
mdqcountsha1pc=$(echo "scale=3;($mdqcountsha1/$mdqcount)*100" | bc | awk '{printf "%.1f\n", $0}')
else
@@ -500,14 +506,14 @@ mdqcountsha1friendly=$(echo $mdqcountsha1 | awk '{ printf ("%'"'"'d\n", $0) }')
# MDQ requests for all entities
-mdqcountallentities=$(grep $apachesearchterm $logslocation/md/md1/mdq.uou-access_log* $logslocation/md/md2/mdq.uou-access_log* $logslocation/md/md3/mdq.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer)" | grep "/entities " | grep -v 404 | wc -l)
+mdqcountallentities=$(grep $apachesearchterm $logslocation/md/md1/mdq.uou-access_log* $logslocation/md/md2/mdq.uou-access_log* $logslocation/md/md3/mdq.uou-access_log* $logslocation/md/md-ne-01/mdq.uou-access_log* $logslocation/md/md-ne-02/mdq.uou-access_log* $logslocation/md/md-we-01/mdq.uou-access_log* $logslocation/md/md-we-02/mdq.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer|monitis)" | grep "/entities " | grep -v 404 | wc -l)
# Unique IP addresses requesting MDQ
-mdquniqueip=$(grep $apachesearchterm $logslocation/md/md1/mdq.uou-access_log* $logslocation/md/md2/mdq.uou-access_log* $logslocation/md/md3/mdq.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer)" | grep "/entities/" | grep -v "/entities/ " | grep -v 404 | cut -f 2 -d ":" | cut -f 1 -d " " | sort | uniq | wc -l)
+mdquniqueip=$(grep $apachesearchterm $logslocation/md/md1/mdq.uou-access_log* $logslocation/md/md2/mdq.uou-access_log* $logslocation/md/md3/mdq.uou-access_log* $logslocation/md/md-ne-01/mdq.uou-access_log* $logslocation/md/md-ne-02/mdq.uou-access_log* $logslocation/md/md-we-01/mdq.uou-access_log* $logslocation/md/md-we-02/mdq.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer|monitis)" | grep "/entities/" | grep -v "/entities/ " | grep -v 404 | cut -f 1 -d " " | cut -f 2-9 -d ":" | sort | uniq | wc -l)
mdquniqueipfriendly=$(echo $mdquniqueip | awk '{ printf ("%'"'"'d\n", $0) }')
# Total data shipped
-mdqtotalbytes=$(grep $apachesearchterm $logslocation/md/md1/mdq.uou-access_log* $logslocation/md/md2/mdq.uou-access_log* $logslocation/md/md3/mdq.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer)" | grep "/entities/" | grep -v "/entities/ " | grep -v 404 | grep "\" 200" | cut -f 10 -d " " | grep -v - | awk '{sum+=$1} END {print sum}')
+mdqtotalbytes=$(grep $apachesearchterm $logslocation/md/md1/mdq.uou-access_log* $logslocation/md/md2/mdq.uou-access_log* $logslocation/md/md3/mdq.uou-access_log* $logslocation/md/md-ne-01/mdq.uou-access_log* $logslocation/md/md-ne-02/mdq.uou-access_log* $logslocation/md/md-we-01/mdq.uou-access_log* $logslocation/md/md-we-02/mdq.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer|monitis)" | grep "/entities/" | grep -v "/entities/ " | grep -v 404 | grep "\" 200" | cut -f 10 -d " " | grep -v - | awk '{sum+=$1} END {print sum}')
if [[ "$mdqtotalbytes" -gt "0" ]]; then
mdqtotalhr=$(bytestohr $mdqtotalbytes)
else
@@ -516,7 +522,7 @@ fi
# Min queries per IP
if [[ $mdqcount -gt "0" ]]; then
- mdqminqueriesperip=$(grep $apachesearchterm $logslocation/md/md1/mdq.uou-access_log* $logslocation/md/md2/mdq.uou-access_log* $logslocation/md/md3/mdq.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer)" | grep "/entities" | grep -v 404 | grep -v "/entities/ " | grep -v "/entities/ " | cut -f 2 -d ":" | cut -f 1 -d " " | sort | uniq -c | sort -nr | tail -1 | awk '{print $1}' | awk '{ printf ("%'"'"'d\n", $0) }')
+ mdqminqueriesperip=$(grep $apachesearchterm $logslocation/md/md1/mdq.uou-access_log* $logslocation/md/md2/mdq.uou-access_log* $logslocation/md/md3/mdq.uou-access_log* $logslocation/md/md-ne-01/mdq.uou-access_log* $logslocation/md/md-ne-02/mdq.uou-access_log* $logslocation/md/md-we-01/mdq.uou-access_log* $logslocation/md/md-we-02/mdq.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer|monitis)" | grep "/entities" | grep -v 404 | grep -v "/entities/ " | grep -v "/entities/ " | cut -f 1 -d " " | cut -f 2-9 -d ":" | sort | uniq -c | sort -nr | tail -1 | awk '{print $1}' | awk '{ printf ("%'"'"'d\n", $0) }')
else
mdqminqueriesperip="0"
fi
@@ -530,14 +536,14 @@ fi
# Max queries per IP
if [[ $mdqcount -gt "0" ]]; then
- mdqmaxqueriesperip=$(grep $apachesearchterm $logslocation/md/md1/mdq.uou-access_log* $logslocation/md/md2/mdq.uou-access_log* $logslocation/md/md3/mdq.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer)" | grep "/entities" | grep -v 404 | grep -v "/entities/ " | grep -v "/entities/ " | cut -f 2 -d ":" | cut -f 1 -d " " | sort | uniq -c | sort -nr | head -1 | awk '{print $1}' | awk '{ printf ("%'"'"'d\n", $0) }')
+ mdqmaxqueriesperip=$(grep $apachesearchterm $logslocation/md/md1/mdq.uou-access_log* $logslocation/md/md2/mdq.uou-access_log* $logslocation/md/md3/mdq.uou-access_log* $logslocation/md/md-ne-01/mdq.uou-access_log* $logslocation/md/md-ne-02/mdq.uou-access_log* $logslocation/md/md-we-01/mdq.uou-access_log* $logslocation/md/md-we-02/mdq.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer|monitis)" | grep "/entities" | grep -v 404 | grep -v "/entities/ " | grep -v "/entities/ " | cut -f 1 -d " " | cut -f 2-9 -d ":" | sort | uniq -c | sort -nr | head -1 | awk '{print $1}' | awk '{ printf ("%'"'"'d\n", $0) }')
else
mdqmaxqueriesperip="0"
fi
if [[ "$timeperiod" != "day" ]]; then
# Top 10 downloaders and how many downloads / total data shipped
- mdqtoptenipsbycount=$(grep $apachesearchterm $logslocation/md/md1/mdq.uou-access_log* $logslocation/md/md2/mdq.uou-access_log* $logslocation/md/md3/mdq.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer)" | grep -v 193.63.72.83 | grep -v 194.83.7.211 | grep "/entities" | grep -v "/entities/ " | grep -v 404 | grep -v "/entities/ " | cut -f 2 -d ":" | cut -f 1 -d " " | sort | uniq -c | sort -nr | head -10)
+ mdqtoptenipsbycount=$(grep $apachesearchterm $logslocation/md/md1/mdq.uou-access_log* $logslocation/md/md2/mdq.uou-access_log* $logslocation/md/md3/mdq.uou-access_log* $logslocation/md/md-ne-01/mdq.uou-access_log* $logslocation/md/md-ne-02/mdq.uou-access_log* $logslocation/md/md-we-01/mdq.uou-access_log* $logslocation/md/md-we-02/mdq.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer|monitis)" | grep -v 193.63.72.83 | grep -v 194.83.7.211 | grep "/entities" | grep -v "/entities/ " | grep -v 404 | grep -v "/entities/ " | cut -f 1 -d " " | cut -f 2-9 -d ":" | sort | uniq -c | sort -nr | head -10)
#
# Manipute results of the top 10
@@ -558,7 +564,7 @@ if [[ "$timeperiod" != "day" ]]; then
countfriendly=$(echo $count | awk '{ printf ("%'"'"'d\n", $0) }')
# Figure out total traffic shipped to this IP
- totaldataforthisip=$(grep $apachesearchterm $logslocation/md/md1/mdq.uou-access_log* $logslocation/md/md2/mdq.uou-access_log* $logslocation/md/md3/mdq.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer)" | grep "/entities/" | grep -v "/entities/ " | grep -v 404 | grep "\" 200" | grep $ipaddr | cut -f 10 -d " " | grep -v - | awk '{sum+=$1} END {print sum}')
+ totaldataforthisip=$(grep $apachesearchterm $logslocation/md/md1/mdq.uou-access_log* $logslocation/md/md2/mdq.uou-access_log* $logslocation/md/md3/mdq.uou-access_log* $logslocation/md/md-ne-01/mdq.uou-access_log* $logslocation/md/md-ne-02/mdq.uou-access_log* $logslocation/md/md-we-01/mdq.uou-access_log* $logslocation/md/md-we-02/mdq.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer|monitis)" | grep "/entities/" | grep -v "/entities/ " | grep -v 404 | grep "\" 200" | grep $ipaddr | cut -f 10 -d " " | grep -v - | awk '{sum+=$1} END {print sum}')
if [[ "$totaldataforthisip" -gt "0" ]]; then
totaldataforthisiphr=$(bytestohr $totaldataforthisip)
else
@@ -581,7 +587,7 @@ if [[ "$timeperiod" != "day" ]]; then
# Top 10 queries and how many downloads / total data shipped
- mdqtoptenqueriesbycount=$(grep $apachesearchterm $logslocation/md/md1/mdq.uou-access_log* $logslocation/md/md2/mdq.uou-access_log* $logslocation/md/md3/mdq.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer)" | grep -v 193.63.72.83 | grep -v 194.83.7.211 | grep /entities/ | grep -v 404 | grep -v "/entities/ " | grep -v "/entities/ " | awk '{print $7}' | cut -f 3 -d "/" | sed "s@+@ @g;s@%@\\\\x@g" | xargs -0 printf "%b" | sort | uniq -c | sort -nr | head -10)
+ mdqtoptenqueriesbycount=$(grep $apachesearchterm $logslocation/md/md1/mdq.uou-access_log* $logslocation/md/md2/mdq.uou-access_log* $logslocation/md/md3/mdq.uou-access_log* $logslocation/md/md-ne-01/mdq.uou-access_log* $logslocation/md/md-ne-02/mdq.uou-access_log* $logslocation/md/md-we-01/mdq.uou-access_log* $logslocation/md/md-we-02/mdq.uou-access_log* | grep -Ev "(Sensu-HTTP-Check|dummy|check_http|Balancer|monitis)" | grep /entities/ | grep -v 404 | grep -v "/entities/ " | grep -v "/entities/ " | awk '{print $7}' | cut -f 3 -d "/" | sed "s@+@ @g;s@%@\\\\x@g" | printf "%b\n" $(*CDS:* $cdscountfriendly requests serviced (DS: $cdsdscount / WAYF: $cdswayfcount).\n"
msg+=">*Wugen:* $wugencount WAYFless URLs generated, $wugennewsubs new subscriptions.\n"
msg+=">*Test IdP:* $testidplogincount logins to $testidpspcount SPs.\n"
- msg+=">*Test SP:* $testsplogincount logins from $testspidpcount IdPs."
+ msg+=">*Test SP:* $testsplogincount logins from $testspidpcount IdPs.\n"
+ msg+=">*Website:* $wwwaccesscountfriendly hits from $wwwaccessipcount unique IPs."
+
else
#
@@ -706,7 +750,7 @@ else
msg+="--> * $mdaggrcountfullfriendly ($mdaggrfullpc%) were full downloads, of which $mdaggrcountfullcomprfriendly ($mdaggrfullcomprpc%) were compressed.\n"
msg+="--> ukfederation-metadata.xml: $mdaggrmaintotalhr of data actually shipped; would have been an estimated $mdaggrmaintotalestnocompresshr without compression, and $mdaggrmaintotalestnocompressnocgethr without compression or conditional gets.\n"
msg+="-> IPv4: $mdaggrv4pc% vs IPv6: $mdaggrv6pc%\n"
- msg+="-> Server distribution: md1: $mdaggrmd1pc% md2: $mdaggrmd2pc% md3: $mdaggrmd3pc%\n"
+ msg+="-> Server distribution: md-ne-01: $mdaggrmdne01pc% md-ne-02: $mdaggrmdne02pc% md-we-01: $mdaggrmdwe01pc% md-we-02: $mdaggrmdwe02pc% / md1: $mdaggrmd1pc% md2: $mdaggrmd2pc% md3: $mdaggrmd3pc%\n"
msg+="-> $mdaggrminqueriesperip/$mdaggravgqueriesperip/$mdaggrmaxqueriesperip min/avg/max queries per querying IP (all reqs)\n"
msg+="-> $mdaggrminqueriesperipfull/$mdaggravgqueriesperipfull/$mdaggrmaxqueriesperipfull min/avg/max queries per querying IP (full D/Ls only)\n"
msg+="\nRequests per published aggregate\n"
@@ -735,7 +779,7 @@ else
msg+="Central Discovery Service:\n"
msg+="-> $cdscountfriendly total requests serviced\n"
msg+="-> IPv4: $cdsv4pc% vs IPv6: $cdsv6pc%\n"
- msg+="-> Server distribution: shib-cds1: $cds1pc% shib-cds2: $cds2pc% shib-cds3: $cds3pc%\n"
+ msg+="-> Server distribution: shibcds-ne-01: $cdsne01pc% shibcds-ne-02: $cdsne02pc% shibcds-we-01: $cdswe01pc% shibcds-we-02: $cdswe02pc% / shib-cds1: $cds1pc% shib-cds2: $cds2pc% shib-cds3: $cds3pc%\n"
msg+="-> DS: $cdsdscount / WAYF: $cdswayfcount\n"
msg+="\n-----\n"
msg+="Wugen:\n"
@@ -753,6 +797,10 @@ else
msg+="-> $testsplogincount logins from $testspidpcount IdPs.\n"
msg+="\n-> Top 10 IdPs logged in from:\n"
msg+="$testsptoptenidpsbycount\n"
+ msg+="\n-----\n"
+ msg+="Website usage:\n"
+ msg+="-> $wwwaccesscountfriendly hits from $wwwaccessipcount unique IPs.\n"
+ msg+="-> Server distribution: www-ne-01: $wwwaccessne01pc% www-we-01: $wwwaccesswe01pc% / web1: $wwwaccessweb1pc% web2: $wwwaccessweb2pc% \n"
msg+="\n-----"
fi
@@ -765,4 +813,4 @@ fi
echo -e "$msg"
-exit 0
\ No newline at end of file
+exit 0
diff --git a/utilities/stats-sync.sh b/utilities/stats-sync.sh
index af5f02b2..f2fdba77 100755
--- a/utilities/stats-sync.sh
+++ b/utilities/stats-sync.sh
@@ -10,18 +10,20 @@ logslocation="/var/stats"
# Logs from API
# Logs from MD servers
-rsync -at --exclude modsec* stats@md1:/var/log/httpd/* $logslocation/md/md1/
-rsync -at --exclude modsec* stats@md2:/var/log/httpd/* $logslocation/md/md2/
-rsync -at --exclude modsec* stats@md3:/var/log/httpd/* $logslocation/md/md3/
+rsync -at --exclude modsec* stats@md-ne-01:/var/log/httpd/* $logslocation/md/md-ne-01/
+rsync -at --exclude modsec* stats@md-ne-02:/var/log/httpd/* $logslocation/md/md-ne-02/
+rsync -at --exclude modsec* stats@md-we-01:/var/log/httpd/* $logslocation/md/md-we-01/
+rsync -at --exclude modsec* stats@md-we-02:/var/log/httpd/* $logslocation/md/md-we-02/
# Logs from CDS servers
-rsync -at --exclude modsec* stats@shib-cds1:/var/log/httpd/* $logslocation/cds/shib-cds1/
-rsync -at --exclude modsec* stats@shib-cds2:/var/log/httpd/* $logslocation/cds/shib-cds2/
-rsync -at --exclude modsec* stats@shib-cds3:/var/log/httpd/* $logslocation/cds/shib-cds3/
+rsync -at --exclude modsec* stats@shibcds-ne-01:/var/log/httpd/* $logslocation/cds/shibcds-ne-01/
+rsync -at --exclude modsec* stats@shibcds-ne-02:/var/log/httpd/* $logslocation/cds/shibcds-ne-02/
+rsync -at --exclude modsec* stats@shibcds-we-01:/var/log/httpd/* $logslocation/cds/shibcds-we-01/
+rsync -at --exclude modsec* stats@shibcds-we-02:/var/log/httpd/* $logslocation/cds/shibcds-we-02/
# Logs from websites
-rsync -at --exclude modsec* stats@web1:/var/log/httpd/* $logslocation/www/web1/
-rsync -at --exclude modsec* stats@web2:/var/log/httpd/* $logslocation/www/web2/
+rsync -at --exclude modsec* stats@www-ne-01:/var/log/httpd/* $logslocation/www/www-ne-01/
+rsync -at --exclude modsec* stats@www-we-01:/var/log/httpd/* $logslocation/www/www-we-01/
# Logs from Wugen
rsync -at --exclude modsec* stats@wugen:/var/log/httpd/* $logslocation/wugen/
@@ -37,4 +39,4 @@ rsync -at stats@test-sp:/var/log/shibboleth/shibd* $logslocation/test-sp/
rsync -at stats@test-sp:/var/log/shibboleth/transaction* $logslocation/test-sp/
# Exit happily
-exit 0
\ No newline at end of file
+exit 0