239 lines
23 KiB
Plaintext
239 lines
23 KiB
Plaintext
18:32 11.05.2018
|
||
Метаданные:
|
||
<md:EntityDescriptor xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata" ID="https:__vdi-smishchuk.dtln.local_mms_saml_metadata.cfm" entityID="https://vdi-smishchuk.dtln.local/mms/saml/metadata.cfm" validUntil="2018-05-13T15:31:08Z" cacheDuration="PT604800S">
|
||
<md:SPSSODescriptor AuthnRequestsSigned="true" WantAssertionsSigned="true" protocolSupportEnumeration="urn:oasis:names:tc:SAML:2.0:protocol">
|
||
<md:KeyDescriptor use="signing">
|
||
<ds:KeyInfo xmlns:ds="http://www.w3.org/2000/09/xmldsig#">
|
||
<ds:X509Data>
|
||
<ds:X509Certificate>
|
||
MIIDszCCApugAwIBAgIEZ+Y5QzANBgkqhkiG9w0BAQsFADCBiTELMAkGA1UEBhMCUlUxDzANBgNVBAcTBk1vc2NvdzEVMBMGA1UEChMMRGF0YWxpbmUgTExDMSEwHwYDVQQLExh2ZGktc21pc2hjaHVrLmR0bG4ubG9jYWwxLzAtBgNVBAMTJnZkaS1zbWlzaGNodWsuZHRsbi5sb2NhbCBTQU1MIGtleSBwYWlyMB4XDTE4MDUxMTEwMzc1NloXDTI4MDUxMTEwMzc1NlowgYkxCzAJBgNVBAYTAlJVMQ8wDQYDVQQHEwZNb3Njb3cxFTATBgNVBAoTDERhdGFsaW5lIExMQzEhMB8GA1UECxMYdmRpLXNtaXNoY2h1ay5kdGxuLmxvY2FsMS8wLQYDVQQDEyZ2ZGktc21pc2hjaHVrLmR0bG4ubG9jYWwgU0FNTCBrZXkgcGFpcjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAIi2IftGa1xi6KmhojTi/gSbRFfZpFyQw1V9YhMo4PgzsJz5tKKPlK/TPJX+P8Gu2OOYlkH2zjjYM9rCmNrdnViVqnlKk0E6cUBeQoKZxGN9GmjHvCONsScLxGMpho+YdNbFAga/OiK3myJeNSGc+tKkyQGUTrXQAK4ZvR0bUy/SkfFjjRA9RJLdBZlA6l1DSht1c6HMV3/tRdWxfwszQ+MK45eFHs6NmSjb6VESFXE6fIsa+JKLSOyjPVaNJeYp2fHSEvA6/mxQYl4AxzGilV7acaFgP8JWdBGuOM+ruyuAH3eAXqVvV/9HiYNPflL5VxKT0/rG50+qpKxTACwgX/kCAwEAAaMhMB8wHQYDVR0OBBYEFLF3U+R9xuCkVjkBpLZO+evGgjS+MA0GCSqGSIb3DQEBCwUAA4IBAQAnTSgsmf1JdT3TVZcCODMkj0UgvhNt9tFTCcBsdYnuMmATZ1ktGaGc3iDd5qynopC55u7VzkyH8S+RXqf5rw6OSTmEWgoNYoKXQXkE0U/LUI0Zurc/OciT6KqOprgqr0JEtV+htaJpAhL1iQ0q+Yi6dmlwRD1c8LOFy5dEwwho4acrDjI6WUNN/eedO9/SJWqpC5ZbzreeUUfcO3vJcRHNY++o8TmK6trJU/DR18G8pBzVPRpjJw9YvzOlw106gk1Vyp0J5OIHB0jpFCHzGYBwBB2XgAso6VgTIiJ2Gd08jSuq+UjvClB9mgA2+vG8jiHFaf8DKSqWjOfxie96S9Ff
|
||
</ds:X509Certificate>
|
||
</ds:X509Data>
|
||
</ds:KeyInfo>
|
||
</md:KeyDescriptor>
|
||
<md:KeyDescriptor use="encryption">
|
||
<ds:KeyInfo xmlns:ds="http://www.w3.org/2000/09/xmldsig#">
|
||
<ds:X509Data>
|
||
<ds:X509Certificate>
|
||
MIIDszCCApugAwIBAgIEZ+Y5QzANBgkqhkiG9w0BAQsFADCBiTELMAkGA1UEBhMCUlUxDzANBgNVBAcTBk1vc2NvdzEVMBMGA1UEChMMRGF0YWxpbmUgTExDMSEwHwYDVQQLExh2ZGktc21pc2hjaHVrLmR0bG4ubG9jYWwxLzAtBgNVBAMTJnZkaS1zbWlzaGNodWsuZHRsbi5sb2NhbCBTQU1MIGtleSBwYWlyMB4XDTE4MDUxMTEwMzc1NloXDTI4MDUxMTEwMzc1NlowgYkxCzAJBgNVBAYTAlJVMQ8wDQYDVQQHEwZNb3Njb3cxFTATBgNVBAoTDERhdGFsaW5lIExMQzEhMB8GA1UECxMYdmRpLXNtaXNoY2h1ay5kdGxuLmxvY2FsMS8wLQYDVQQDEyZ2ZGktc21pc2hjaHVrLmR0bG4ubG9jYWwgU0FNTCBrZXkgcGFpcjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAIi2IftGa1xi6KmhojTi/gSbRFfZpFyQw1V9YhMo4PgzsJz5tKKPlK/TPJX+P8Gu2OOYlkH2zjjYM9rCmNrdnViVqnlKk0E6cUBeQoKZxGN9GmjHvCONsScLxGMpho+YdNbFAga/OiK3myJeNSGc+tKkyQGUTrXQAK4ZvR0bUy/SkfFjjRA9RJLdBZlA6l1DSht1c6HMV3/tRdWxfwszQ+MK45eFHs6NmSjb6VESFXE6fIsa+JKLSOyjPVaNJeYp2fHSEvA6/mxQYl4AxzGilV7acaFgP8JWdBGuOM+ruyuAH3eAXqVvV/9HiYNPflL5VxKT0/rG50+qpKxTACwgX/kCAwEAAaMhMB8wHQYDVR0OBBYEFLF3U+R9xuCkVjkBpLZO+evGgjS+MA0GCSqGSIb3DQEBCwUAA4IBAQAnTSgsmf1JdT3TVZcCODMkj0UgvhNt9tFTCcBsdYnuMmATZ1ktGaGc3iDd5qynopC55u7VzkyH8S+RXqf5rw6OSTmEWgoNYoKXQXkE0U/LUI0Zurc/OciT6KqOprgqr0JEtV+htaJpAhL1iQ0q+Yi6dmlwRD1c8LOFy5dEwwho4acrDjI6WUNN/eedO9/SJWqpC5ZbzreeUUfcO3vJcRHNY++o8TmK6trJU/DR18G8pBzVPRpjJw9YvzOlw106gk1Vyp0J5OIHB0jpFCHzGYBwBB2XgAso6VgTIiJ2Gd08jSuq+UjvClB9mgA2+vG8jiHFaf8DKSqWjOfxie96S9Ff
|
||
</ds:X509Certificate>
|
||
</ds:X509Data>
|
||
</ds:KeyInfo>
|
||
</md:KeyDescriptor>
|
||
<md:SingleLogoutService Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST" Location="https://vdi-smishchuk.dtln.local/mms/saml/logout.cfm"/>
|
||
<md:SingleLogoutService Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Redirect" Location="https://vdi-smishchuk.dtln.local/mms/saml/logout.cfm"/>
|
||
<md:NameIDFormat>
|
||
urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress
|
||
</md:NameIDFormat>
|
||
<md:NameIDFormat>
|
||
urn:oasis:names:tc:SAML:2.0:nameid-format:transient
|
||
</md:NameIDFormat>
|
||
<md:NameIDFormat>
|
||
urn:oasis:names:tc:SAML:2.0:nameid-format:persistent
|
||
</md:NameIDFormat>
|
||
<md:NameIDFormat>
|
||
urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified
|
||
</md:NameIDFormat>
|
||
<md:NameIDFormat>
|
||
urn:oasis:names:tc:SAML:1.1:nameid-format:X509SubjectName
|
||
</md:NameIDFormat>
|
||
<md:AssertionConsumerService Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST" Location="https://vdi-smishchuk.dtln.local/mms/saml/sso.cfm" index="0" isDefault="true"/>
|
||
<md:AssertionConsumerService xmlns:hoksso="urn:oasis:names:tc:SAML:2.0:profiles:holder-of-key:SSO:browser" Binding="urn:oasis:names:tc:SAML:2.0:profiles:holder-of-key:SSO:browser" Location="https://vdi-smishchuk.dtln.local/mms/saml/hoksso.cfm" hoksso:ProtocolBinding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST" index="1"/>
|
||
</md:SPSSODescriptor>
|
||
</md:EntityDescriptor>
|
||
|
||
Респонс:
|
||
<samlp:Response ID="_906304e3-997d-45bc-8796-d25af0abc424" Version="2.0" IssueInstant="2018-05-11T15:28:37.941Z" Destination="https://vdi-smishchuk.dtln.local/mms/saml/sso.cfm" Consent="urn:oasis:names:tc:SAML:2.0:consent:unspecified" InResponseTo="id2A4900FD-BAB2-4182-95027AF283B0311A" xmlns:samlp="urn:oasis:names:tc:SAML:2.0:protocol">
|
||
<Issuer xmlns="urn:oasis:names:tc:SAML:2.0:assertion">http://adfs.dtln.local/adfs/services/trust</Issuer>
|
||
<ds:Signature xmlns:ds="http://www.w3.org/2000/09/xmldsig#">
|
||
<ds:SignedInfo>
|
||
<ds:CanonicalizationMethod Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#" />
|
||
<ds:SignatureMethod Algorithm="http://www.w3.org/2001/04/xmldsig-more#rsa-sha256" />
|
||
<ds:Reference URI="#_906304e3-997d-45bc-8796-d25af0abc424">
|
||
<ds:Transforms>
|
||
<ds:Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature" />
|
||
<ds:Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#" />
|
||
</ds:Transforms>
|
||
<ds:DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256" />
|
||
<ds:DigestValue>pMECHm07laxWFPMkrmXUlWmNa8NJcoVtq6pNxqLOOHk=</ds:DigestValue>
|
||
</ds:Reference>
|
||
</ds:SignedInfo>
|
||
<ds:SignatureValue>eDuI0bjq0iii5nm0lj8hUrAOm+4Vnkm5a6PlK1crdFYz5bf6TpQlqnCUbXVDByDvBwdJRvaGYg2MDhRcgOcjADRS4vLdzZN3lDBfVEZ8YGwkiK0lrVjsh8EdkEUl+3mHWbGgLhCNRg0auJEXwlvp7goBqeTtJ9/jcNg9T6RWspUZ6b8De07B02KNi54NpdeFRlZ3JUSRODepgDwO6eLnCw/tGGFpOwKL4CrbT2E+UTDygIylAYyoh1YdkIZQm+My3tWDI7LQh2uwaFU9lZk+t/KqoIQwngnoCnOlmPijXLFZ8vSsdcd62PTy8DTIGsziiochZ+Fb3bOsf6mLF5b0BQ==</ds:SignatureValue>
|
||
<KeyInfo xmlns="http://www.w3.org/2000/09/xmldsig#">
|
||
<ds:X509Data>
|
||
<ds:X509Certificate>MIIC2jCCAcKgAwIBAgIQRkugSLS1sq1JtGCxzdsvDTANBgkqhkiG9w0BAQsFADApMScwJQYDVQQDEx5BREZTIFNpZ25pbmcgLSBhZGZzLmR0bG4ubG9jYWwwHhcNMTgwNDIyMDk1MzIzWhcNMTkwNDIyMDk1MzIzWjApMScwJQYDVQQDEx5BREZTIFNpZ25pbmcgLSBhZGZzLmR0bG4ubG9jYWwwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCtVjQVaHUIurxJQVZYze5ERKvVrGoTc+5qZZ7a72IAgw2WVU/KxLGQXn2Yxk1f2Gs4nsG/4iwLeLyIZUPLWqCylURGzQLqv0jy+G0HxXE0kDkMO97s8n7K0vzd58cY6nQofq8kN/IujXzV++KpDRD1hpX3znBegCVgb6RCuozeG8u5eT3LctYQWv/8y5VZuY8pKsGWT3X/LM8f//XBVgYfzMvCrx+7muHC09MHPfrcZ6zacXZaTyT7urVVqQ5uTjiFaQDirRSVeBfGsRpqAMuTTHSDoVVGyNHtqMeIAHbOYyBnOQRaFNY9yHnkJVIN2FMgZ8oCs6LwYxbWUkyNvA53AgMBAAEwDQYJKoZIhvcNAQELBQADggEBAIQm2zh/73Dba69c+07vbhIDbnBuM1QBjcrTFC4m5NbPvLD/yh8mW6pipYsj5b9SZReJxjlCrvAwqNReafN44BUARD0GzUv2x5sRuAoFpx8MbUzYEdf2HJe+OOPwfeNZ8fUa6v986kslYHFXfEfS1/rB54EFNcTU0LOwG/FR6kfV0PvpzAg4KEl3BDv9rQVOGMu6cPvHFm66HpTnfwKXRe1qMiQlaeeATjeiDzdTBFBhZoLvUPymM22iSKRT4u3YQIIEXT3OiuXuJM9h66CYNvCTkQF0vRSnEpCjNZfsNjknimNIX2dz6IeXpzYQCPV4PdNM94jTInZ+JWwFzFWANjo=</ds:X509Certificate>
|
||
</ds:X509Data>
|
||
</KeyInfo>
|
||
</ds:Signature>
|
||
<samlp:Status>
|
||
<samlp:StatusCode Value="urn:oasis:names:tc:SAML:2.0:status:Responder" />
|
||
</samlp:Status>
|
||
</samlp:Response>
|
||
|
||
Потому что обращался к себе по локалхосту или короткому имени, а надо по полному имени vdi-smishchuk.dtln.local (делать, что ли, редирект? или пробивать имя своего хоста в настройках)
|
||
13:22 14.05.2018
|
||
С полным именем работает, но Ассершен не возвращает
|
||
Логаут полный не отработал, простой отработал, но ассершен все равно не.
|
||
|
||
Ругается на отсутствие подписи, хотя в метаданных декларирует, что подпись будет AuthnRequestsSigned="true"
|
||
Теперь алгоритм подписи не тот. У меня SHA1, а он ожидает SHA256
|
||
ADFS metadata: https://adfs.dtln.local/FederationMetadata/2007-06/FederationMetadata.xml
|
||
там есть упоминание sha256, но только про себя, про SP не говорит
|
||
<ds:SignatureMethod Algorithm="http://www.w3.org/2001/04/xmldsig-more#rsa-sha256"/>
|
||
<ds:DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"/>
|
||
|
||
Не в первый раз возникает:
|
||
file or directory }R<>j<EFBFBD>0<10><15><>,yw<79>ch<63><02> 9<>RYnDm<44>x<EFBFBD><78>ϯ
|
||
<EFBFBD>G<>7o<15><>n`<07>i<EFBFBD>}<7D>0 <20><><EFBFBD><1B><><EFBFBD><EFBFBD><EFBFBD>OI<4F>/m<><6D>8<EFBFBD>2|<7C>i<EFBFBD>C<EFBFBD><43>0<EFBFBD>D<EFBFBD>yg9<67>2z<32>B<EFBFBD>"o<0F><>^<5E><><EFBFBD>NO4<4F>1Mp<10><><EFBFBD><EFBFBD><11>?<3F><>w<EFBFBD><77><12><><EFBFBD>.̫<>0Bn<42><6E><EFBFBD>+<2B><><EFBFBD><EFBFBD><EFBFBD><1B>i<EFBFBD>3<EFBFBD>w<EFBFBD><77><EFBFBD>>I<><49><EFBFBD>E<EFBFBD>#<23><><EFBFBD><EFBFBD>*n<><6E>pP<70>4<EFBFBD>%0+<2B><><EFBFBD><EFBFBD><EFBFBD>&CL<43> <20>4R<>V<EFBFBD>f2<66><EFBFBD><7F><EFBFBD><06><><EFBFBD><EFBFBD>zG+<2B>3<1A>)h<><68>J<EFBFBD>U<EFBFBD><55><EFBFBD>p<EFBFBD><12><><EFBFBD><EFBFBD><EFBFBD>4<EFBFBD><34><EFBFBD>ǒ<EFBFBD>h<EFBFBD><11>Ce<43><65>1<EFBFBD><31><EFBFBD>$ ǹ T<>mLe𦅿<1D>3<EFBFBD>@7%$;:<3A>Y<05>b=<3D><>r<EFBFBD><72>~<7E>L#<23>3<EFBFBD>|l4;:1<>䑲 <20>[<5B>?<3F><> not exist
|
||
|
||
Очевидно, райло думает, что я даю ему имя файла
|
||
Говорят - потому что не может распарсить. Его можно понять
|
||
Теперь новая измена при логине
|
||
<samlp:Status>
|
||
<samlp:StatusCode Value="urn:oasis:names:tc:SAML:2.0:status:Responder" />
|
||
</samlp:Status>
|
||
*** наверно, неплохо проверять статус?
|
||
<samlp:Status>
|
||
<samlp:StatusCode Value="urn:oasis:names:tc:SAML:2.0:status:Success" />
|
||
</samlp:Status>
|
||
в незашифрованной части документа
|
||
На Logout приходит то SAML_request, то SAML_Request, то SAML_Response
|
||
Оказывается, она присылает то постом, то гетом. Вероятно, от этого зависит и кодирование!
|
||
Эта прекрасная тулза https://rnd.feide.no/simplesaml/module.php/saml2debug/debug.php прекрасно декодирует (ссылка с https://www.experts-exchange.com/questions/28521347/Decipher-SAML-Response-From-ADFS-Server-using-ColdFusion.html)
|
||
|
||
Попробовал без успеха: https://gist.github.com/guillaumemolter/3e210855881ec5f09294
|
||
18:19 14.05.2018
|
||
Думаю, что надо на Редирект давать Ассершен логаута
|
||
17:14 15.05.2018
|
||
SAML:2.0:status:Responder
|
||
Теперь не могу законнектиться. Такое чувство, что зря поменял на SHA256
|
||
https://social.technet.microsoft.com/Forums/en-US/4acc04b7-aac7-43e9-ba50-9570503045f9/msis0038-saml-message-has-wrong-signature?forum=windowsazureaditpro
|
||
Попробовал SHA1 то же самое ADFS:MSIS0038: SAML Message has wrong signature
|
||
|
||
10:24 16.05.2018
|
||
Если не подписывать запрос (обратное было отражено в метаданных AuthnRequestsSigned="true") то вроде все работает
|
||
Вот, теперь не могу отлогиниться
|
||
|
||
Трассирую хромом
|
||
Оказывается, при простом логауте получаю такую телегу
|
||
SAMLRequest:
|
||
<?xml version="1.0" encoding="UTF-8"?>
|
||
<samlp:LogoutRequest xmlns:samlp="urn:oasis:names:tc:SAML:2.0:protocol" Consent="urn:oasis:names:tc:SAML:2.0:consent:unspecified" Destination="https://vdi-smishchuk.dtln.local/mms/saml/logout.cfm" ID="_a9c2be02-8823-4d6d-b73f-5f06906af60d" IssueInstant="2018-05-16T09:15:51.899Z" NotOnOrAfter="2018-05-16T09:20:51.899Z" Version="2.0">
|
||
<Issuer xmlns="urn:oasis:names:tc:SAML:2.0:assertion">http://adfs.dtln.local/adfs/services/trust</Issuer>
|
||
<NameID xmlns="urn:oasis:names:tc:SAML:2.0:assertion">smishchuk</NameID>
|
||
<samlp:SessionIndex>_0a607a2f-c124-4b0f-9245-c476a24a9344</samlp:SessionIndex>
|
||
<samlp:SessionIndex>_e79a1300-00c3-4426-a64f-879c43de5a94</samlp:SessionIndex>
|
||
<samlp:SessionIndex>_7f1dc8d5-9b0c-4f8b-b59c-1a1905609cd3</samlp:SessionIndex>
|
||
</samlp:LogoutRequest>
|
||
|
||
Потом сбросилось.
|
||
Похоже, при каждом логине ИдП дает новый индекс сессии, даже не справшивая пароля
|
||
|
||
13:40 06.06.2018
|
||
System.NotSupportedException: MSIS0023: SAML signature type 'http://www.w3.org/2000/09/xmldsig#rsa-sha256' is not supported by the HTTP Redirect binding serializer at this time.
|
||
Сделать постом?
|
||
12:15 07.06.2018
|
||
был неправильный урл криптоалгоритма правильно: http://www.w3.org/2001/04/xmldsig-more#rsa-sha256
|
||
Почти хорошо, только возвращает в первый раз
|
||
<samlp:StatusCode Value="urn:oasis:names:tc:SAML:2.0:status:Responder" />
|
||
Если повторить запрос - редиректит куда надо и присылает группы
|
||
Попробуем трассировать https://addons.mozilla.org/en-US/firefox/addon/saml-tracer/
|
||
11:04 08.06.2018
|
||
ошибка в метаданных
|
||
исправил
|
||
11:07 08.06.2018
|
||
|
||
Saml
|
||
https://vdi-smishchuk.dtln.local/mms/saml/metadata.cfm
|
||
Microsoft.IdentityModel.Protocols.XmlSignature.SignatureVerificationFailedException: MSIS0038: SAML Message has wrong signature. Issuer: 'https://vdi-smishchuk.dtln.local/mms/saml/metadata.cfm'.
|
||
|
||
Нашел еще 1 параметр в урле, которого у меня нет RelayState: https://infong-dev.dtln.local/sso/login
|
||
10:43 09.06.2018
|
||
&client-request-id=18ee542a-04ee-4fb7-ba19-0080000000f9
|
||
|
||
Вижу разночтение
|
||
https://adfs.dtln.local/adfs/ls/?SAMLRequest=nVNdb9MwFH3upP0Hy%2B%2F5ateus9ZOWUpFpQFRm%2FHAm3FcauGP4Ot03b%2FHcShECCpEXqL4nnvuuec49w8nJdGRWxBGL3AWpxhxzUwt9JcFfq7W0Rw%2FLK%2BvUPfcA1Vy3JC8dQe95d9aDu76aoQ8hQbSFxe4tZoYCgKIpooDcYzs8ndPZBynpLHGGWYk%2Fq3tchcF4NZ5gRh1fZvVAos6zWZFPh5n0Twv7qKb2U0RPb6Z3k1ui9ntJFuvZ%2Bt5D%2F94Xs5ThbmlNUdRc%2FveD1rgXYmc3yNUNgAt32hwVDuPT7N5lM6idF5lUzKekkn6KcBWHi80dYH14FwDJElovYe4dlLH0jAqw3ciITmPDHs%2FCt07e2ndzz0IyNuqKqPyw64KHPnZhcJoaBW3O26PgvHn7dMvFcdaRKAEHNih%2FTqUoxQkndUJgInZXmE0Qt6eLtmO3Ec8GvX5kuCC%2FZ94lv8uQ3FHa%2Bpop%2BU%2BGQ4eSGlIl9FmVRop2CtaG6uo%2B7uYLM7CiaijfYCSVkPDmdgLXmOUS2leCsup87E723KcLNFw2I8rzetwwb3Njp8cKoxqqBXQhc1PlDncd53tGoIL6c3Y8v3yol%2BMsA7nj0v%2FejG27u4HZ35yZamXbKw7e%2FJH9iA6uaS6g6CfkOEP6yvfAQAAAAAAAAAAAAA%3D&SigAlg=http%3A%2F%2Fwww%2Ew3%2Eorg%2F2001%2F04%2Fxmldsig%2Dmore%23rsa%2Dsha256&RelayState=https%3A%2F%2Fvdi%2Dsmishchuk%2Edtln%2Elocal%2Fmms%2Fsaml%2Fsso%2Ecfm&Signature=OKVrDbguCzLO0qzFmzNnGpWymCcu97nMyiYe7r1rhQVRgofNYOA3d0bPpjwMGn%2Bcz1WefeX7s%2BvZABXwunwJEC99Tqy9iYhqDpiNYze8rwFbYGnRJUOJVBCtCX2NUYthOlOzVlb%2B1B31NvW70jhBonr3i7syD5Lg4aJpHqaTfAh7ayPdABTlI%2FKjZd2BsHxKH%2F3gh7zQ%2B3VS2tJ2NEUGDwNeJwauG7mxDL4WNZvBIb%2FBQ4UvllfZ3A5rQNwh5c%2BB7qu16%2FAy3j27LpC12xrOPITJuFueoZEa%2BjAs5QjU2Pj%2BndhlT0MH5Az2dqKPI6if%2FTTFYBZleycgRzIwMOkD8g%3D%3D
|
||
|
||
https://adfs.dtln.local/adfs/ls/?SAMLRequest=nVNdb9MwFH3upP0Hy%2B%2F5ateus9ZOWUpFpQFRm%2FHAm3FcauGP4Ot03b%2FHcShECCpEXqL4nnvuuec49w8nJdGRWxBGL3AWpxhxzUwt9JcFfq7W0Rw%2FLK%2BvUPfcA1Vy3JC8dQe95d9aDu76aoQ8hQbSFxe4tZoYCgKIpooDcYzs8ndPZBynpLHGGWYk%2Fq3tchcF4NZ5gRh1fZvVAos6zWZFPh5n0Twv7qKb2U0RPb6Z3k1ui9ntJFuvZ%2Bt5D%2F94Xs5ThbmlNUdRc%2FveD1rgXYmc3yNUNgAt32hwVDuPT7N5lM6idF5lUzKekkn6KcBWHi80dYH14FwDJElovYe4dlLH0jAqw3ciITmPDHs%2FCt07e2ndzz0IyNuqKqPyw64KHPnZhcJoaBW3O26PgvHn7dMvFcdaRKAEHNih%2FTqUoxQkndUJgInZXmE0Qt6eLtmO3Ec8GvX5kuCC%2FZ94lv8uQ3FHa%2Bpop%2BU%2BGQ4eSGlIl9FmVRop2CtaG6uo%2B7uYLM7CiaijfYCSVkPDmdgLXmOUS2leCsup87E723KcLNFw2I8rzetwwb3Njp8cKoxqqBXQhc1PlDncd53tGoIL6c3Y8v3yol%2BMsA7nj0v%2FejG27u4HZ35yZamXbKw7e%2FJH9iA6uaS6g6CfkOEP6yvfAQAAAAAAAAAAAAA%3D&SigAlg=http:%2F%2Fwww.w3.org%2F2001%2F04%2Fxmldsig-more%23rsa-sha256&RelayState=https:%2F%2Fvdi-smishchuk.dtln.local%2Fmms%2Fsaml%2Fsso.cfm&Signature=OKVrDbguCzLO0qzFmzNnGpWymCcu97nMyiYe7r1rhQVRgofNYOA3d0bPpjwMGn%2Bcz1WefeX7s%2BvZABXwunwJEC99Tqy9iYhqDpiNYze8rwFbYGnRJUOJVBCtCX2NUYthOlOzVlb%2B1B31NvW70jhBonr3i7syD5Lg4aJpHqaTfAh7ayPdABTlI%2FKjZd2BsHxKH%2F3gh7zQ%2B3VS2tJ2NEUGDwNeJwauG7mxDL4WNZvBIb%2FBQ4UvllfZ3A5rQNwh5c%2BB7qu16%2FAy3j27LpC12xrOPITJuFueoZEa%2BjAs5QjU2Pj%2BndhlT0MH5Az2dqKPI6if%2FTTFYBZleycgRzIwMOkD8g%3D%3D&client-request-id=bdb01962-e04c-4505-6006-0080000000c6
|
||
|
||
А как в работающем варианте
|
||
https://adfs.dtln.local/adfs/ls/?SAMLRequest=fVNNj9owEL3vr4hyD0mgQNaCSBT6gUQhgrSHXipjT1hLjp16HJb997WzbGGlNrlYnnnvzbzxZIa0lg1ZtPZJ7eF3C2gfguBSS4WkS83D1iiiKQokitaAxDJyWHzbkOEgIY3RVjMtw3ekfg5FBGOFVp60Xs3D3fbTZvdlvf2VJSw78nSYTbLx5DgdfoAxJFM%2BrhJ49AlGj%2BPpaJR64g8w6DTmoZP09yAojD4LDmbrKs7DQxFYZ6argdjCWqGlyjp8kmZRMomSrEymZJSR9PGnR60cWihqO9EnaxskcUx5hQNupRpIzajs7rHE2BOKq%2FePQnGhTv2mj68gJF%2FLsoiK3aH0Eou3USy1wrYGcwBzFgy%2B7ze3HoSqtDpFHM73nSDqWOrTCXiYd%2FZnfvKk82ryXu4svofeyA3xo1uvCi0Fe%2Bni%2FvusTU3t%2F%2B2lg7SLCB5VHZS0ChtgohKuub8yCyn189IAte51rGkhDOJ3xa%2FrB7xbRjcRCxcbLHXdUCPQvwpcKLNXuzfL9%2FCldNu1hyrvXUBGmMe5cOGOZ224f0tgrnZpqGteG3sd0j%2FFX7uOe9rOH97S939W%2Fgc%3D&RelayState=https%3A%2F%2Finfong-dev.dtln.local%2Fsso%2Flogin&Signature=AMgdc0Doiznf7v5240ZHq6pqw5ms1C%2FFb2cxRv%2Ft%2F85HgzhsShy3F4H15%2BvT0kbscrLF%2B6EEVqHY0tVI%2BYZH1IOfryHU4b7e9DdsKRKUusJ9b3GK%2BiQeyt5lIB3VPZyWQ6bndMJ353R4AhBkYF4%2B0Ilk3fHYsOhATPl8yGNtMn9PrBQ9N5Dh320fcrPO19v3Qv%2B8Hbu1Z2kw2qRyI4E9rPuTnn1n3q0ybBHl1OtW23EMlnW7Grp5Gfvf3EcLd68FdAT6SPlaBIeFVZmtQ92eugYxXEgMFD241d8P1iVDyeJI3SBUX%2FcuyaBVQ%2BT1Y4G6dLIh7MfUDh2V55xAHijZBg%3D%3D&SigAlg=http%3A%2F%2Fwww.w3.org%2F2001%2F04%2Fxmldsig-more%23rsa-sha256
|
||
|
||
https://adfs.dtln.local/adfs/ls/?SAMLRequest=fVNNj9owEL3vr4hyD0mgQNaCSBT6gUQhgrSHXipjT1hLjp16HJb997WzbGGlNrlYnnnvzbzxZIa0lg1ZtPZJ7eF3C2gfguBSS4WkS83D1iiiKQokitaAxDJyWHzbkOEgIY3RVjMtw3ekfg5FBGOFVp60Xs3D3fbTZvdlvf2VJSw78nSYTbLx5DgdfoAxJFM%2BrhJ49AlGj%2BPpaJR64g8w6DTmoZP09yAojD4LDmbrKs7DQxFYZ6argdjCWqGlyjp8kmZRMomSrEymZJSR9PGnR60cWihqO9EnaxskcUx5hQNupRpIzajs7rHE2BOKq%2FePQnGhTv2mj68gJF%2FLsoiK3aH0Eou3USy1wrYGcwBzFgy%2B7ze3HoSqtDpFHM73nSDqWOrTCXiYd%2FZnfvKk82ryXu4svofeyA3xo1uvCi0Fe%2Bni%2FvusTU3t%2F%2B2lg7SLCB5VHZS0ChtgohKuub8yCyn189IAte51rGkhDOJ3xa%2FrB7xbRjcRCxcbLHXdUCPQvwpcKLNXuzfL9%2FCldNu1hyrvXUBGmMe5cOGOZ224f0tgrnZpqGteG3sd0j%2FFX7uOe9rOH97S939W%2Fgc%3D&RelayState=https%3A%2F%2Finfong-dev.dtln.local%2Fsso%2Flogin&Signature=AMgdc0Doiznf7v5240ZHq6pqw5ms1C%2FFb2cxRv%2Ft%2F85HgzhsShy3F4H15%2BvT0kbscrLF%2B6EEVqHY0tVI%2BYZH1IOfryHU4b7e9DdsKRKUusJ9b3GK%2BiQeyt5lIB3VPZyWQ6bndMJ353R4AhBkYF4%2B0Ilk3fHYsOhATPl8yGNtMn9PrBQ9N5Dh320fcrPO19v3Qv%2B8Hbu1Z2kw2qRyI4E9rPuTnn1n3q0ybBHl1OtW23EMlnW7Grp5Gfvf3EcLd68FdAT6SPlaBIeFVZmtQ92eugYxXEgMFD241d8P1iVDyeJI3SBUX%2FcuyaBVQ%2BT1Y4G6dLIh7MfUDh2V55xAHijZBg%3D%3D&SigAlg=http%3A%2F%2Fwww.w3.org%2F2001%2F04%2Fxmldsig-more%23rsa-sha256&client-request-id=18ee542a-04ee-4fb7-ba19-0080000000f9
|
||
|
||
Теперь мы видим удивительную вещь, у меня дефис кодируется UrlEncodedFormat, а у них нет. После раундтрипа мои параметры имеют уже другие значения, %2D преобразовался обратно в минус. То ли это стандарт, то ли сервер это делает, то ли клиент.
|
||
А когда у меня SHA1, то в урле нету дефисов, и этот баг не проявляется
|
||
Полагаю, то же самое будет, когда я буду пользоваться сразу постом
|
||
|
||
Sic! https://www.bennadel.com/blog/2656-url-encoding-amazon-s3-resource-keys-for-pre-signed-urls-in-coldfusion.htm
|
||
reserved=;/?:@&=+$,
|
||
|
||
http://localhost/mms/saml/sso.cfm?mark=-_.!~*'()
|
||
http://localhost/mms/saml/sso.cfm?mark=%2D%5F%2E%21%7E%2A%27%28%29&mark=-_.!~*'()
|
||
14:56 09.06.2018
|
||
fixed...
|
||
А зачем мы используем HTTP POST binding? Чем редирект нас не радует?
|
||
А вот чем: HTTP 413, он ответ отправляет редиректом и он не помещается в урлу
|
||
Хочется понять, как пост попадает на мой сервер SP
|
||
|
||
Теперь не могу отлогиниться
|
||
<samlp:StatusCode Value="urn:oasis:names:tc:SAML:2.0:status:Requester"/>
|
||
|
||
13:08 13.06.2018
|
||
NotOnOrAfter не означает истечения сессии
|
||
adfs sessionNotOnOrAfter not supported?
|
||
https://aws.amazon.com/ru/blogs/security/enable-your-federated-users-to-work-in-the-aws-management-console-for-up-to-12-hours/
|
||
https://www.owasp.org/index.php/SAML_Security_Cheat_Sheet
|
||
|
||
13:20 19.06.2018
|
||
проверка подписи оказалась сложнее, чем я думал http://blog.tagworldwide.com/?p=19
|
||
https://stackoverflow.com/questions/26265727/unable-to-validate-saml-assertion-with-coldfusion
|
||
The Reference for URI #_abc42efe-bcaa-43dc-b1c3-3ac2d3c99d5e has no XMLSignatureInput
|
||
получилось
|
||
assertionArray = XMLSearch(SAMLResponseXml, "/*[name()='samlp:Response']/*[name()='EncryptedAssertion']/*[name()='Assertion']");
|
||
assertionElement = assertionArray[1];
|
||
assertionElement.setIdAttribute("ID",true); //sic!
|
||
|
||
16:22 27.03.2019
|
||
Добавил xmlsec-2.1.1.jar в railo/lib
|
||
Error
|
||
illegal key size
|
||
//see https://backstage.forgerock.com/knowledge/kb/article/a17171105
|
||
see https://myshittycode.com/2016/02/18/java-saml-illegal-key-size/
|
||
put local_policy.jar, US_export_policy.jar to railo\jdk\jre\lib\security, reboot railo
|
||
OK works
|
||
на Railo
|
||
|
||
10:08 02.04.2019 проблемы на Lucee Could not initialize class org.apache.xml.security.Init
|
||
Возможно, библиотека xmlsec конфликтует?
|
||
Caused by: java.lang.NoClassDefFoundError: Could not initialize class org.apache.xml.security.Init
|
||
Переименовать файл D:\lucee\tomcat\lib\xmlsec-2.1.1.jar при этом не дает
|
||
|
||
//Init = CreateObject("Java", "org.apache.xml.security.Init").Init().init();
|
||
ref = createObject("java", "org.apache.xml.security.Init");
|
||
// initialize if needed
|
||
if (!ref.isInitialized()) {
|
||
// find static method named "init" with no parameters
|
||
method = ref.getClass().getDeclaredMethod("init", []);
|
||
// invoke it via reflection
|
||
method.invoke(ref, javacast("null", ""));
|
||
}
|
||
- сложный способ инициализации оказался ничем не лучше простого
|
||
Если изменить имя класса
|
||
cannot load class through its string name, because no definition for the class with the specified name [org.apache.xml.security.Init1] could be found caused by (java.lang.ClassNotFoundException:org.apache.xml.security.Init1 not found by lucee.core [64];java.lang.ClassNotFoundException:org.apache.xml.security.Init1;)
|
||
|
||
https://stackoverflow.com/questions/30887240/exception-noclassdeffounderror-org-apache-xml-security-init ссылаются на логирование. И у меня при первом вызове ругань на slf4j
|
||
java.lang.ClassNotFoundException: org.slf4j.LoggerFactory
|
||
В D:\lucee\tomcat\lucee-server\bundles имеются slf4j.api-1.7.12.jar, slf4j.nop-1.7.12.jar,
|
||
но в райло slf4j-nop.jar slf4j-api-1.7.22.jar slf4j-api.jar
|
||
причем slf4j-api-1.7.22.jar новее (2016 год)
|
||
Попробовать обновиться? Current version: 5.2.9.31
|
||
5.3.1.102
|
||
не помогло
|
||
для опыта вовсе дизейблил
|
||
Кстати. Log4J not loaded (может, потому что slf4j дизейблил, никто и не грузит)
|
||
Ни фига, jar пересоздались
|
||
подложил в верхнюю либу файлы от Райло, перезапустил Люси - и вот, все взлетело. Теперь надо
|
||
|
||
|
||
|