KB4533497 – КОРЕКЦИЯ: Скриптове за външни сателитни процеси като R, Python не могат да осъществяват достъп до директории извън работната си директория през SQL Server 2019 г

Отнася се за
SQL Server 2019 on Linux

Симптоми

В SQL Server 2019 на Linux скриптовете на външните сателитни процеси като R, Python не могат да получат достъп до директории извън работната си директория.

Решение

Този проблем е решен в следната кумулативна актуализация за SQL Server:

За кумулативните актуализации за SQL Server:

Всяка нова кумулативна актуализация за SQL Server съдържа всички актуални поправки и корекции на защитата, които са били включени в предишната кумулативна актуализация. Прегледайте последните кумулативни актуализации за SQL Server:

Още информация

Можете да персонализирате директориите, до които външните процеси имат достъп, с помощта на инструмента mssql-conf за задаване или дезактивиране на настройката "datadirectories" в секцията за разширение на конфигурационния файл /var/opt/mssql/mssql.conf .

Стойността на настройката е разделен с двоеточие списък с директории, който ще бъде изложен на сателитни скриптове. Демон на Microsoft SQL Server Launchpad трябва да бъде рестартиран, когато зададете или деинсталирате тази настройка.

Сателитните процеси се изпълняват като mssql_satellite специален потребител, така че те ще наследят същите разрешения за четене/запис/изпълнение в директориите, указани в тази настройка, както са дадени на този специален потребител.

Пример:
      

#/bin/bash: /opt/mssql/bin/mssql-conf set extensibility.datadirectories "/opt/mssql/bin:/home/user/rscripts"

SQL Server Extensibility Launchpad Daemon трябва да бъде рестартиран, за да се приложи тази настройка. Изпълнете "systemctl рестартиране mssql-launchpadd.service".

      

Съдържание на /var/opt/mssql/mssql.conf

[разширяемост]

DataDirectories = /opt/mssql/bin:/var

      

#/bin/bash: /opt/mssql/bin/mssql-conf unset extensibility.datadirectories

SQL Server Extensibility Launchpad Daemon трябва да бъде рестартиран, за да се приложи тази настройка. Моля, изпълнете

'systemctl рестартиране mssql-launchpadd.service'.

Съдържание на /var/opt/mssql/mssql.conf

[разширяемост]

Състояние

По подразбиране тя е проектирана така, че външните процеси да не могат да осъществяват произволен достъп до системни указатели.

Справки

Научете повече относно терминологията, която Microsoft използва за описване на актуализациите на софтуера.