saml 3.0.1 → 4.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +23 -0
- package/lib/saml11.js +4 -0
- package/lib/saml20.js +4 -0
- package/lib/xml/encrypt.js +3 -1
- package/package.json +12 -12
- package/.github/workflows/semgrep.yml +0 -15
- package/.idea/modules.xml +0 -8
- package/.idea/node-saml.iml +0 -12
- package/.idea/vcs.xml +0 -6
- package/.travis.yml +0 -4
- package/CHANGELOG.md +0 -82
- package/commitlint.config.js +0 -1
- package/test/saml11.tests.js +0 -489
- package/test/saml20.tests.js +0 -688
- package/test/test-auth0-chain.pem +0 -160
- package/test/test-auth0.der +0 -0
- package/test/test-auth0.key +0 -27
- package/test/test-auth0.pem +0 -24
- package/test/test-auth0_rsa.pub +0 -9
- package/test/utils.js +0 -116
- package/test/utils.tests.js +0 -63
|
@@ -1,160 +0,0 @@
|
|
|
1
|
-
-----BEGIN CERTIFICATE-----
|
|
2
|
-
MIIN1jCCDL6gAwIBAgIRANpcJKruPRmYEgAAAAAFph0wDQYJKoZIhvcNAQELBQAw
|
|
3
|
-
RjELMAkGA1UEBhMCVVMxIjAgBgNVBAoTGUdvb2dsZSBUcnVzdCBTZXJ2aWNlcyBM
|
|
4
|
-
TEMxEzARBgNVBAMTCkdUUyBDQSAxQzMwHhcNMjIwMzE3MTAyNjA4WhcNMjIwNjA5
|
|
5
|
-
MTAyNjA3WjAXMRUwEwYDVQQDDAwqLmdvb2dsZS5jb20wWTATBgcqhkjOPQIBBggq
|
|
6
|
-
hkjOPQMBBwNCAATtYBIFrigABQ4fmk2FmwNZhOsA5o5Z+V6m1npj4TjYTAxTLHoO
|
|
7
|
-
Qv2wKY7YfnQD6Jb7yQhc7Jma4UdPV/jplArko4ILtzCCC7MwDgYDVR0PAQH/BAQD
|
|
8
|
-
AgeAMBMGA1UdJQQMMAoGCCsGAQUFBwMBMAwGA1UdEwEB/wQCMAAwHQYDVR0OBBYE
|
|
9
|
-
FI0OoPWBuG+vJ2nvFqPxQqYA+RyiMB8GA1UdIwQYMBaAFIp0f6+Fze6VzT2c0OJG
|
|
10
|
-
FPNxNR0nMGoGCCsGAQUFBwEBBF4wXDAnBggrBgEFBQcwAYYbaHR0cDovL29jc3Au
|
|
11
|
-
cGtpLmdvb2cvZ3RzMWMzMDEGCCsGAQUFBzAChiVodHRwOi8vcGtpLmdvb2cvcmVw
|
|
12
|
-
by9jZXJ0cy9ndHMxYzMuZGVyMIIJaAYDVR0RBIIJXzCCCVuCDCouZ29vZ2xlLmNv
|
|
13
|
-
bYIWKi5hcHBlbmdpbmUuZ29vZ2xlLmNvbYIJKi5iZG4uZGV2ghIqLmNsb3VkLmdv
|
|
14
|
-
b2dsZS5jb22CGCouY3Jvd2Rzb3VyY2UuZ29vZ2xlLmNvbYIYKi5kYXRhY29tcHV0
|
|
15
|
-
ZS5nb29nbGUuY29tggsqLmdvb2dsZS5jYYILKi5nb29nbGUuY2yCDiouZ29vZ2xl
|
|
16
|
-
LmNvLmlugg4qLmdvb2dsZS5jby5qcIIOKi5nb29nbGUuY28udWuCDyouZ29vZ2xl
|
|
17
|
-
LmNvbS5hcoIPKi5nb29nbGUuY29tLmF1gg8qLmdvb2dsZS5jb20uYnKCDyouZ29v
|
|
18
|
-
Z2xlLmNvbS5jb4IPKi5nb29nbGUuY29tLm14gg8qLmdvb2dsZS5jb20udHKCDyou
|
|
19
|
-
Z29vZ2xlLmNvbS52boILKi5nb29nbGUuZGWCCyouZ29vZ2xlLmVzggsqLmdvb2ds
|
|
20
|
-
ZS5mcoILKi5nb29nbGUuaHWCCyouZ29vZ2xlLml0ggsqLmdvb2dsZS5ubIILKi5n
|
|
21
|
-
b29nbGUucGyCCyouZ29vZ2xlLnB0ghIqLmdvb2dsZWFkYXBpcy5jb22CDyouZ29v
|
|
22
|
-
Z2xlYXBpcy5jboIRKi5nb29nbGV2aWRlby5jb22CDCouZ3N0YXRpYy5jboIQKi5n
|
|
23
|
-
c3RhdGljLWNuLmNvbYIPZ29vZ2xlY25hcHBzLmNughEqLmdvb2dsZWNuYXBwcy5j
|
|
24
|
-
boIRZ29vZ2xlYXBwcy1jbi5jb22CEyouZ29vZ2xlYXBwcy1jbi5jb22CDGdrZWNu
|
|
25
|
-
YXBwcy5jboIOKi5na2VjbmFwcHMuY26CEmdvb2dsZWRvd25sb2Fkcy5jboIUKi5n
|
|
26
|
-
b29nbGVkb3dubG9hZHMuY26CEHJlY2FwdGNoYS5uZXQuY26CEioucmVjYXB0Y2hh
|
|
27
|
-
Lm5ldC5jboIQcmVjYXB0Y2hhLWNuLm5ldIISKi5yZWNhcHRjaGEtY24ubmV0ggt3
|
|
28
|
-
aWRldmluZS5jboINKi53aWRldmluZS5jboIRYW1wcHJvamVjdC5vcmcuY26CEyou
|
|
29
|
-
YW1wcHJvamVjdC5vcmcuY26CEWFtcHByb2plY3QubmV0LmNughMqLmFtcHByb2pl
|
|
30
|
-
Y3QubmV0LmNughdnb29nbGUtYW5hbHl0aWNzLWNuLmNvbYIZKi5nb29nbGUtYW5h
|
|
31
|
-
bHl0aWNzLWNuLmNvbYIXZ29vZ2xlYWRzZXJ2aWNlcy1jbi5jb22CGSouZ29vZ2xl
|
|
32
|
-
YWRzZXJ2aWNlcy1jbi5jb22CEWdvb2dsZXZhZHMtY24uY29tghMqLmdvb2dsZXZh
|
|
33
|
-
ZHMtY24uY29tghFnb29nbGVhcGlzLWNuLmNvbYITKi5nb29nbGVhcGlzLWNuLmNv
|
|
34
|
-
bYIVZ29vZ2xlb3B0aW1pemUtY24uY29tghcqLmdvb2dsZW9wdGltaXplLWNuLmNv
|
|
35
|
-
bYISZG91YmxlY2xpY2stY24ubmV0ghQqLmRvdWJsZWNsaWNrLWNuLm5ldIIYKi5m
|
|
36
|
-
bHMuZG91YmxlY2xpY2stY24ubmV0ghYqLmcuZG91YmxlY2xpY2stY24ubmV0gg5k
|
|
37
|
-
b3VibGVjbGljay5jboIQKi5kb3VibGVjbGljay5jboIUKi5mbHMuZG91YmxlY2xp
|
|
38
|
-
Y2suY26CEiouZy5kb3VibGVjbGljay5jboIRZGFydHNlYXJjaC1jbi5uZXSCEyou
|
|
39
|
-
ZGFydHNlYXJjaC1jbi5uZXSCHWdvb2dsZXRyYXZlbGFkc2VydmljZXMtY24uY29t
|
|
40
|
-
gh8qLmdvb2dsZXRyYXZlbGFkc2VydmljZXMtY24uY29tghhnb29nbGV0YWdzZXJ2
|
|
41
|
-
aWNlcy1jbi5jb22CGiouZ29vZ2xldGFnc2VydmljZXMtY24uY29tghdnb29nbGV0
|
|
42
|
-
YWdtYW5hZ2VyLWNuLmNvbYIZKi5nb29nbGV0YWdtYW5hZ2VyLWNuLmNvbYIYZ29v
|
|
43
|
-
Z2xlc3luZGljYXRpb24tY24uY29tghoqLmdvb2dsZXN5bmRpY2F0aW9uLWNuLmNv
|
|
44
|
-
bYIkKi5zYWZlZnJhbWUuZ29vZ2xlc3luZGljYXRpb24tY24uY29tghZhcHAtbWVh
|
|
45
|
-
c3VyZW1lbnQtY24uY29tghgqLmFwcC1tZWFzdXJlbWVudC1jbi5jb22CC2d2dDEt
|
|
46
|
-
Y24uY29tgg0qLmd2dDEtY24uY29tggtndnQyLWNuLmNvbYINKi5ndnQyLWNuLmNv
|
|
47
|
-
bYILMm1kbi1jbi5uZXSCDSouMm1kbi1jbi5uZXSCFGdvb2dsZWZsaWdodHMtY24u
|
|
48
|
-
bmV0ghYqLmdvb2dsZWZsaWdodHMtY24ubmV0ggxhZG1vYi1jbi5jb22CDiouYWRt
|
|
49
|
-
b2ItY24uY29tgg0qLmdzdGF0aWMuY29tghQqLm1ldHJpYy5nc3RhdGljLmNvbYIK
|
|
50
|
-
Ki5ndnQxLmNvbYIRKi5nY3BjZG4uZ3Z0MS5jb22CCiouZ3Z0Mi5jb22CDiouZ2Nw
|
|
51
|
-
Lmd2dDIuY29tghAqLnVybC5nb29nbGUuY29tghYqLnlvdXR1YmUtbm9jb29raWUu
|
|
52
|
-
Y29tggsqLnl0aW1nLmNvbYILYW5kcm9pZC5jb22CDSouYW5kcm9pZC5jb22CEyou
|
|
53
|
-
Zmxhc2guYW5kcm9pZC5jb22CBGcuY26CBiouZy5jboIEZy5jb4IGKi5nLmNvggZn
|
|
54
|
-
b28uZ2yCCnd3dy5nb28uZ2yCFGdvb2dsZS1hbmFseXRpY3MuY29tghYqLmdvb2ds
|
|
55
|
-
ZS1hbmFseXRpY3MuY29tggpnb29nbGUuY29tghJnb29nbGVjb21tZXJjZS5jb22C
|
|
56
|
-
FCouZ29vZ2xlY29tbWVyY2UuY29tgghnZ3BodC5jboIKKi5nZ3BodC5jboIKdXJj
|
|
57
|
-
aGluLmNvbYIMKi51cmNoaW4uY29tggh5b3V0dS5iZYILeW91dHViZS5jb22CDSou
|
|
58
|
-
eW91dHViZS5jb22CFHlvdXR1YmVlZHVjYXRpb24uY29tghYqLnlvdXR1YmVlZHVj
|
|
59
|
-
YXRpb24uY29tgg95b3V0dWJla2lkcy5jb22CESoueW91dHViZWtpZHMuY29tggV5
|
|
60
|
-
dC5iZYIHKi55dC5iZYIaYW5kcm9pZC5jbGllbnRzLmdvb2dsZS5jb22CG2RldmVs
|
|
61
|
-
b3Blci5hbmRyb2lkLmdvb2dsZS5jboIcZGV2ZWxvcGVycy5hbmRyb2lkLmdvb2ds
|
|
62
|
-
ZS5jboIYc291cmNlLmFuZHJvaWQuZ29vZ2xlLmNuMCEGA1UdIAQaMBgwCAYGZ4EM
|
|
63
|
-
AQIBMAwGCisGAQQB1nkCBQMwPAYDVR0fBDUwMzAxoC+gLYYraHR0cDovL2NybHMu
|
|
64
|
-
cGtpLmdvb2cvZ3RzMWMzL2ZWSnhiVi1LdG1rLmNybDCCAQMGCisGAQQB1nkCBAIE
|
|
65
|
-
gfQEgfEA7wB2ACl5vvCeOTkh8FZzn2Old+W+V32cYAr4+U1dJlwlXceEAAABf5eg
|
|
66
|
-
31sAAAQDAEcwRQIgKO/qyXDbVstUmyGkus1+NtSfQeBVeaah4uvJ4h5zODUCIQCr
|
|
67
|
-
IAXRbx0K9/GQGOK/OCcdH04AszWgCoHyR2AZjTaTfQB1AN+lXqtogk8fbK3uuF9O
|
|
68
|
-
PlrqzaISpGpejjsSwCBEXCpzAAABf5eg364AAAQDAEYwRAIgAr7Yby6/4yctoeiV
|
|
69
|
-
N84JsUBOFT8H5Wm9/JxeRhLzOOcCIAXVbvK2b8fGEBcnMXaiMEB3A2NknYf3eeKV
|
|
70
|
-
hkPNl1/BMA0GCSqGSIb3DQEBCwUAA4IBAQAfxzM4OzKzXj4vvS4ian65PHlV1YiY
|
|
71
|
-
JOonKRWzA3LDjZ0TAF1WMEXiD46yV6HYAYdeQTGin6AaL2P4Z11rCVJPQVHW6UGv
|
|
72
|
-
8AoqW4QmBer0U3dJpu28UZ7IA2KPUdAJKhukl7Y5M4fotMxydh5nmh/743GZw3g9
|
|
73
|
-
krSDY8HAFqhr2R9zo2gh42IPUQI4YJcZiU4vnZlaE9NbaJmZmCm357AJ6RhHMC66
|
|
74
|
-
WZ1O8+UD3EpkFWamhrPEU2GOLFjDDG/SOtXv7BBG0zCn/VRwShCj5kfivZWfWxvN
|
|
75
|
-
/UrJwT49JDcuuHV7P0SwabvCQurMRd7J6ANO+esgdxGavWsnzT4U3Ac2
|
|
76
|
-
-----END CERTIFICATE-----
|
|
77
|
-
-----BEGIN CERTIFICATE-----
|
|
78
|
-
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
-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
-
MBIGA1UEAxMLR1RTIFJvb3QgUjEwHhcNMjAwODEzMDAwMDQyWhcNMjcwOTMwMDAw
|
|
81
|
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-
CCsGAQUFBzABhhpodHRwOi8vb2NzcC5wa2kuZ29vZy9ndHNyMTAwBggrBgEFBQcw
|
|
93
|
-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
-
MCswKaAnoCWGI2h0dHA6Ly9jcmwucGtpLmdvb2cvZ3RzcjEvZ3RzcjEuY3JsMFcG
|
|
95
|
-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
-
aS5nb29nL3JlcG9zaXRvcnkvMAgGBmeBDAECATAIBgZngQwBAgIwDQYJKoZIhvcN
|
|
97
|
-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
-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
-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
-
+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
-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
-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
-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
-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
-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
-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
-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
|
|
108
|
-
-----END CERTIFICATE-----
|
|
109
|
-
-----BEGIN CERTIFICATE-----
|
|
110
|
-
MIIFYjCCBEqgAwIBAgIQd70NbNs2+RrqIQ/E8FjTDTANBgkqhkiG9w0BAQsFADBX
|
|
111
|
-
MQswCQYDVQQGEwJCRTEZMBcGA1UEChMQR2xvYmFsU2lnbiBudi1zYTEQMA4GA1UE
|
|
112
|
-
CxMHUm9vdCBDQTEbMBkGA1UEAxMSR2xvYmFsU2lnbiBSb290IENBMB4XDTIwMDYx
|
|
113
|
-
OTAwMDA0MloXDTI4MDEyODAwMDA0MlowRzELMAkGA1UEBhMCVVMxIjAgBgNVBAoT
|
|
114
|
-
GUdvb2dsZSBUcnVzdCBTZXJ2aWNlcyBMTEMxFDASBgNVBAMTC0dUUyBSb290IFIx
|
|
115
|
-
MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAthECix7joXebO9y/lD63
|
|
116
|
-
ladAPKH9gvl9MgaCcfb2jH/76Nu8ai6Xl6OMS/kr9rH5zoQdsfnFl97vufKj6bwS
|
|
117
|
-
iV6nqlKr+CMny6SxnGPb15l+8Ape62im9MZaRw1NEDPjTrETo8gYbEvs/AmQ351k
|
|
118
|
-
KSUjB6G00j0uYODP0gmHu81I8E3CwnqIiru6z1kZ1q+PsAewnjHxgsHA3y6mbWwZ
|
|
119
|
-
DrXYfiYaRQM9sHmklCitD38m5agI/pboPGiUU+6DOogrFZYJsuB6jC511pzrp1Zk
|
|
120
|
-
j5ZPaK49l8KEj8C8QMALXL32h7M1bKwYUH+E4EzNktMg6TO8UpmvMrUpsyUqtEj5
|
|
121
|
-
cuHKZPfmghCN6J3Cioj6OGaK/GP5Afl4/Xtcd/p2h/rs37EOeZVXtL0m79YB0esW
|
|
122
|
-
CruOC7XFxYpVq9Os6pFLKcwZpDIlTirxZUTQAs6qzkm06p98g7BAe+dDq6dso499
|
|
123
|
-
iYH6TKX/1Y7DzkvgtdizjkXPdsDtQCv9Uw+wp9U7DbGKogPeMa3Md+pvez7W35Ei
|
|
124
|
-
Eua++tgy/BBjFFFy3l3WFpO9KWgz7zpm7AeKJt8T11dleCfeXkkUAKIAf5qoIbap
|
|
125
|
-
sZWwpbkNFhHax2xIPEDgfg1azVY80ZcFuctL7TlLnMQ/0lUTbiSw1nH69MG6zO0b
|
|
126
|
-
9f6BQdgAmD06yK56mDcYBZUCAwEAAaOCATgwggE0MA4GA1UdDwEB/wQEAwIBhjAP
|
|
127
|
-
BgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBTkrysmcRorSCeFL1JmLO/wiRNxPjAf
|
|
128
|
-
BgNVHSMEGDAWgBRge2YaRQ2XyolQL30EzTSo//z9SzBgBggrBgEFBQcBAQRUMFIw
|
|
129
|
-
JQYIKwYBBQUHMAGGGWh0dHA6Ly9vY3NwLnBraS5nb29nL2dzcjEwKQYIKwYBBQUH
|
|
130
|
-
MAKGHWh0dHA6Ly9wa2kuZ29vZy9nc3IxL2dzcjEuY3J0MDIGA1UdHwQrMCkwJ6Al
|
|
131
|
-
oCOGIWh0dHA6Ly9jcmwucGtpLmdvb2cvZ3NyMS9nc3IxLmNybDA7BgNVHSAENDAy
|
|
132
|
-
MAgGBmeBDAECATAIBgZngQwBAgIwDQYLKwYBBAHWeQIFAwIwDQYLKwYBBAHWeQIF
|
|
133
|
-
AwMwDQYJKoZIhvcNAQELBQADggEBADSkHrEoo9C0dhemMXoh6dFSPsjbdBZBiLg9
|
|
134
|
-
NR3t5P+T4Vxfq7vqfM/b5A3Ri1fyJm9bvhdGaJQ3b2t6yMAYN/olUazsaL+yyEn9
|
|
135
|
-
WprKASOshIArAoyZl+tJaox118fessmXn1hIVw41oeQa1v1vg4Fv74zPl6/AhSrw
|
|
136
|
-
9U5pCZEt4Wi4wStz6dTZ/CLANx8LZh1J7QJVj2fhMtfTJr9w4z30Z209fOU0iOMy
|
|
137
|
-
+qduBmpvvYuR7hZL6Dupszfnw0Skfths18dG9ZKb59UhvmaSGZRVbNQpsg3BZlvi
|
|
138
|
-
d0lIKO2d1xozclOzgjXPYovJJIultzkMu34qQb9Sz/yilrbCgj8=
|
|
139
|
-
-----END CERTIFICATE-----
|
|
140
|
-
-----BEGIN CERTIFICATE-----
|
|
141
|
-
MIIDdTCCAl2gAwIBAgILBAAAAAABFUtaw5QwDQYJKoZIhvcNAQEFBQAwVzELMAkG
|
|
142
|
-
A1UEBhMCQkUxGTAXBgNVBAoTEEdsb2JhbFNpZ24gbnYtc2ExEDAOBgNVBAsTB1Jv
|
|
143
|
-
b3QgQ0ExGzAZBgNVBAMTEkdsb2JhbFNpZ24gUm9vdCBDQTAeFw05ODA5MDExMjAw
|
|
144
|
-
MDBaFw0yODAxMjgxMjAwMDBaMFcxCzAJBgNVBAYTAkJFMRkwFwYDVQQKExBHbG9i
|
|
145
|
-
YWxTaWduIG52LXNhMRAwDgYDVQQLEwdSb290IENBMRswGQYDVQQDExJHbG9iYWxT
|
|
146
|
-
aWduIFJvb3QgQ0EwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDaDuaZ
|
|
147
|
-
jc6j40+Kfvvxi4Mla+pIH/EqsLmVEQS98GPR4mdmzxzdzxtIK+6NiY6arymAZavp
|
|
148
|
-
xy0Sy6scTHAHoT0KMM0VjU/43dSMUBUc71DuxC73/OlS8pF94G3VNTCOXkNz8kHp
|
|
149
|
-
1Wrjsok6Vjk4bwY8iGlbKk3Fp1S4bInMm/k8yuX9ifUSPJJ4ltbcdG6TRGHRjcdG
|
|
150
|
-
snUOhugZitVtbNV4FpWi6cgKOOvyJBNPc1STE4U6G7weNLWLBYy5d4ux2x8gkasJ
|
|
151
|
-
U26Qzns3dLlwR5EiUWMWea6xrkEmCMgZK9FGqkjWZCrXgzT/LCrBbBlDSgeF59N8
|
|
152
|
-
9iFo7+ryUp9/k5DPAgMBAAGjQjBAMA4GA1UdDwEB/wQEAwIBBjAPBgNVHRMBAf8E
|
|
153
|
-
BTADAQH/MB0GA1UdDgQWBBRge2YaRQ2XyolQL30EzTSo//z9SzANBgkqhkiG9w0B
|
|
154
|
-
AQUFAAOCAQEA1nPnfE920I2/7LqivjTFKDK1fPxsnCwrvQmeU79rXqoRSLblCKOz
|
|
155
|
-
yj1hTdNGCbM+w6DjY1Ub8rrvrTnhQ7k4o+YviiY776BQVvnGCv04zcQLcFGUl5gE
|
|
156
|
-
38NflNUVyRRBnMRddWQVDf9VMOyGj/8N7yy5Y0b2qvzfvGn9LhJIZJrglfCm7ymP
|
|
157
|
-
AbEVtQwdpf5pLGkkeB6zpxxxYu7KyJesF12KwvhHhm4qxFYxldBniYUr+WymXUad
|
|
158
|
-
DKqC5JlR3XC321Y9YeRq4VzW9v493kHMB65jUr9TU/Qr6cf9tveCX4XSQRjbgbME
|
|
159
|
-
HMUfpIBvFSDJ3gyICh3WZlXi/EjJKSZp4A==
|
|
160
|
-
-----END CERTIFICATE-----
|
package/test/test-auth0.der
DELETED
|
Binary file
|
package/test/test-auth0.key
DELETED
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
-----BEGIN RSA PRIVATE KEY-----
|
|
2
|
-
MIIEowIBAAKCAQEAxmJWY0eJcuV2uBtLnQ4004fuknbODo5xIyRhkYNkls5n9OrB
|
|
3
|
-
q4Lok6cjv7G2Q8mxAdlIUmzhTSyuNkrMMKZrPaMsAkNKE/aNpeWuSLXqcMs8T/8g
|
|
4
|
-
YCDcEmC5KYEJakNtKb3ZX2FKwT4yHHpsNomLDzJD5DyJKbRpNBm2no7ggIy7TQRJ
|
|
5
|
-
2H00mogQIQu8/fUANXVeGPshvLJU8MXEy/eiXkHJIT3DDA4VSr/C/tfP0tGJSNTM
|
|
6
|
-
874urc4zej+4INuTuMPtesZS47J0AsPxQuxengS4M76cVt5cH+Iqd1nKe5UqiSKv
|
|
7
|
-
LCXacPYg/T/Kdx0tBnwHIjKo/cbzZ+r+XynsCwIDAQABAoIBAFPWWwu5v6x+rJ1B
|
|
8
|
-
a8MDre93Eqty6cHdEJL5XQJRtMDGmcg3LYF94SwFBmaMg6pCIjvVx2qN+OjUaQso
|
|
9
|
-
sQIeUlPKEV8jcLrfBx2E4xJ3Tow8V1C3UMdPG7Hojler4H633/oz8RkN1Lm1vxep
|
|
10
|
-
5PFnTw0tAOQDcTPeulb6RuLbHqU0FEnf/jVOMhtPLcMAwJ3fkAJQ+ljFW2VKCQ83
|
|
11
|
-
d+ci1p+NHY/dbGLSR4lK58mVghcRMO3zhe5scrbECHJMfT6fCb2TXdjaueFUGC6+
|
|
12
|
-
fqUXvDj8HRfUilzTegNq8ZhwgMSw1HeX/PuiczSKc3aHYSsohMBugTErnkW+qF4Z
|
|
13
|
-
kE+kxgECgYEA/sm7umcyFuZME+RWYL8Gsp8agH1OGEgsmIiMi1z6RTlTmdR8fN18
|
|
14
|
-
ItzXyW+363VZln/1b5wCaPdLIxgASxybLAaxnKAXfmL7QvyVAaMwxj7N0ogvMQoN
|
|
15
|
-
x2VuSGZSam2+LFVIMWHq1C+3fvVnCDLm6oHvIMK/zvEsPBBtz+L6rlECgYEAx1Pr
|
|
16
|
-
KogaGHCi1XgsrNv9aFaayRvmhzZbmiigF0iWKAd3KKww94BdyyGSVfMfyL23LAbM
|
|
17
|
-
QDCrDNGpYAnpNZo/cL+OcGPYzlPsWDBrJub1HOA/H3WQlP4oEcfdbmJZhIkEwTGF
|
|
18
|
-
HaCHynEu4ekiCrWz9+XVNCquTyqnmaVDEzAfEZsCgYA8jQbfUt0Vkh+sboyUq3FV
|
|
19
|
-
C/jJZn4jyStICNOV3z/fKbOTkGsRZbW1t1RVHAbSn23uFXTn1GTCO1sQ+QhA0YiT
|
|
20
|
-
Gvgk5+sNb0qVbd+fpv/VbWGO0iyc8+24YIOoEyEtB+21LYNdsQ6U5M4wDvQwf6Bf
|
|
21
|
-
RQfmekIJVUmU8LaYPDIlMQKBgDSRiT/aTSeM7STnYMDl89sEnCXV2eJnD5mEhVQe
|
|
22
|
-
rJs5/M8ZOoDLtfDQlctdJ1DF1/0gfdWgADyNPuI5OuwMFhciLequKoufzoEjo97K
|
|
23
|
-
onJPIdamJs9kiCTIVTm7bmhpyns5GCZMJAPb/cVOus+gRCpozuXHK9ltIm5/C0WQ
|
|
24
|
-
N2FpAoGBAOss6RN2krieqbn1mG8e2v5mMUd0CJkiJu2y5MnF3dYHXSQ3/ePAh/Yg
|
|
25
|
-
JOthpgYgBh+mV0DLqJhx/1DLS/xiqcoHDlndQDmYbtvvY7RlMo00+nGzkRVOfrqy
|
|
26
|
-
hC+1KsYHGPbSQixNQXtvFbAAVMSo+RRBkVGINYGDFnlQUpkppYRk
|
|
27
|
-
-----END RSA PRIVATE KEY-----
|
package/test/test-auth0.pem
DELETED
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
-----BEGIN CERTIFICATE-----
|
|
2
|
-
MIIEDzCCAvegAwIBAgIJALr9HwgrQ7GeMA0GCSqGSIb3DQEBBQUAMGIxGDAWBgNV
|
|
3
|
-
BAMTD2F1dGgwLmF1dGgwLmNvbTESMBAGA1UEChMJQXV0aDAgTExDMQswCQYDVQQG
|
|
4
|
-
EwJVUzETMBEGA1UECBMKV2FzaGluZ3RvbjEQMA4GA1UEBxMHUmVkbW9uZDAeFw0x
|
|
5
|
-
MjEyMjkxNTMwNDdaFw0xMzAxMjgxNTMwNDdaMGIxGDAWBgNVBAMTD2F1dGgwLmF1
|
|
6
|
-
dGgwLmNvbTESMBAGA1UEChMJQXV0aDAgTExDMQswCQYDVQQGEwJVUzETMBEGA1UE
|
|
7
|
-
CBMKV2FzaGluZ3RvbjEQMA4GA1UEBxMHUmVkbW9uZDCCASIwDQYJKoZIhvcNAQEB
|
|
8
|
-
BQADggEPADCCAQoCggEBAMZiVmNHiXLldrgbS50ONNOH7pJ2zg6OcSMkYZGDZJbO
|
|
9
|
-
Z/TqwauC6JOnI7+xtkPJsQHZSFJs4U0srjZKzDCmaz2jLAJDShP2jaXlrki16nDL
|
|
10
|
-
PE//IGAg3BJguSmBCWpDbSm92V9hSsE+Mhx6bDaJiw8yQ+Q8iSm0aTQZtp6O4ICM
|
|
11
|
-
u00ESdh9NJqIECELvP31ADV1Xhj7IbyyVPDFxMv3ol5BySE9wwwOFUq/wv7Xz9LR
|
|
12
|
-
iUjUzPO+Lq3OM3o/uCDbk7jD7XrGUuOydALD8ULsXp4EuDO+nFbeXB/iKndZynuV
|
|
13
|
-
Kokirywl2nD2IP0/yncdLQZ8ByIyqP3G82fq/l8p7AsCAwEAAaOBxzCBxDAdBgNV
|
|
14
|
-
HQ4EFgQUHI2rUXeBjTv1zAllaPGrHFcEK0YwgZQGA1UdIwSBjDCBiYAUHI2rUXeB
|
|
15
|
-
jTv1zAllaPGrHFcEK0ahZqRkMGIxGDAWBgNVBAMTD2F1dGgwLmF1dGgwLmNvbTES
|
|
16
|
-
MBAGA1UEChMJQXV0aDAgTExDMQswCQYDVQQGEwJVUzETMBEGA1UECBMKV2FzaGlu
|
|
17
|
-
Z3RvbjEQMA4GA1UEBxMHUmVkbW9uZIIJALr9HwgrQ7GeMAwGA1UdEwQFMAMBAf8w
|
|
18
|
-
DQYJKoZIhvcNAQEFBQADggEBAFrXIhCy4T4eGrikb0R2wHv/uS548r3pZyBV0CDb
|
|
19
|
-
cRwAtbnpJMvkGFqKVp4pmyoIDSVNK/j+sLEshB20XftezHZyRJbCUbtKvXQ6Fsxo
|
|
20
|
-
eZMlN0ITYKTaoBZKhUxxj90otAhNC58qwGUPqt2LewJhHyLucKkGJ1mQ3b5xKZ53
|
|
21
|
-
2ToufouH9VLhig3H1KnxWo/zMD6Ke8cCk6qO9htuhI06s3GQGS1QWQtAmm17C6Tf
|
|
22
|
-
KgDwQFZwhqHUUZnwKRH8gU6OgZsvhgV1B7H5mjZcu57KMiDBekU9MEY0DCVTN3Wk
|
|
23
|
-
mcTII668zLsJrkNX6PEfck1AMBbVE6pEUKcWwq3uaLvlAUo=
|
|
24
|
-
-----END CERTIFICATE-----
|
package/test/test-auth0_rsa.pub
DELETED
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
-----BEGIN PUBLIC KEY-----
|
|
2
|
-
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAxmJWY0eJcuV2uBtLnQ40
|
|
3
|
-
04fuknbODo5xIyRhkYNkls5n9OrBq4Lok6cjv7G2Q8mxAdlIUmzhTSyuNkrMMKZr
|
|
4
|
-
PaMsAkNKE/aNpeWuSLXqcMs8T/8gYCDcEmC5KYEJakNtKb3ZX2FKwT4yHHpsNomL
|
|
5
|
-
DzJD5DyJKbRpNBm2no7ggIy7TQRJ2H00mogQIQu8/fUANXVeGPshvLJU8MXEy/ei
|
|
6
|
-
XkHJIT3DDA4VSr/C/tfP0tGJSNTM874urc4zej+4INuTuMPtesZS47J0AsPxQuxe
|
|
7
|
-
ngS4M76cVt5cH+Iqd1nKe5UqiSKvLCXacPYg/T/Kdx0tBnwHIjKo/cbzZ+r+Xyns
|
|
8
|
-
CwIDAQAB
|
|
9
|
-
-----END PUBLIC KEY-----
|
package/test/utils.js
DELETED
|
@@ -1,116 +0,0 @@
|
|
|
1
|
-
var xmlCrypto = require('xml-crypto');
|
|
2
|
-
var xmldom = require('@xmldom/xmldom');
|
|
3
|
-
|
|
4
|
-
/**
|
|
5
|
-
* @param {string} assertion
|
|
6
|
-
* @param {Buffer} cert
|
|
7
|
-
* @return {boolean}
|
|
8
|
-
*/
|
|
9
|
-
exports.isValidSignature = function(assertion, cert) {
|
|
10
|
-
var signature = exports.getXmlSignatures(assertion)[0];
|
|
11
|
-
var sig = new xmlCrypto.SignedXml(null, { idAttribute: 'AssertionID' });
|
|
12
|
-
sig.keyInfoProvider = {
|
|
13
|
-
getKeyInfo: function (key) {
|
|
14
|
-
return "<X509Data></X509Data>";
|
|
15
|
-
},
|
|
16
|
-
getKey: function (keyInfo) {
|
|
17
|
-
return cert;
|
|
18
|
-
}
|
|
19
|
-
};
|
|
20
|
-
sig.loadSignature(signature.toString());
|
|
21
|
-
return sig.checkSignature(assertion);
|
|
22
|
-
};
|
|
23
|
-
|
|
24
|
-
/**
|
|
25
|
-
* @param {string} assertion
|
|
26
|
-
* @return {Element[]}
|
|
27
|
-
*/
|
|
28
|
-
exports.getXmlSignatures = function(assertion) {
|
|
29
|
-
var doc = new xmldom.DOMParser().parseFromString(assertion);
|
|
30
|
-
var signatures = xmlCrypto.xpath(doc, "/*/*[local-name(.)='Signature' and namespace-uri(.)='http://www.w3.org/2000/09/xmldsig#']");
|
|
31
|
-
|
|
32
|
-
return signatures;
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
exports.getIssuer = function(assertion) {
|
|
36
|
-
var doc = new xmldom.DOMParser().parseFromString(assertion);
|
|
37
|
-
return doc.documentElement.getAttribute('Issuer');
|
|
38
|
-
};
|
|
39
|
-
|
|
40
|
-
exports.getAssertionID = function(assertion) {
|
|
41
|
-
var doc = new xmldom.DOMParser().parseFromString(assertion);
|
|
42
|
-
return doc.documentElement.getAttribute('AssertionID');
|
|
43
|
-
};
|
|
44
|
-
|
|
45
|
-
exports.getIssueInstant = function(assertion) {
|
|
46
|
-
var doc = new xmldom.DOMParser().parseFromString(assertion);
|
|
47
|
-
return doc.documentElement.getAttribute('IssueInstant');
|
|
48
|
-
};
|
|
49
|
-
|
|
50
|
-
exports.getAuthenticationInstant = function (assertion) {
|
|
51
|
-
return exports.getAuthenticationStatement(assertion).getAttribute('AuthenticationInstant');
|
|
52
|
-
};
|
|
53
|
-
|
|
54
|
-
exports.getConditions = function(assertion) {
|
|
55
|
-
var doc = new xmldom.DOMParser().parseFromString(assertion);
|
|
56
|
-
return doc.documentElement.getElementsByTagName('saml:Conditions');
|
|
57
|
-
};
|
|
58
|
-
|
|
59
|
-
exports.getAudiences = function(assertion) {
|
|
60
|
-
var doc = new xmldom.DOMParser().parseFromString(assertion);
|
|
61
|
-
return doc.documentElement
|
|
62
|
-
.getElementsByTagName('saml:Conditions')[0]
|
|
63
|
-
.getElementsByTagName('saml:AudienceRestrictionCondition')[0]
|
|
64
|
-
.getElementsByTagName('saml:Audience');
|
|
65
|
-
};
|
|
66
|
-
|
|
67
|
-
exports.getAuthenticationStatement = function(assertion) {
|
|
68
|
-
var doc = new xmldom.DOMParser().parseFromString(assertion);
|
|
69
|
-
return doc.documentElement
|
|
70
|
-
.getElementsByTagName('saml:AuthenticationStatement')[0];
|
|
71
|
-
};
|
|
72
|
-
|
|
73
|
-
exports.getAttributes = function(assertion) {
|
|
74
|
-
var doc = new xmldom.DOMParser().parseFromString(assertion);
|
|
75
|
-
return doc.documentElement
|
|
76
|
-
.getElementsByTagName('saml:Attribute');
|
|
77
|
-
};
|
|
78
|
-
|
|
79
|
-
exports.getNameIdentifier = function(assertion) {
|
|
80
|
-
var doc = new xmldom.DOMParser().parseFromString(assertion);
|
|
81
|
-
return doc.documentElement
|
|
82
|
-
.getElementsByTagName('saml:NameIdentifier')[0];
|
|
83
|
-
};
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
//SAML2.0
|
|
87
|
-
|
|
88
|
-
exports.getNameID = function(assertion) {
|
|
89
|
-
var doc = new xmldom.DOMParser().parseFromString(assertion);
|
|
90
|
-
return doc.documentElement
|
|
91
|
-
.getElementsByTagName('saml:NameID')[0];
|
|
92
|
-
};
|
|
93
|
-
|
|
94
|
-
exports.getSaml2Issuer = function(assertion) {
|
|
95
|
-
var doc = new xmldom.DOMParser().parseFromString(assertion);
|
|
96
|
-
return doc.documentElement
|
|
97
|
-
.getElementsByTagName('saml:Issuer')[0];
|
|
98
|
-
};
|
|
99
|
-
|
|
100
|
-
exports.getAuthnContextClassRef = function(assertion) {
|
|
101
|
-
var doc = new xmldom.DOMParser().parseFromString(assertion);
|
|
102
|
-
return doc.documentElement
|
|
103
|
-
.getElementsByTagName('saml:AuthnContextClassRef')[0];
|
|
104
|
-
};
|
|
105
|
-
|
|
106
|
-
exports.getSubjectConfirmation = function(assertion) {
|
|
107
|
-
var doc = new xmldom.DOMParser().parseFromString(assertion);
|
|
108
|
-
return doc.documentElement
|
|
109
|
-
.getElementsByTagName('saml:getSubjectConfirmation');
|
|
110
|
-
};
|
|
111
|
-
|
|
112
|
-
exports.getEncryptedData = function(encryptedAssertion) {
|
|
113
|
-
var doc = new xmldom.DOMParser().parseFromString(encryptedAssertion);
|
|
114
|
-
return doc.documentElement
|
|
115
|
-
.getElementsByTagName('xenc:EncryptedData')[0];
|
|
116
|
-
};
|
package/test/utils.tests.js
DELETED
|
@@ -1,63 +0,0 @@
|
|
|
1
|
-
const assert = require("assert"),
|
|
2
|
-
utils = require("../lib/utils");
|
|
3
|
-
const fs = require("fs");
|
|
4
|
-
const {createPublicKey} = require('crypto')
|
|
5
|
-
|
|
6
|
-
describe("pemToCert", function () {
|
|
7
|
-
it("should not throw when the cert is invalid", function () {
|
|
8
|
-
var cert = utils.pemToCert('abc');
|
|
9
|
-
assert.ok(!cert);
|
|
10
|
-
});
|
|
11
|
-
});
|
|
12
|
-
|
|
13
|
-
describe("fixPemFormatting", () => {
|
|
14
|
-
it("returns the original when the original is not in PEM format", () => {
|
|
15
|
-
let originalCert = fs.readFileSync(__dirname + '/test-auth0.der');
|
|
16
|
-
let standardizedCert = utils.fixPemFormatting(originalCert);
|
|
17
|
-
assert.strictEqual(originalCert.compare(standardizedCert), 0);
|
|
18
|
-
})
|
|
19
|
-
|
|
20
|
-
it("handles already correctly formatted PEM content", () => {
|
|
21
|
-
let originalCert = fs.readFileSync(__dirname + '/test-auth0_rsa.pub');
|
|
22
|
-
let standardizedCert = utils.fixPemFormatting(originalCert);
|
|
23
|
-
assert.notStrictEqual(originalCert, standardizedCert);
|
|
24
|
-
assert.deepStrictEqual(createPublicKey(originalCert), createPublicKey(standardizedCert));
|
|
25
|
-
})
|
|
26
|
-
|
|
27
|
-
it("handles PEM content with extra data before the cert", () => {
|
|
28
|
-
let originalCert = Buffer.from(`data that should be ignored\n${fs.readFileSync(__dirname + '/test-auth0_rsa.pub').toString()}`)
|
|
29
|
-
let standardizedCert = utils.fixPemFormatting(originalCert);
|
|
30
|
-
assert.notStrictEqual(originalCert, standardizedCert);
|
|
31
|
-
assert.deepStrictEqual(createPublicKey(originalCert), createPublicKey(standardizedCert));
|
|
32
|
-
})
|
|
33
|
-
|
|
34
|
-
it("handles PEM content with extra data after the cert", () => {
|
|
35
|
-
let originalCert = Buffer.from(`${fs.readFileSync(__dirname + '/test-auth0_rsa.pub').toString()}\ndata that should be ignored`)
|
|
36
|
-
let standardizedCert = utils.fixPemFormatting(originalCert);
|
|
37
|
-
assert.notStrictEqual(originalCert, standardizedCert);
|
|
38
|
-
assert.deepStrictEqual(createPublicKey(originalCert), createPublicKey(standardizedCert));
|
|
39
|
-
})
|
|
40
|
-
|
|
41
|
-
it("handles incorrectly formatted PEM content", () => {
|
|
42
|
-
let originalCert = Buffer.from(fs.readFileSync(__dirname + '/test-auth0_rsa.pub').toString().replaceAll(/[\r\n]/g, ''));
|
|
43
|
-
let standardizedCert = utils.fixPemFormatting(originalCert);
|
|
44
|
-
assert.notStrictEqual(originalCert, standardizedCert);
|
|
45
|
-
let correctCert = createPublicKey(fs.readFileSync(__dirname + '/test-auth0_rsa.pub'))
|
|
46
|
-
assert.deepStrictEqual(correctCert, createPublicKey(standardizedCert));
|
|
47
|
-
})
|
|
48
|
-
|
|
49
|
-
it("handles already correctly formatted PEM chains", () => {
|
|
50
|
-
let originalCert = fs.readFileSync(__dirname + '/test-auth0-chain.pem');
|
|
51
|
-
let standardizedCert = utils.fixPemFormatting(originalCert);
|
|
52
|
-
assert.notStrictEqual(originalCert, standardizedCert);
|
|
53
|
-
assert.deepStrictEqual(createPublicKey(originalCert), createPublicKey(standardizedCert));
|
|
54
|
-
})
|
|
55
|
-
|
|
56
|
-
it("handles incorrectly formatted PEM chains", () => {
|
|
57
|
-
let originalCert = Buffer.from(fs.readFileSync(__dirname + '/test-auth0-chain.pem').toString().replaceAll(/[\r\n]/g, ''));
|
|
58
|
-
let standardizedCert = utils.fixPemFormatting(originalCert);
|
|
59
|
-
assert.notStrictEqual(originalCert, standardizedCert);
|
|
60
|
-
let correctCert = createPublicKey(fs.readFileSync(__dirname + '/test-auth0-chain.pem'))
|
|
61
|
-
assert.deepStrictEqual(correctCert, createPublicKey(standardizedCert));
|
|
62
|
-
})
|
|
63
|
-
})
|