Mysql
 sql >> база данни >  >> RDS >> Mysql

Използването на MySqlConnection (.NET) за SSL свързване с MySql-сървър се проваля от определени клиенти

Намерих решението сам, докато дисекция на TLS протокола. Оказва се, че клиентът, който не работи в примера по-горе, изпраща сертификата на моя клиент при ръкостискане; и клиента, които вършат работа не прави това. Очевидно криптирането така или иначе е установено (не съм продължил към TLS протокола) и вероятно по-нататък е извършен обмен на сертификати/размяна на ключове.

За да накарам връзката да работи, всичко, което трябваше да направя, беше да променя низа на връзката и да премахна всички ключове Certificate*=. По-специално "Местоположение на магазина за сертификати=Текущ потребител". Моят текущ, работещ MySql SSL низ за връзка е:

server=xxx.yyy.zzz.uuu;database=whopper;user=Username;password=Secret;Pooling=false;SSL Mode=Required;Keepalive=60

Освен това, като странична бележка, докато анализирах комуникацията, открих, че Tamos CommView върши по-добра работа от WireShark при прихващане и дисекция по време на VPN комуникации. Може би поради невъзможността на WinPCaps за дисекция на VPN пакети под Windows 7 x64. Също така TLS дисекторът в CommView е това, което наистина ми помогна да открия проблема с ръкостискането.

Също така, като втора странична забележка. Цялата SSL/TLS комуникация в Windows се обработва от DLL, наречен schannel.dll. Пълното влизане в системния EventLog за този dll може да бъде активирано чрез създаване на DWORD HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\EventLogging със стойността 7. Прочетете повече тук:http://support.microsoft.com/kb/260729 .

За да работи. Премахнете нещата.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL - SELECT ... WHERE id IN (..) - правилен ред

  2. Има ли алтернатива на IN с LIMIT?

  3. как да получите всички резултати от mysql tuple и да конвертирате в json

  4. JPA/Hibernate не може да създаде обект, наречен Order

  5. Грешка в MySQL - SQLSTATE [42000]:Синтактична грешка или нарушение на достъпа:1064