Computer >> Máy Tính >  >> Hệ thống >> máy chủ Windows

Ổ đĩa mạng được ánh xạ không hiển thị trong các chương trình nâng cao

Nếu bạn đang sử dụng các ổ đĩa mạng được ánh xạ, bạn có thể nhận thấy rằng chúng không hiển thị trong các ứng dụng đang chạy với đặc quyền của quản trị viên (bao gồm cmd và PowerShell). Kiểm soát tài khoản người dùng (UAC) mặc định cài đặt không cho phép truy cập vào các ổ đĩa mạng được ánh xạ (thông qua net use ) từ các ứng dụng đang chạy ở chế độ nâng cao (Chạy với tư cách quản trị viên). Điều này có nghĩa là khi bạn chạy dấu nhắc lệnh hoặc trình quản lý tệp (như Total Commander) với các đặc quyền nâng cao, chúng sẽ không hiển thị ký tự ổ đĩa của các thư mục chia sẻ được gắn kết.

Bạn có thể gặp phải sự cố như vậy nếu các điều kiện sau là đúng:

  • Các ổ đĩa mạng được ánh xạ trong phiên của người dùng (qua GPO hoặc theo cách thủ công qua net use );
  • UAC được bật trên máy tính (tham số GPO Kiểm soát tài khoản người dùng:Hành vi của lời nhắc nâng cao dành cho quản trị viên trong Chế độ phê duyệt của quản trị viên được đặt thành giá trị mặc định "Nhắc cho thông tin đăng nhập"); Ổ đĩa mạng được ánh xạ không hiển thị trong các chương trình nâng cao
  • Người dùng hiện tại có quyền quản trị viên cục bộ trên máy tính và chạy ứng dụng ở chế độ "Chạy với tư cách quản trị viên".

Trong trường hợp này, ổ đĩa mạng được hiển thị trong Windows File Explorer và trong các ứng dụng, nhưng không được hiển thị trong bất kỳ ứng dụng nào đang chạy ở chế độ nâng cao.

Trong bài viết này, chúng tôi sẽ hướng dẫn cách cho phép truy cập vào các ổ đĩa mạng được ánh xạ từ các ứng dụng chạy ở chế độ nâng cao trên Windows 10. Sự cố này xảy ra đối với các ổ đĩa mạng được ánh xạ thông qua Group Policy và các thư mục do người dùng kết nối.

Quan trọng . Chúng tôi đặc biệt không nên tắt hoàn toàn UAC, ngay cả đối với một chương trình cụ thể.

Ổ đĩa mạng được ánh xạ không hiển thị trong ứng dụng Windows

Hãy kiểm tra để đảm bảo rằng bạn không thể truy cập vào ổ đĩa mạng được ánh xạ được kết nối ở chế độ bình thường từ một ứng dụng nâng cao có bật UAC. Ví dụ:hãy mở dấu nhắc lệnh với quyền của người dùng và kiểm tra xem bạn có thể truy cập nội dung của ổ đĩa mạng được ánh xạ Z:\.

Net use
Dir z:

Lệnh sẽ liệt kê nội dung của thư mục mạng chia sẻ.

Ổ đĩa mạng được ánh xạ không hiển thị trong các chương trình nâng cao

Nếu bạn mở dấu nhắc lệnh trong phiên hiện tại với tư cách là quản trị viên và cố gắng truy cập vào cùng một ổ đĩa - bạn sẽ nhận được thông báo rằng chưa tìm thấy đường dẫn đến ổ đĩa:

The system cannot find the path specified.

Ổ đĩa mạng được ánh xạ không hiển thị trong các chương trình nâng cao

Hành vi này của Windows có thể gây ra một số bất tiện khi bạn thường xuyên chạy các ứng dụng ở chế độ nâng cao. Có thể chạy các ứng dụng mà không có đặc quyền của quản trị viên, nhưng điều này không phải lúc nào cũng áp dụng được.

Tại sao nó xảy ra? Điểm đặc biệt này liên quan đến cơ chế UAC cho người dùng có đặc quyền quản trị viên cục bộ. Vấn đề là khi người dùng này đăng nhập, hai mã thông báo truy cập được tạo:mã thông báo đầu tiên cung cấp quyền truy cập với đặc quyền quản trị viên bị vô hiệu hóa (mã thông báo truy cập được lọc, với hầu hết các ứng dụng đang chạy) và mã thứ hai là mã thông báo quản trị viên có đầy đủ đặc quyền trong hệ thống (tất cả các ứng dụng được UAC phê duyệt về độ cao đều đang chạy trong ngữ cảnh này).

Bạn có thể sử dụng whoami /all lệnh trong hai phiên cmd.exe (bình thường và nâng cao) của cùng một người dùng và so sánh các đặc quyền hiện tại, bạn có thể thấy rằng chúng rất khác nhau. Bảng sau liệt kê sự khác biệt trong các nhóm bảo mật và đặc quyền hiện tại trong mỗi phiên.

Phiên người dùng bình thường Phiên người dùng nâng cao Nhóm bảo mật

Nhãn bắt buộc \ Nhãn mức bắt buộc trung bình S-1-16-8192 Nhãn bắt buộc \ Nhãn mức bắt buộc cao S-1-16-12288 Đặc quyềnSeLockMemoryPrivilege

SeMachineAccountPrivilege

SeShutdownPrivilege

SeChangeNotifyPrivilege

SeUndockPrivilege

SeIncreaseWorkingSetPrivilege

SeTimeZonePrivilegeSeLockMemoryPrivilege

SeIncreaseQuotaPrivilege

SeMachineAccountPrivilege

SeSecurityPrivilege

SeTakeOwnershipPrivilege

SeLoadDriverPrivilege

SeSystemProfilePrivilege

SeSystemtimePrivilege

