“La chaîne de certificat a été émis par une autorité qui n'est pas digne de confiance” lors de la connexion DB dans le Rôle VM à partir de site web Azure
Je suis en train de vivre erreur lors de la connexion de MA DB qui est dans le Rôle VM(j'ai SQL Rôle VM) à partir du Site web Azure. Les deux VM Rôle et d'Azur Site internet sont dans la zone Ouest. Je suis confronté problème suivant:
SqlException (0x80131904): Une connexion a été établie avec succès avec le serveur, mais une erreur s'est produite pendant le processus de connexion. (fournisseur: Fournisseur de certificats SSL, erreur: 0 - La chaîne de certificat a été émis par une autorité qui n'est pas digne de confiance.)]
Je suis en mesure de se connecter à ma DB à l'aide de SSMS. 1433 port est ouvert sur ma VM rôle.
Quel est le problème avec ma connexion?
Vous devez vous connecter pour publier un commentaire.
Il est probable que vous n'avez pas de CA certificat signé installé dans votre SQL VM magasin racine de confiance.
Si vous avez
Encrypt=True
dans la chaîne de connexion, que ce soit définie qu'à désactivé (non recommandé), ou ajoutez le texte suivant dans la chaîne de connexion:SQL Server crée un certificat auto-signé si vous n'installez pas un pour qu'il utilise, mais il ne sera pas approuvé par l'appelant, car il n'est pas CA-signé, sauf si vous dites la chaîne de connexion à faire confiance à n'importe quel serveur cert par défaut.
Long terme, je vous recommande de levier Let's Encrypt pour obtenir le certificat est signé par une autorité de certification à partir d'une autorité de certification de confiance gratuitement et l'installer sur la machine virtuelle. N'oubliez pas de le configurer pour actualiser automatiquement. Vous pouvez en lire plus à ce sujet dans la documentation en ligne SQL Server sous le thème de "la Hiérarchie de Chiffrement", et "à l'Aide du Chiffrement Sans Validation".
TrustServerCertificate
àtrue
--ceci désactive la vérification de certificat. Ce n'est pas mieux que de simplement définirEncrypt
àfalse
!Si vous utilisez SQL server Management Studio, veuillez goto propriétés de la connexion et cliquez sur "Trust server certifié"
Si vous voyez ce message d'erreur lorsque vous tentez de vous connecter à l'aide de SSMS, ajouter
TrustServerCertificate=True
pour les Paramètres de Connexion Supplémentaires.Si Vous tentez d'y accéder par le biais de Connexions de Données dans Visual Studio 2015, et d'obtenir l'Erreur ci-dessus, Puis Passez à l'Avancée et l'ensemble
TrustServerCertificate=True
pour l'erreur de s'en aller.
Le même effet peut être obtenu à partir de ssms client lui-même. Il suffit d'ouvrir la ssms, insérez le nom du serveur, puis à partir des options de la rubrique propriétés de la connexion, assurez-certificat de serveur est activée.
J'ai eu ce Problème lors de l'importation de données Excel dans SQLDatabase via SSMS. La solution est de mettre
TrustServerCertificate = True
dans la section sécuritéJe suis tombé sur cette erreur en essayant d'exécuter le générateur de profils, même si ma connexion avait certificat de serveur vérifié et j'ai ajouté
TrustServerCertificate=True
dans la Section Avancé. J'ai changé pour une instance de SSMS cours d'exécution en tant qu'administrateur et le profileur démarré sans problème. (J'avais déjà constaté que lorsque mes connexions même local a pris un long moment pour se connecter, l'exécution en tant qu'administrateur aidé).