- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
任何人都可以解释以下 c# 行为吗?我已经编写了一个小型控制台应用程序来了解 CAS,但我似乎无法理解为什么以下代码行会像它们那样工作:
string[] myRoles = new string[] { "role1", "role2", "role3" };
GenericIdentity myIdentity = new GenericIdentity("myUsername", "customAuthType");
GenericPrincipal myPrincipal = new GenericPrincipal(myIdentity, myRoles);
System.Threading.Thread.CurrentPrincipal = myPrincipal;
Console.WriteLine(SecurityManager.IsGranted(new PrincipalPermission(null, "role1")));
Console.WriteLine(SecurityManager.IsGranted(new PrincipalPermission(null, "roleX")));
两次 SecurityManager.IsGranted() 调用的输出均为“true”。
如果我再添加以下行:
new PrincipalPermission(null, "role1").Demand();
new PrincipalPermission(null, "roleX").Demand();
第一个需求调用通过,但第二个(如预期的那样)导致 SecurityException。
为什么 SecurityManager.IsGranted() 调用不为“roleX”权限返回 false?
最佳答案
在 .NET 4.0 中,SecurityManager.IsGranted 已过时。
原来是这样,如果您在 .NET 4.0 兼容性中编译,它会报错。
bool isGranted = SecurityManager.IsGranted(new SecurityPermission(SecurityPermissionFlag.Infrastructure))
修复它:
var permissionSet = new PermissionSet(PermissionState.None);
permissionSet.AddPermission(new SecurityPermission(SecurityPermissionFlag.UnmanagedCode));
bool isGranted = permissionSet.IsSubsetOf(AppDomain.CurrentDomain.PermissionSet);
引用:
http://www.stringbuilder.net/post/2009/07/31/In-NET-40-SecurityManagerIsGranted-is-obsolete.aspx
关于c# - SecurityManager.IsGranted() 行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/311677/
我有java应用程序,我正在考虑安全性。我可以混淆代码,但我仍然可以使用例如 javassist 从内存中“窃取”代码或在运行时修改代码。我正在寻找 SecurityManager 来在修改之前保护我
运行以下代码,我在 getPackage() 行收到 StackOverflowError。如果我无法访问 getPackage() 来检查包,如何才能只向我想要的包内的类授予权限? package
我一直在尝试使用自定义 SecurityManager 来沙箱一些外部加载的代码。我的 SecurityManager 工作正常。我采取了与这里许多帖子建议的相同的方法:每当执行潜在危险的代码时设置自
我有一个程序在其所有线程中运行一个基本的 RMISecurityManager。但是我想对几个线程做更多的控制,并专门为这些线程设置另一个 SecurityManager。 我该怎么做? ...如果这
有没有办法为 Java SecurityManager 创建一个自定义策略文件,它位于我想要的任何位置?如果是,我该怎么做,以及如何以编程方式将 SecurityManager 绑定(bind)到该文
我能否使用自定义的 SecurityManager 避免第三方代码创建新线程、启动新 VM 或泄露数据? 最佳答案 线程创建导致调用 securityManager.checkAccess(g),其中
我想创建一个非常严格的安全管理器,所以我扩展了 SecurityManager 并覆盖了所有自定义的 checkXXX 方法。 但后来我发现我的安全管理器没用,因为任何人都可以: System.set
我是一名大学讲师,我正在修改关于 Java 反射的讲座。其他年份,当我教授抑制访问检查的恐怖时,我展示了您可以设置一个 SecurityManager 并执行类似的操作 if ("suppre
我是一名大学讲师,我正在修改关于 Java 反射的讲座。其他年份,当我教授抑制访问检查的恐怖时,我展示了您可以设置一个 SecurityManager 并执行类似的操作 if ("suppre
任何人都可以解释以下 c# 行为吗?我已经编写了一个小型控制台应用程序来了解 CAS,但我似乎无法理解为什么以下代码行会像它们那样工作: string[] myRoles = new string[]
此问题是 my previous question about unusual exceptions generated by a custom security manager. 的后续问题在高层次
经过大量搜索和反复试验,我仍然无法确定是否需要安全管理器,如果需要,如何让它发挥作用。 启动服务器的代码: Registry registry; try { Syste
全局并最终存储安全管理器的检查是否可以接受? 给出以下代码行: public static final boolean SEC_ON = (System.getSecurityManager() !=
我有一个方法 A,它可能如下所示: public double A{ if (secM == null) { secM = new SecurityManager(); Syste
我正在尝试集成 Spring Boot 和 Shiro。当我尝试在我的一个 Controller 中调用 SecurityUtils.getSubject() 时,发生了异常:org.apache.s
我想禁止 spring webapp(在 tomcat 中运行)使用任何包含“..”的文件路径。 显然,首先要做的是在用户信息被用于文件路径之前对其进行清理的地方。但是,应用程序中有数百个地方进行文件
我想允许沙箱中的脚本访问系统属性,但我收到 AccessControlException。这是代码: import static org.junit.Assert.*; import java.sec
全部, 我正在设计一个基于云的服务,该服务将提供执行客户提交的一些“插件”代码的选项。为了使这项工作有效,插件不能威胁系统完整性或具有访问其他客户端数据的任何能力是至关重要的。 理想情况下,我希望客户
我有一个用于受信任应用程序代码的 ClassLoader 和一个用于用户提交(不受信任)代码的单独 ClassLoader。 我希望安全管理器限制用户提交的代码。如何从 SecurityManager
我目前正在尝试在 gradle 中为共享构建服务器运行一些测试。我收到以下错误: Error occurred during initialization of VM java.lang.Int
我是一名优秀的程序员,十分优秀!