SeProfileSingleProcessPrivilege

SeIncreaseBasePosystemPrivilege

SeCreatePagefilePrivilege

SeBackupPrivilege

SeRestorePrivilege

SeShutdownPrivilege

SeSystemEnosystemPrivilege

SeChangeNotifyPrivilege

SeRemoteShutdownPrivilege

SeUndockPrivilege

SeManageVolumePrivilege

SeImpersonatePrivilege

SeCreateGlobalPrivilege

SeIncreaseWorkingSetPrivilege

SeTimeZonePrivilege

SeCreateSymbolicLinkPrivilege

SeDelegateSessionUserImpersonatePrivilege

Ổ đĩa mạng được ánh xạ không hiển thị trong các chương trình nâng cao

Các ứng dụng của cùng một người dùng có thể được chạy trong hai ngữ cảnh khi UAC được bật (đặc quyền và không đặc quyền). Khi bạn ánh xạ các thư mục mạng được chia sẻ, hệ thống sẽ tạo các liên kết tượng trưng (DosDevices) để lưu trữ ánh xạ ký tự ổ đĩa tới các đường dẫn UNC. Các liên kết này được liên kết với mã thông báo truy cập quy trình hiện tại và không có sẵn cho các mã thông báo khác.

Sự cố ngược lại cũng có thể xảy ra:khi người dùng có quyền quản trị viên trên máy tính đang kết nối các ổ đĩa mạng bằng tập lệnh đăng nhập Chính sách Nhóm, tác vụ đã lên lịch hoặc công việc SCCM (đang chạy với đặc quyền nâng cao), những ổ đĩa này sẽ không hiển thị với người dùng trong File Explorer (quy trình không đặc quyền).

Mẹo . Bạn có thể sử dụng một thủ thuật đơn giản để chạy File Explorer trong Windows với quyền quản trị (nâng cao).

Để giải quyết vấn đề này, bạn có thể gắn kết các ổ đĩa mạng từ dấu nhắc lệnh nâng cao bằng cách sử dụng các lệnh:net use hoặc rundll32 SHELL32.dll,SHHelpShortcuts_RunDLL Connect .

Enablelinkedconnections:Bật ổ đĩa được ánh xạ trong ứng dụng nâng cao

Có một giải pháp dễ dàng hơn. Để triển khai nó, bạn phải thực hiện một số thay đổi đối với sổ đăng ký:

  1. Mở trình chỉnh sửa sổ đăng ký ( regedit.exe );
  2. Đi tới khoá đăng ký HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ Policies \ System;
  3. Tạo một tham số mới (loại DWORD) với tên EnableLinkedConnections và giá trị 1; Ổ đĩa mạng được ánh xạ không hiển thị trong các chương trình nâng cao Mẹo . Thay đổi tương tự có thể được thực hiện bằng một lệnh duy nhất:reg add "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Policies\System" /v "EnableLinkedConnections" /t REG_DWORD /d 0x00000001 /f hoặc với PowerShell:
    New-ItemProperty -Path 'HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System' -Name EnableLinkedConnections -Value 1 -PropertyType 'DWord'
  4. Khởi động lại máy tính của bạn (hoặc khởi động lại dịch vụ LanmanWorkstation bằng lệnh:get-service LanmanWorkstation |Restart-Service –Force và đăng nhập lại Windows).

Sau khi khởi động lại máy tính, hãy đảm bảo rằng người dùng có thể nhìn thấy các ổ đĩa mạng được ánh xạ trong các chương trình đang chạy với quyền quản trị. Tuyên bố ngược lại là đúng:tất cả các ổ đĩa mạng được ánh xạ ở chế độ nâng cao cũng sẽ khả dụng trong phiên người dùng không có đặc quyền.

Tính năng này hoạt động trên tất cả các phiên bản Windows bắt đầu từ Vista đến Windows 10 / Windows Server 2019.

Ổ đĩa mạng được ánh xạ không hiển thị trong các chương trình nâng cao

Lưu ý . Rất tiếc, không có cài đặt GPO nào để bật chế độ EnableLinkedConnections. Để áp dụng cài đặt này trên máy tính miền, bạn cần triển khai tham số đăng ký này thông qua GPP.

Nó hoạt động như thế nào? Sau khi bạn bật EnableLinkedConnections tham số đăng ký, LanmanWorkstation và LSA (lsass.exe) sẽ kiểm tra mã thông báo truy cập thứ hai được liên kết với phiên của người dùng hiện tại. Nếu mã thông báo này được tìm thấy, danh sách các ổ đĩa mạng được ánh xạ sẽ được sao chép từ mã thông báo này sang mã thông báo khác. Do đó, các ổ đĩa mạng được ánh xạ ở chế độ đặc quyền sẽ hiển thị ở chế độ bình thường và ngược lại.

Mẹo . Là một giải pháp thay thế, bạn có thể tạo một liên kết tượng trưng đến thư mục mạng chia sẻ đích. Ví dụ, như sau:

mklink /D c:\docs \\dublin-fs1\docs

Bạn có thể truy cập ổ đĩa này ở cả chế độ bình thường và chế độ nâng cao. Cần lưu ý rằng một trong những hạn chế của phương pháp này là bạn truy cập vào thư mục chia sẻ với tư cách là người dùng hiện tại. Không thể sử dụng tài khoản của người dùng khác như trong trường hợp net use yêu cầu.

Sau khi bật tham số EnableLinkedConnections, các ổ đĩa được ánh xạ cũng sẽ khả dụng từ Tác vụ đã lên lịch được khởi chạy cho người dùng hiện tại. Nếu tác vụ được chạy với tư cách LocalSystem hoặc người dùng khác, các ổ đĩa mạng được ánh xạ của người dùng hiện tại sẽ không khả dụng.