我正在构建.Net MVC应用程序,我正在使用一个特定视图来生成内部报告。我不希望网站的用户完全访问此页面。
我有一个频繁触发的控制台应用程序,它会通过点击它的URL从这个页面中删除一些细节。
我不喜欢将URL挂在那里的想法,但我不确定另一种方法可以解决它。
关于解决这个问题的最佳实践方法的想法?
编辑:
这是我最终做的,在解决方案中创建了一个新的WCF服务项目。我还基本上将 MVC视图页面复制到了这个项目中的新标准Web表单页面。除了通过常规的.net身份验证方法添加安全性之外(例如,只设置有效的Windows用户可以访问该页面),我还可以锁定虚拟主机只能被某些IP访问。
答案 0 :(得分:2)
最佳做法是为此公开wcf服务,并设置与网站不同的安全模型。
如果必须使用MVC,最好的方法是使用mvc和set
进行表单身份验证[Authorize(Roles = "SecureUser")]
在视图上。
答案 1 :(得分:0)
如果除了为控制台应用程序提供数据之外根本不需要渲染视图,那么为什么不让控制台应用程序只是连接到您的数据库以直接获取数据而不是通过Web应用程序?您仍然可以为控制台应用程序执行此操作,即使视图确实需要为某些用户可用,然后使用Authorization属性控制对视图的访问,这可能适当地限制,因为外部应用程序无需访问它。 / p>