2011-09-11 24 views
5

Tôi muốn hiển thị cho người dùng (và bản thân mình) những đặc quyền của họ và cung cấp cho họ khả năng để nâng cao đặc quyền của họ (hoặc nhờ người khác) trước khi chạy lệnh MakeSymbolicLink .windows 7 đặc quyền người dùng và đánh giá bảo mật

Lệnh dòng lệnh tương đương (mklink) yêu cầu nâng cao quyền. Tôi muốn cung cấp cho người dùng nhiều phím tắt chức năng thông qua một thư mục dày bên cạnh. Các ổ đĩa liên kết và các hệ thống tệp từ xa.

Cách kinh điển có lập trình (C# hoặc C++) là gì để khai thác các cài đặt bảo mật một quyền riêng tư cho một người dùng cụ thể trong khi đăng nhập?

+1

Câu hỏi hay mặc dù bạn có thể muốn chấp nhận thêm một số câu trả lời cho câu hỏi của mình trước khi bạn mong đợi mọi người giúp bạn. – Tim

+0

có thể trùng lặp của [làm thế nào bạn có thể dễ dàng kiểm tra xem truy cập bị từ chối cho một tập tin trong. NET?] (Http://stackoverflow.com/questions/265953/how-can-you-easily-check-if-access-is -denied-for-a-file-in-net) –

+0

Để gọi GetNamedSecurityInfo, đặc quyền SE_SECURITY_NAME phải được bật cho quá trình gọi. SE_BACKUP_NAME và SE_RESTORE_NAME có thể là OK cho GetFileSecurity. Nhưng một lần nữa, nếu bạn gọi những đặc quyền đó, rất có thể bạn không có vấn đề bị từ chối truy cập để giải quyết. Nếu bạn dự định chạy dưới một tài khoản ít đặc quyền nhất, bạn có thể thông báo cho người dùng quyền nào bị từ chối trên tệp/thư mục nào và phải làm gì (ví dụ: trên cao vai hoặc người dùng chuyển đổi). –

Trả lời

0

Bạn có thể sử dụng WMI và nhấn vào Win32_LogicalFileSecuritySetting hoặc một vài bảng khác và liệt kê các quyền dựa trên UNC hoặc vị trí đường dẫn tệp cục bộ.

System.DirectoryServices không gian tên trong C# cũng cho phép bạn liệt kê các quyền trên một người dùng cụ thể.

Vì vậy, bạn có một vài chioces.

0

Bạn có thể tìm thấy triển khai C++ về những gì bạn đang tìm kiếm trong bài viết CodeProject sau đây: Riding the Vista UAC elevator, up and down. Làm cho nó dễ dàng để có được mức độ cao hiện tại, và tạo ra các quy trình mới ở một mức độ cao khác nhau. Những thứ thực sự hay, cũng hoạt động trong Windows 7.

+0

sẽ điều tra. Sử dụng C# nhưng có thể tương thích (tôi đoán). –

Các vấn đề liên quan