Winforms 基于用户的安全菜单项

Winforms 基于用户的安全菜单项,winforms,security,menuitem,Winforms,Security,Menuitem,在我正在编写的这个winform应用程序中,我希望从大多数用户那里获得一个菜单项。它在月末运行,如果意外运行,则无法轻松退出。菜单选项打开一个窗口,提示用户在处理前输入一些信息。我不在乎具体在哪里进行检查,但我想确保只有某些用户可以运行此功能 谷歌搜索(在我上面的问题标题上)没有发现任何明显的结果。有谁能告诉我一个方向,让我知道谁登录了Windows,以及如何检查他们是否被授权?有一些代码可以获取用户详细信息并进行检查 此代码: public string GetloggedinUserName

在我正在编写的这个winform应用程序中,我希望从大多数用户那里获得一个菜单项。它在月末运行,如果意外运行,则无法轻松退出。菜单选项打开一个窗口,提示用户在处理前输入一些信息。我不在乎具体在哪里进行检查,但我想确保只有某些用户可以运行此功能

谷歌搜索(在我上面的问题标题上)没有发现任何明显的结果。有谁能告诉我一个方向,让我知道谁登录了Windows,以及如何检查他们是否被授权?

有一些代码可以获取用户详细信息并进行检查

此代码:

public string GetloggedinUserName()
{
    System.Security.Principal.WindowsIdentity currentUser =
                      System.Security.Principal.WindowsIdentity.GetCurrent();
    return currentUser.Name;
}
返回当前用户名。您可以使用此选项对照授权用户列表进行检查

可以找到有关
WindowsIdentity
类的更多详细信息

它有一个属性,您可以使用它来检查组的成员身份,而不必检查单个用户。

有一些代码用于获取用户详细信息并进行检查

此代码:

public string GetloggedinUserName()
{
    System.Security.Principal.WindowsIdentity currentUser =
                      System.Security.Principal.WindowsIdentity.GetCurrent();
    return currentUser.Name;
}
返回当前用户名。您可以使用此选项对照授权用户列表进行检查

可以找到有关
WindowsIdentity
类的更多详细信息


它有一个属性,您可以使用它来检查组的成员身份,而不必检查单个用户。

您如何确定“已授权”?基于广告群?基于数据库调用?基于部署开关(例如,特殊管理版本?一切取决于。@Reddog待定…目前(用于测试)它是硬编码的。这不是最终的解决方案。您如何确定“授权”?基于广告组?基于数据库调用?基于部署开关(例如,一个特别的管理版?一切取决于。@Reddog有待确定……目前(用于测试)它是硬编码的。这不是最终的解决方案。我必须和部门内的其他人谈谈,看看他们喜欢什么方法。我必须和部门内的其他人谈谈,看看他们喜欢什么方法。