Điều kiện tiên quyết chi tiếtCách tốt nhất để lấy SID của người dùng hiện tại là gì?
- Làm việc trong .NET 2.0.
- Mã nằm trong một thư viện chung có thể được gọi từ ASP.Net, Windows Forms hoặc ứng dụng Bảng điều khiển.
- Chạy trong Miền Windows trên mạng công ty.
Các Câu hỏi
cách tốt nhất để có được SID của người dùng hiện nay là gì? Tôi không nói về danh tính đang thực thi ứng dụng, nhưng người dùng đang truy cập vào giao diện. Trong các ứng dụng nền và các ứng dụng dựa trên máy tính để bàn, điều này sẽ là danh tính thực sự thực thi ứng dụng, nhưng trong ASP.Net (không có sự can thiệp), đây phải là SID HttpContext.Current.User.
Phương pháp hiện tại
Đây là những gì tôi đã có ngay bây giờ. Có vẻ như ... sai. Thật khó chịu. Có cách nào tốt hơn để làm điều này, hoặc một số lớp được xây dựng trong đó có nó cho bạn?
public static SecurityIdentifier SID
{
get
{
WindowsIdentity identity = null;
if (HttpContext.Current == null)
{
identity = WindowsIdentity.GetCurrent();
}
else
{
identity = HttpContext.Current.User.Identity as WindowsIdentity;
}
return identity.User;
}
}
Người dùng sẽ luôn có nhận dạng (nếu không thì đó là vấn đề lớn hơn nhiều). Cảm ơn câu trả lời. –