MySQL RSA hatası nasıl çözülür?

arda.nb01

Centipat
Katılım
24 Ocak 2024
Mesajlar
281
Daha fazla  
Cinsiyet
Erkek
Merhaba, bir kodum var kullanıcıyı kayıt edemiyorum. "MySQL. Data. Mysqlclient. Mysqlexception (0x80004005): Retrieval of the RSA public key is not enabled for insecure connections." hatası alıyorum. İşte ilgili:

C#:
private bool RegisterUserToDatabase(string username, string password, long id)
 {
 MySqlConnectionStringBuilder builder = new MySqlConnectionStringBuilder();
 builder.Server = "127.0.0.1";
 builder.UserID = "root";
 builder.Password = "arda6464";
 builder.SslMode = MySqlSslMode.Disabled;
 builder.Database = Configuration.Instance.DatabaseName;
 builder.CharacterSet = "utf8mb4";

 JsonConvert.DefaultSettings = () => new JsonSerializerSettings
 {
 DefaultValueHandling = DefaultValueHandling.Ignore,
 NullValueHandling = NullValueHandling.Ignore
 };

 string connectionString = builder.ToString();

 bool success = false;

 try.
 {
 using (MySqlConnection connection = new MySqlConnection(connectionString))
 {
 connection.Open();

 string query = "INSERT INTO users (username, password, id) VALUES (@username, @password, @id)";
 MySqlCommand cmd = new MySqlCommand(query, connection);
 cmd.Parameters.AddWithValue("@username", username);
 cmd.Parameters.AddWithValue("@password", password);
 cmd.Parameters.AddWithValue("@id", id);

 int rowsAffected = cmd.ExecuteNonQuery();

 if (rowsAffected > 0)
 {
 success = true;
 }
 }
 }
 catch (Exception ex)
 {
 Console.WriteLine(ex);
 }

 return success;

Tam hata:

Kod:
MySql.Data.MySqlClient.MySqlException (0x80004005): Retrieval of the RSA public key is not enabled for insecure connections.
 at MySql.Data.MySqlClient.Authentication.CachingSha2AuthenticationPlugin.GeneratePassword()
 at MySql.Data.MySqlClient.Authentication.CachingSha2AuthenticationPlugin.MoreData(Byte[] data)
 at MySql.Data.MySqlClient.Authentication.MySqlAuthenticationPlugin.ContinueAuthentication(Byte[] data)
 at MySql.Data.MySqlClient.Authentication.MySqlAuthenticationPlugin.Authenticate(Boolean reset)
 at MySql.Data.MySqlClient.NativeDriver.Authenticate(String authMethod, Boolean reset)
 at MySql.Data.MySqlClient.NativeDriver.Open()
 at MySql.Data.MySqlClient.Driver.Open()
 at MySql.Data.MySqlClient.Driver.Create(MySqlConnectionStringBuilder settings)
 at MySql.Data.MySqlClient.MySqlPool.CreateNewPooledConnection()
 at MySql.Data.MySqlClient.MySqlPool.GetPooledConnection()
 at MySql.Data.MySqlClient.MySqlPool.TryToGetDriver()
 at MySql.Data.MySqlClient.MySqlPool.GetConnection()
 at MySql.Data.MySqlClient.MySqlConnection.Open()
 at Supercell.Laser.Server.Message.MessageManager.CheckUserExists(String username, Int64 id) in C:\Users\Administrator\Desktop\talemidirnedir\Tale_Source\TBV28\Supercell.Laser.Server\Message\MessageManager.cs:line 3648
 
Son düzenleyen: Moderatör:
Bu siteyi kullanmak için çerezler gereklidir. Siteyi kullanmaya devam etmek için çerezleri kabul etmelisiniz. Daha Fazlasını Öğren.…