KB4533497 - KHẮC PHỤC: Các tập lệnh quy trình vệ tinh bên ngoài như R, Python không thể truy nhập vào bất kỳ thư mục nào bên ngoài thư mục làm việc của chúng trong SQL Server 2019

Áp dụng cho
SQL Server 2019 on Linux

Triệu chứng

Trong SQL Server 2019 trên Linux, các tập lệnh quy trình vệ tinh bên ngoài như R, Python không thể truy nhập vào bất kỳ thư mục nào bên ngoài thư mục làm việc của chúng.

Giải pháp

Sự cố này đã được khắc phục trong bản cập nhật tích lũy sau đây dành cho SQL Server:

Giới thiệu về các bản cập nhật tích lũy cho SQL Server:

Mỗi bản cập nhật tích lũy mới dành cho SQL Server chứa tất cả các bản sửa lỗi nóng và bản sửa lỗi bảo mật được tích hợp trong bản cập nhật tích lũy trước đó. Xem các bản cập nhật tích lũy mới nhất cho SQL Server:

Thông tin khác

Bạn có thể tùy chỉnh các thư mục mà quy trình bên ngoài có quyền truy nhập bằng cách sử dụng công cụ mssql-conf để đặt hoặc bỏ thiết đặt "thư mục dữ liệu" trong phần khả năng mở rộng của tệp cấu hình /var/opt/mssql/mssql.conf .

Giá trị của cài đặt là danh sách thư mục được phân cách bằng dấu hai chấm, danh sách này sẽ hiển thị với các tập lệnh vệ tinh. Microsoft SQL Server Launchpad Daemon cần được khởi động lại khi bạn đặt hoặc hủy đặt cài đặt này.

Các quy trình vệ tinh chạy với tư cách là người dùng đặc biệt mssql_satellite , vì vậy chúng sẽ kế thừa cùng quyền Đọc/Ghi/Thực thi cho các thư mục được chỉ định trong cài đặt này như được cấp cho người dùng đặc biệt này.

Ví dụ:
      

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

Cần khởi động lại SQL Server Extensibility Launchpad Daemon để áp dụng cài đặt này. Vui lòng chạy 'systemctl restart mssql-launchpadd.service'.

      

Nội dung của /var/opt/mssql/mssql.conf

[Khả năng mở rộng]

Datadirectories = /opt/mssql/bin:/var

      

#/bin/bash: /opt/mssql/bin/mssql-conf bỏ đặt extensibility.datadirectories

Cần khởi động lại SQL Server Extensibility Launchpad Daemon để áp dụng cài đặt này. Vui lòng chạy

'systemctl khởi động lại mssql-launchpadd.service'.

Nội dung của /var/opt/mssql/mssql.conf

[Khả năng mở rộng]

Trạng thái

Theo mặc định, thiết kế này được thiết kế để các quy trình bên ngoài không thể truy nhập ngẫu nhiên vào bất kỳ thư mục hệ thống nào.

Tham khảo

Tìm hiểu về thuật ngữ mà Microsoft dùng để mô tả các bản cập nhật phần mềm.