Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Az SQL Server mindig titkosítja a bejelentkezéshez társított hálózati csomagokat. Ha a rendszer indításakor nem hozott létre tanúsítványt a kiszolgálón, az SQL Server létrehoz egy önaláírt tanúsítványt, amely a bejelentkezési csomagok titkosítására szolgál.
Magas szinten az ügyfél és a kiszolgáló közötti titkosítás biztosítja, hogy az adatok csak az ügyfél és a kiszolgáló számára olvashatók. A titkosítási folyamat fontos része a kiszolgálói tanúsítvány érvényesítése. A kiszolgálótanúsítvány érvényesítése lehetővé teszi az ügyfél számára, hogy meggyőződjön arról, hogy a kiszolgáló az, akinek mondja. A rendszer ellenőrzi a tanúsítványt olyan dolgok esetében, mint a lejárat, a megbízhatósági lánc, és hogy a tanúsítvány neve megegyezik annak a kiszolgálónak a nevével, amelyhez az ügyfél csatlakozik. További információ: Transport Layer Security és digitális tanúsítványok.
Erősen ajánlott egy ellenőrizhető tanúsítványt kiépíteni az SQL Serveren a biztonságos kapcsolat érdekében. A Transport Security Layer (TLS) csak tanúsítványérvényesítéssel tehető biztonságossá.
Az alkalmazások a Encrypt kapcsolati sztring kulcsszó vagy kapcsolati tulajdonság használatával kérhetik az összes hálózati forgalom titkosítását. Alapértelmezés szerint a kapcsolat összes hálózati forgalmának titkosításához tanúsítványt kell kiépíteni a kiszolgálón. Ha úgy állítja be az ügyfelet, hogy megbízzon a kiszolgáló tanúsítványában, akkor sebezhetővé válhat a közbeékelődéses támadásokkal szemben. Ha ellenőrizhető tanúsítványt helyez üzembe a kiszolgálón, győződjön meg arról, hogy az ügyfélbeállítások Encrypt, a True beállítások pedig Trust Server Certificate és False.
Ha engedélyezni szeretné a titkosítás használatát, ha egy tanúsítvány nem lett kiépítve a kiszolgálón, az ügyfél- és Encrypt az Trust Server Certificate ügyfélbeállítások használhatók. Ebben az esetben a titkosítás önaláírt kiszolgálói tanúsítványt használ az ügyfél ellenőrzése nélkül. Ez a konfiguráció titkosítja a kapcsolatot, de nem akadályozza meg, hogy az ügyfél és a kiszolgáló közötti eszközök elfogják a kapcsolatot, és proxyzzék a titkosítást.
A titkosítás és a tanúsítványérvényesítés viselkedésének változásai
A Microsoft.Data.SqlClient 4.0-s verziója kompatibilitástörő változásokat vezet be a titkosítási beállításokban.
Encrypt mostantól alapértelmezettként True.
A Microsoft.Data.SqlClient 2.0-s verziója kompatibilitástörő változásokat vezet be a Trust Server Certificate beállítás viselkedésében. Korábban, ha EncryptFalse-re lett beállítva, a kiszolgálótanúsítvány Trust Server Certificate beállítástól függetlenül nem lett érvényesítve. Most a kiszolgálótanúsítvány a Trust Server Certificate beállítás alapján kerül érvényesítésre, ha a kiszolgáló kényszeríti a titkosítást, még akkor is, ha a Encrypt értéke False.
4.0-s verzió
Az alábbi táblázat a titkosítási és tanúsítványbeállítások titkosítási és érvényesítési eredményét ismerteti:
Encrypt ügyfélbeállítás |
Trust Server Certificate ügyfélbeállítás |
Force encryption kiszolgálóbeállítás |
Result |
|---|---|---|---|
| Téves | Hamis (alapértelmezett) | Nem | A titkosítás csak csomagok esetén LOGIN történik. A tanúsítvány nincs érvényesítve. |
| Téves | Hamis (alapértelmezett) | Igen | (Viselkedésváltozás az 1.0-s verzióról 2.0-ra) Az összes hálózati forgalom titkosítása csak akkor történik meg, ha egy ellenőrizhető kiszolgálótanúsítvány van, ellenkező esetben a kapcsolati kísérlet meghiúsul. |
| Téves | True | Igen | Az összes hálózati forgalom titkosítása megtörténik, és a tanúsítvány nincs érvényesítve. |
| Igaz (új alapértelmezett) | Hamis (alapértelmezett) | N/A | Az összes hálózati forgalom titkosítása csak akkor történik meg, ha egy ellenőrizhető kiszolgálótanúsítvány van, ellenkező esetben a kapcsolati kísérlet meghiúsul. |
| Igaz (új alapértelmezett) | True | N/A | Az összes hálózati forgalom titkosítása megtörténik, de a tanúsítvány nincs érvényesítve. |
| Szigorú (az 5.0-s verzióban hozzáadva) | N/A | N/A | Az összes hálózati forgalom titkosítása a TDS 8.0 használatával történik, csak akkor, ha van ellenőrizhető kiszolgálói tanúsítvány, ellenkező esetben a csatlakozási kísérlet meghiúsul. |
Caution
Az előző táblázat csak útmutatást nyújt a rendszer viselkedéséről különböző konfigurációk esetén. A biztonságos kapcsolat érdekében győződjön meg arról, hogy az ügyfél és a kiszolgáló egyaránt titkosítást igényel. Győződjön meg arról is, hogy a kiszolgáló rendelkezik ellenőrizhető tanúsítvánnyal, és hogy az TrustServerCertificate beállítása az ügyfélen False értékre van állítva.
A Microsoft.Data.SqlClient HostNameInCertificate 5.0-s verziójától kezdve egy új kapcsolati lehetőség. A kiszolgálótanúsítvány érvényesítése biztosítja, hogy a tanúsítványban szereplő köznapi név (CN) vagy tulajdonos alternatív neve (SAN) megegyezik a csatlakoztatott kiszolgáló nevével. Bizonyos esetekben, például a DNS-aliasok esetében előfordulhat, hogy a kiszolgáló neve nem egyezik a CN vagy a SAN névvel. Az HostNameInCertificate érték egy másik, várt CN vagy SAN megadására használható a kiszolgálótanúsítványban.
2.0-s verzió
A 2.0-s verziótól kezdve, amikor a kiszolgáló kényszeríti a titkosítást, az ügyfél a beállítástól függetlenül érvényesíti a kiszolgálótanúsítványt.Trust Server CertificateEncrypt
Az alábbi táblázat a titkosítási és tanúsítványbeállítások titkosítási és érvényesítési eredményét ismerteti:
Encrypt ügyfélbeállítás |
Trust Server Certificate ügyfélbeállítás |
Force encryption kiszolgálóbeállítás |
Result |
|---|---|---|---|
| Hamis (alapértelmezett) | Hamis (alapértelmezett) | Nem | A titkosítás csak csomagok esetén LOGIN történik. A tanúsítvány nincs érvényesítve. |
| Hamis (alapértelmezett) | Hamis (alapértelmezett) | Igen | (Viselkedésváltozás) Az összes hálózati forgalom titkosítása csak akkor történik meg, ha egy ellenőrizhető kiszolgálótanúsítvány van, ellenkező esetben a kapcsolati kísérlet meghiúsul. |
| Hamis (alapértelmezett) | True | Igen | Az összes hálózati forgalom titkosítása megtörténik, és a tanúsítvány nincs érvényesítve. |
| True | Hamis (alapértelmezett) | N/A | Az összes hálózati forgalom titkosítása csak akkor történik meg, ha egy ellenőrizhető kiszolgálótanúsítvány van, ellenkező esetben a kapcsolati kísérlet meghiúsul. |
| True | True | N/A | Az összes hálózati forgalom titkosítása megtörténik, de a tanúsítvány nincs érvényesítve. |
Caution
Az előző táblázat csak útmutatást nyújt a rendszer viselkedéséről különböző konfigurációk esetén. A biztonságos kapcsolat érdekében győződjön meg arról, hogy az ügyfél és a kiszolgáló egyaránt titkosítást igényel. Győződjön meg arról is, hogy a kiszolgáló rendelkezik ellenőrizhető tanúsítvánnyal, és hogy az TrustServerCertificate beállítása az ügyfélen False értékre van állítva.
1.0-s verzió
Az alábbi táblázat a titkosítási és tanúsítványbeállítások titkosítási és érvényesítési eredményét ismerteti:
Encrypt ügyfélbeállítás |
Trust Server Certificate ügyfélbeállítás |
Force encryption kiszolgálóbeállítás |
Result |
|---|---|---|---|
| Hamis (alapértelmezett) | Hamis (alapértelmezett) | Nem | A titkosítás csak csomagok esetén LOGIN történik. A tanúsítvány nincs érvényesítve. |
| Hamis (alapértelmezett) | Hamis (alapértelmezett) | Igen | Az összes hálózati forgalom titkosítása megtörténik, de a tanúsítvány nincs érvényesítve. |
| Hamis (alapértelmezett) | True | Igen | Az összes hálózati forgalom titkosítása megtörténik, és a tanúsítvány nincs érvényesítve. |
| True | Hamis (alapértelmezett) | N/A | Az összes hálózati forgalom titkosítása csak akkor történik meg, ha egy ellenőrizhető kiszolgálótanúsítvány van, ellenkező esetben a kapcsolati kísérlet meghiúsul. |
| True | True | N/A | Az összes hálózati forgalom titkosítása megtörténik, de a tanúsítvány nincs érvényesítve. |