Jegyzet
Az oldalhoz való hozzáférés engedélyezést igényel. Próbálhatod be jelentkezni vagy könyvtárat váltani.
Az oldalhoz való hozzáférés engedélyezést igényel. Megpróbálhatod a könyvtár váltását.
A következőkre vonatkozik: SQL Server 2019 (15.x) és újabb verziók Windows és
SQL Server 2022 (16.x) rendszeren – csak Windows
Ez a cikk a Machine Learning Services elkülönítési mechanizmusának változásait ismerteti a Windows SQL Serveren, először az SQL Server 2019-ben. Ezek a módosítások hatással vannak az SQLRUserGroupra, a tűzfalszabályokra, a fájlengedélyre és a vélelmezett hitelesítésre.
További információ: SQL Server Machine Learning Services telepítése Windows rendszeren.
Az elkülönítési mechanizmus változásai
Windows rendszeren az SQL Telepítő módosítja a külső folyamatok elkülönítési mechanizmusát. Ez a módosítás a helyi feldolgozói fiókokat AppContainersre cseréli, amely a Windows rendszeren futó ügyfélalkalmazások elkülönítési technológiája.
A módosítás miatt a rendszergazda nem rendelkezik konkrét műveletelemekkel. Új vagy frissített kiszolgálón az sp_execute_external_script által végrehajtott összes külső szkript és kód automatikusan követi az új elkülönítési modellt.
Összefoglalva, a kiadás fő különbségei a következők:
- Az SQL Restricted User Group (SQLRUserGroup) alatt lévő helyi felhasználói fiókok már nem jönnek létre, és nem használhatók külső folyamatok futtatására. Az AppContainers lecseréli őket.
- Az SQLRUserGroup tagsága megváltozott. Több helyi felhasználói fiók helyett a tagság csak az SQL Server Launchpad szolgáltatásfiókból áll. Az R- és Python-folyamatok mostantól a Launchpad szolgáltatás identitása alatt futnak, az AppContainers segítségével elkülönítve.
Bár az elkülönítési modell megváltozott, a telepítővarázsló és a parancssori paraméterek ugyanazok maradnak, mint az SQL Server régebbi verziói. A telepítéssel kapcsolatos segítségért tekintse meg az SQL Server 2016-2019 Machine Learning Services telepítését vagy az SQL Server 2022 Machine Learning Services (Python és R) windowsos telepítését.
Tudnivalók az AppContainer elkülönítéséről
A korábbi kiadásokban az SQLRUserGroup tartalmazta a külső folyamatok elkülönítéséhez és futtatásához használt helyi Windows-felhasználói fiókok készletét (MSSQLSERVER00-MSSQLSERVER20). Amikor külső folyamatra volt szükség, az SQL Server Launchpad szolgáltatás egy elérhető fiókot fog használni, és egy folyamat futtatásához használja.
Az SQL Server 2019-től kezdve az SQL Telepítő már nem hoz létre helyi feldolgozófiókokat. Ehelyett az elkülönítés az AppContainers használatával érhető el. Futtatáskor, ha beágyazott szkriptet vagy kódot észlel egy tárolt eljárásban vagy lekérdezésben, az SQL Server meghívja a Launchpadet egy bővítményspecifikus indítóra vonatkozó kéréssel. A Launchpad meghívja a megfelelő futtatókörnyezetet egy folyamat során az identitása alatt, és létrehoz egy AppContainert, hogy tartalmazza azt. Ez a változás azért előnyös, mert a helyi fiók- és jelszókezelésre már nincs szükség. Emellett az olyan telepítések esetében, ahol a helyi felhasználói fiókok tiltottak, a helyi felhasználói fiók függőségének megszüntetése azt jelenti, hogy most már használhatja ezt a funkciót.
Az SQL Server által implementált AppContainers egy belső mechanizmus. Bár a Folyamatfigyelőben nem látja az AppContainers fizikai bizonyítékait, a telepítő által létrehozott kimenő tűzfalszabályokban megtalálhatja őket, hogy megakadályozza a folyamatok hálózati hívásait.
A telepítő által létrehozott tűzfalszabályok
Alapértelmezés szerint az SQL Server tűzfalszabályok létrehozásával letiltja a kimenő kapcsolatokat. Korábban ezek a szabályok helyi felhasználói fiókokon alapultak, ahol a telepítő létrehozott egy kimenő szabályt az SQLRUserGroup számára, amely megtagadta a tagokhoz való hálózati hozzáférést (minden feldolgozófiók helyi elvként szerepelt a szabály hatálya alatt).
Az AppContainersre való áttérés részeként az AppContainer SID-ken alapuló új tűzfalszabályok találhatók: egyet az SQL Server telepítője által létrehozott 20 AppContainerhez. A tűzfalszabály nevének elnevezési konvenciói az AppContainer-00 hálózati hozzáférésének letiltása az MSSQLSERVER SQL Server-példányban, ahol a 00 az AppContainer száma (alapértelmezés szerint 00–20), az MSSQLSERVER pedig az SQL Server-példány neve.
Megjegyzés:
Ha hálózati hívásokra van szükség, letilthatja a kimenő szabályokat a Windows tűzfalon.
Fájlengedélyek
Alapértelmezés szerint a külső Python- és R-szkriptek csak olvasási hozzáférési engedéllyel rendelkeznek a munkakönyvtáraikhoz.
Ha a Python- vagy R-szkripteknek hozzáférésre van szükségük bármely más könyvtárhoz, olvasási és /vagy írási engedélyeket kell adni az NT Service\MSSQLLaunchpad szolgáltatás felhasználói fiókjának és a címtárban található ÖSSZES ALKALMAZÁSCSOMAGnak .
A hozzáférés megadásához kövesse az alábbi lépéseket.
- A Fájlkezelőben kattintson a jobb gombbal arra a mappára, amelyet munkakönyvtárként szeretne használni, és válassza a Tulajdonságok lehetőséget.
- Válassza a Biztonság lehetőséget, majd kattintson a Szerkesztés... gombra az engedélyek módosításához.
- Kattintson a Hozzáadás...
- Győződjön meg arról, hogy az Erről a helyről a helyi számítógép neve van.
- Adja meg az ÖSSZES ALKALMAZÁSCSOMAGot az Objektumnevek megadása választáshoz, majd kattintson a Névellenőrzés gombra. Kattintson az OK gombra.
- Válassza az Olvasás és végrehajtás lehetőséget az Engedélyezés oszlop alatt.
- Ha írási engedélyeket szeretne adni, válassza az Írás lehetőséget az Engedélyezés oszlop alatt.
- Kattintson az OK és az OK gombra.
Programfájl-engedélyek
A korábbi kiadásokhoz hasonlóan az SQLRUserGroup továbbra is olvasási és végrehajtási engedélyeket biztosít az SQL Server Binn, R_SERVICES és PYTHON_SERVICES könyvtárak végrehajtható fájljaihoz. Ebben a kiadásban az SQLRUserGroup egyetlen tagja az SQL Server Launchpad szolgáltatásfiókja. Amikor a Launchpad szolgáltatás elindít egy R- vagy Python-végrehajtási környezetet, a folyamat LaunchPad szolgáltatásként fut.
Hallgatólagos hitelesítés
A korábbiakhoz hasonlóan további konfigurációra van szükség a hallgatólagos hitelesítéshez olyan esetekben, amikor a szkriptnek vagy a kódnak megbízható hitelesítéssel kell csatlakoznia az SQL Serverhez az adatok vagy erőforrások lekéréséhez. A további konfiguráció magában foglalja egy adatbázis-bejelentkezés létrehozását az SQLRUserGroup számára, amelynek egyetlen tagja most már az egyetlen SQL Server Launchpad szolgáltatásfiók több feldolgozói fiók helyett. A feladatról további információt az SQLRUserGroup hozzáadása adatbázis-felhasználóként című témakörben talál.
A telepítő által létrehozott szimbolikus hivatkozás
Az SQL Server telepítőjének részeként szimbolikus link van létesítve az alapértelmezett aktuális R_SERVICES és PYTHON_SERVICES számára. Ha nem szeretné létrehozni ezt a hivatkozást, egy másik lehetőség, ha "minden alkalmazáscsomag" olvasási engedélyt ad a mappához vezető hierarchiának.