632 Stimmen

"Die Zertifikatskette wurde von einer nicht vertrauenswürdigen Autorität ausgestellt" beim Verbinden mit der Datenbank im VM-Role von der Azure-Website.

Ich habe einen Fehler beim Verbinden mit meiner DB in der VM-Rolle (ich habe SQL VM-Rolle) von der Azure-Website. Beide VM-Rolle und Azure-Website sind in der West-Zone. Ich habe folgendes Problem:

SqlException (0x80131904): Es wurde eine Verbindung mit dem Server erfolgreich hergestellt, aber dann trat ein Fehler während des Anmeldevorgangs auf. (Anbieter: SSL-Anbieter, Fehler: 0 - Die Zertifikatkette wurde von einer nicht vertrauenswürdigen Behörde ausgestellt.)

Ich kann mich mit SSMS mit meiner DB verbinden. Der Port 1433 ist auf meiner VM-Rolle geöffnet. Was ist falsch mit meiner Verbindung?

20voto

Ich habe diese 2 Zeilen zur ConnectionString hinzugefügt und es hat funktioniert

Trusted_Connection=True
TrustServerCertificate=True

17voto

Sojib Punkte 179
"ConnectionStrings": {
    "DefaultConnection": "Server=DESKTOP-O5SR0H0\\SQLEXPRESS;Database=myDataBase;Trusted_Connection=True;TrustServerCertificate=True;"
  }
}

16voto

dimmits Punkte 1999

Wenn Sie EF Core 7 verwenden, gibt es eine Änderung, die in der offiziellen Microsoft-Dokumentation erklärt wird https://learn.microsoft.com/en-us/ef/core/what-is-new/ef-core-7.0/breaking-changes#encrypt-defaults-to-true-for-sql-server-connections

15voto

Schalten Sie die Verschlüsselung in der Verbindungszeichenfolge aus. Dies kann erreicht werden, indem Sie folgendes an Ihre Verbindungszeichenfolge anhängen:

encrypt=false

15voto

Orwellophile Punkte 12151

Während die allgemeine Antwort an sich korrekt war, fand ich, dass sie für mein Problem mit dem SQL Server Import and Export Wizard nicht weit genug ging. Angenommen, Sie haben ein gültiges (und automatisches) Windows-Sicherheits-Login:

ConnectionString

Data Source=localhost; 
Initial Catalog=; 
Integrated Security=True; 
Encrypt=True; 
TrustServerCertificate=True; 
User Instance=False

Dies kann entweder Ihr kompletter ConnectionString sein (alles in einer Zeile) oder Sie können diese Werte einzeln auf ihre Felder anwenden.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X