C#程序默认以管理员权限打开

1. 项目属性->安全性->启用ClickOnce安全设置

2. 找到requestedExecutionLevel节点,将level改为requireAdministrator

3. 先别着急编译程序,此时编译会报下图错误

严重性    代码    说明    项目    文件    行    禁止显示状态
错误        ClickOnce 不支持请求执行级别“requireAdministrator”。    ConsoleApplication1            

 4. 取消第一步勾选的"启用ClickOnce安全设置"

 5. 最终生成的EXE上会有UAC的图标,说明成功,该程序后续执行时都会有要求管理员权限运行

 

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
功能介绍: 本系统通过对MVC4 Simplemembership默认数据库进扩展实现了后台管理用户,角色和权限。通过角色的权限配置实现对前台Controller和Action的权限管理。 使用方法: 第一步:修改Web.config文件。 这个文件中只需要TYStudioUsersConnectionString中的用户名和密码,修改为你本地具有创建数据库的权限的用户名和密码。修改完成运程序会系统会自动创建扩展后的Membership数据库。 第二步:建立系统管理员角色和用户。 考虑到手动添加系统管理员角色和用户比较麻烦,初始的程序都是可以匿名访问的,这时候你需要运系统添加一个系统管理员角色,并添加一个用户赋给系统管理员权限。再添加完系统管理员角色和用户之后你需要修改一下Controllers下面的各个Controller,注释掉[AllowAnonymous]并把//[Authorize(Roles = "系统管理员")]注释打开。编译重新运程序,这时后台管理系统只能允许系统管理员角色的用户登陆了。 第三步:测试产品模块(ProductController) Controller下有一个ProductController是用来测试我们的权限管理是否成功的起作用了,同时也是对前台Controller和Action进全线控制的方法。这里使用[TYStudioAuthorize("查询产品")]方式对Action进访问控制。所有关于Membership的类都在Models/Membership文件夹下面。将来你需要把这些class移植到你的公共project中去,这样就可以使用MVC4 Simplemembership对你的前台进权限控制了。 注意: 开发环境为Visual Studio 2012
图书馆管理系统使用说明书 配置源程序 附加数据库SQL Server 2005 (1)将TM\10\LibraryMS\App_Data文件夹中的db_LibraryMS.mdf和db_LibraryMS_log.ldf文件拷贝到SQL Server 2005安装路径下的MSSQL.1\MSSQL\Data目录下。 (2)选择开始/程序/Microsoft SQL Server 2005/SQL Server Management Studio项,进入到“连接到服务器”页面,如图1.1所示。 图1.1 连接到服务器 (3)在“服务器名称”下拉列表中选择SQL Server 2005服务器名称,然后单击【连接】按钮。 (4)在“对象资源管理器”中右键单击“数据库”节点,在弹出的菜单中选择“附加”项,弹出“附加数据库”对话框,如图1.2所示。 图1.2 附加数据库 (5)单击【添加】按钮,在弹出的“定位数据库文件”对话框中选择数据库文件路径,如图1.3所示。 图1.3 定位数据库文件 (6)依次单击【确定】按钮,完成数据库附加操作。 更改连接SQL Server 2005数据库服务器的名称 (1)打开程序路径下TM\10\LibraryMS文件夹中, 将该文件夹中的Web.Config文件以记事本方式打开,将数据源连接服务器的名称更改为本机SQL Server 2005服务器的名称,如图1.4所示。 图1.4 修改服务器名称 配置IIS (1)依次选择“开始”/“设置”/“控制面板”/“管理工具”/“Internet信息服务(IIS)管理器”选项,弹出“Internet信息服务(IIS)管理器”窗口,如图1.5所示。 图1.5 “Internet信息服务(IIS)管理器”窗口 (2)选中“默认网站”节点,单击右键,选择“属性”,如图1.6所示。 图1.6 选择“属性”菜单项 (3)弹出“默认网站 属性”对话框,单击“网站”选项卡,在“IP地址”下拉列表中选择本机IP地址。如图1.7所示。 图1.7 “默认网站 属性”窗口 (4)单击“主目录”选项卡,如图1.8所示。单击【浏览】按钮,弹出“浏览文件夹”对话框,选择您的网站路径。 图1.8 选择程序路径 (5)选中首页文件“Default.aspx”,单击鼠标右键,在弹出的菜单中选择“浏览”菜单项。 使用说明 系统介绍 根据所作的需求分析可以得出,图书馆管理系统实施后,达到以下目标。  界面设计友好、美观。  数据存储安全、可靠。  信息分类清晰、准确。  强大的查询功能,保证数据查询的灵活性。  实现对图书借阅和归还过程的全程数据信息跟踪。  提供图书借阅排榜,为图书馆管理员提供了真实的数据信息。  提供灵活、方便的权限设置功能,使整个系统的管理分工明确。  具有易维护性和易操作性。 操作注意事项 (1)本系统管理员用户名为:Tsoft,密码为:111。 (2)实例执行文件位置:TM\10\LibraryMS\Default.aspx (3)读者类型不同,可借图书的本数也有所区别。 操作流程 (1)用户登录图书馆管理系统后,进入图书馆主界面,如图1.9所示,通过此界面可看到图书借阅排榜和读者借阅排榜,通过排榜可以看出借阅图书的名称、图书类型、借阅次数及借阅读者等相关信息。 图1.9 图书馆主界面 (2)单击“系统设置”/“图书馆信息”命令,对图书馆信息进设置操作。 (3)单击“系统设置”/“管理员设置”命令,对管理员信息进添加、权限设置、浏览及删除操作。 (5)单击“系统设置”/“书架管理”命令,对书架信息进添加、修改及删除操作。 (6)单击“读者管理”/“读者类型管理”命令,对读者类型信息进添加、修改及删除操作。 (7)单击“读者管理”/“读者档案管理”命令,对读者信息进添加、修改、查看及删除操作。 (8)单击“图书管理”/“图书类型管理”命令,对图书类型进添加、修改及删除操作。 (9)单击“图书管理”/“图书档案管理”命令,对图书信息进添加、修改及删除操作。 (10)单击“图书借还”/“图书借阅”命令,对图书借阅信息添加操作。 (11)单击“图书借还”/“图书归还”命令,对图书归还信息进添加操作。 (12)单击“系统查询”/“图书档案查询”命令,对图书档案信息进查询操作。 (13)单击“系统查询”/“图书借阅查询”命令,对借阅的图书信息进查询操作。 (14)单击“排榜”/“图书借阅排榜”命令,对图书借阅信息进查看操作。 (15)单击“排榜”/“读者借阅排榜”命令,对读者借阅信息进查看操作。 (16)单击“更改口令”按钮,对当前的用户密码进修改操作。 (17)单击“退出系统”按钮,退出当前操作系统。
ASP.NET权限管理系统(FrameWork) 1.起源 在我们开发软件过程中,经常会需要开发一个后台管理程序.用于管理我们开发的前台软件. 当你开发的软件越来越多的时候,你的管理后台也会越来越多.这时如果有一个统一的管理后台.来进来管理.有统一台帐号,统一的授权来进多个后台的管理就好了. FrameWork就是在这样的需求下产生了. 2.功能 其主要的功能就是,进后台管理模块整合. 1)其可以支持多个应用,多个模块的权限管理. 2)支持Access和MsSql200/2005及Oracle9i以上. 3)采用角色来进权限的授权,每个用户可以属于多个角色,享有交差权限. 4)整合方便,权限检测采用httpmodule方式检测.基本不用对原有程序修改,便可将原有程序整合. 5)可视化编辑,全新的Menu和Tab控件.支持拖拉式编辑. 6)统一的事件日志管理,所有登陆操作都有安全记录. 7)每个模块的每个栏目对应一个目录, 栏目的权限默认抽象分为(查看/新增/修改/删除/排序/打印/备用A/备用B),每栏目权限可最多扩展为20个自定义权限. 8)可通过目录中web.config来进目录文件权限配置,可直接将某个文件名设定到相对应的权限上. 1.0.7版更新记录 1.TabOptionWebControls能自动拉出,但HeadMenuWebControls却不能 2.支持在web.config中配置Url参数权限判断 3.用户管理模块中,用户类型增加管理员.只有管理员和超用用户才能设置角色.且只能操作自己创建的角色.超用户可以设置所有角色给用户.禁止登陆必需是管理员和超用户才能使用 4.角色管理中必需是管理员才能进入角管理色模块.且管理员只能操作自己创建的角色.超用户可以操作所有用户创建角色. 5.在角色管理中,当前用户可分配的角色权限不能超过自身的权限. 6.异常日志,增加出错网址记录. 7.增加流菜单icon图标. 8.增加自定义权限功能,每模块可自定义20个权限 9.增加查看自己登陆日志 ok 10.修改应用字段,增加title,disabled,Readonly属性 11.修改在线用户处理类,无法正常清除到期用户. 12.修改出错时,只针对manager目录跳转 13.修正ManagementClass无权限读取错误 14在Firefox下选择部门后,清除再选择部门,文本框为空, 树菜单在forefox下打开和关闭无效? 15.将在线用户缓存放入统一缓存管理中. 16.将缓存调用统一接口 17.增加为FileTxtLogs类增加 WriteServiceLog 方法,用于记录服务程序日志. 18.应用字段模块中,点击列表应用字段无效 19.修改应用模块编码,删除原对应模块编码的权限. 20.修改用户多角色权限重叠判断bug. 21.修改操作提示信息使用gzip压缩存储为cookies.
C#程序请求管理员权限可以通过在app.manifest文件中设置请求管理员权限,或者使用代码请求管理员权限。 方法一:在app.manifest文件中设置请求管理员权限项目中的app.manifest文件中,找到下面的代码块,并将requestedExecutionLevel的level属性设置为requireAdministrator。 ```xml <requestedExecutionLevel level="requireAdministrator" uiAccess="false" /> ``` 方法二:使用代码请求管理员权限 使用代码请求管理员权限需要使用Windows API函数,可以使用下面的代码: ```csharp using System; using System.Diagnostics; using System.Runtime.InteropServices; namespace AdminLauncher { class Program { [DllImport("user32.dll", SetLastError = true)] private static extern bool ShowWindow(IntPtr hWnd, int nCmdShow); [DllImport("kernel32.dll", SetLastError = true)] private static extern IntPtr GetConsoleWindow(); static void Main(string[] args) { if (!IsAdmin()) { StartAsAdmin(); return; } // 操作管理员权限下的资源 } static bool IsAdmin() { var identity = System.Security.Principal.WindowsIdentity.GetCurrent(); var principal = new System.Security.Principal.WindowsPrincipal(identity); return principal.IsInRole(System.Security.Principal.WindowsBuiltInRole.Administrator); } static void StartAsAdmin() { var fileName = Process.GetCurrentProcess().MainModule.FileName; var startInfo = new ProcessStartInfo { UseShellExecute = true, WorkingDirectory = Environment.CurrentDirectory, FileName = fileName, Verb = "runas" }; Process.Start(startInfo); ShowWindow(GetConsoleWindow(), 0); } } } ``` 以上代码中,IsAdmin方法用于判断当前程序是否以管理员权限,如果是,则执行管理员权限下的操作,否则调用StartAsAdmin方法以管理员权限重新启动程序。StartAsAdmin方法使用ProcessStartInfo对象来设置启动参数,其中Verb属性设置为"runas"表示以管理员权限启动程序。注意,使用Verb属性可能会弹出UAC提示框,需要用户授权才能继续执行,如果不想显示UAC提示框,可以使用Windows API函数ShowWindow将控制台窗口隐藏。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值