问题标签 [policyfiles]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
3651 浏览

.net - .NET 程序集绑定方式/原因(1.1、2.0、GAC、策略文件等...)

我一直在解决一些 DLL 版本、策略文件和 GAC 中的项目的一些非常“奇怪”的问题,在我的一生中,我一直无法找到关于 . NET 框架在绑定项目引用时选择它执行的程序集。

首先介绍一下我们所拥有的历史,我们有两个库 DLL 文件,其中包含以下信息

这些程序集中的每一个都加载到 GAC 中,并且 1.1 和 2.0 版本都有一个策略文件,指定要加载的最新版本。

我们有一个项目引用了 1.1.00.1234 版本的 ApplicationAssembly.dll 文件,但是,该项目已被移动,提示路径不再有效。但是,该引用并未失效,而是显示为 02.00.00.1111 版本,而不是预期的 1.1 版本的程序集。

这个过程是如何确定的,为什么马上跳到2.0框架?如果我们指定它是“特定版本”引用,即使使用不正确的提示路径,它也会找到正确的 DLL,但由于将来有破坏东西的风险,我们不能让该设置保持打开状态。

我想问题是为什么会发生这种情况? .NET 如何确定程序集的去向?

0 投票
1 回答
592 浏览

.net - 将 DLL 存储在中央非 GAC 位置

我们正面临一个独特而痛苦的局面。传统上,我们一直使用 GAC 和策略文件来控制 .NET 应用程序的 DLL 版本。但是,我们有一个非常独特的情况,并且遇到了重大问题,因为我们的一些应用程序不尊重策略文件。尤其是引用具有策略文件的 .NET 1.1 dll 的 .NET 2.0 应用程序。

我们在 Windows 应用程序以及大量 Web 应用程序中混合了动态运行(通过反射加载)的项目。我们希望转向更多的“集中式 DLL 存储”,而不是担心 GAC 版本控制。但是我们似乎无法找到一种方法来告诉我们的应用程序“在此处查找任何 DLL”。

查看一些程序集信息节点(http://msdn.microsoft.com/en-us/library/twy1dw1e.aspx),我们可以找到一部分,但我们必须定义每个应该查找的 DLL,这是不可能的,因为我们有大约 200 个不同的应用程序需要定期更新 web.config,因为我们更新了共享 DLL 的版本。

有没有人知道我们如何移动 DLL 引用?CopyLocal 不是一个选项,因为有时我们需要应用程序来使用共享 DLL 的新版本。至少现在,GAC 也不是一个真正的选择。

0 投票
11 回答
134947 浏览

java - 部署应用程序时如何避免安装“无限强度”JCE 策略文件?

我有一个使用 256 位 AES 加密的应用程序,Java 不支持开箱即用。我知道要让它正常运行,我在安全文件夹中安装了 JCE 无限强度 jar。这对我作为开发人员来说很好,我可以安装它们。

我的问题是,由于这个应用程序将被分发,最终用户很可能不会安装这些策略文件。让最终用户下载这些只是为了使应用程序功能不是一个有吸引力的解决方案。

有没有办法让我的应用程序在不覆盖最终用户机器上的文件的情况下运行?无需安装策略文件即可处理的第三方软件?或者只是从 JAR 中引用这些策略文件的方法?

0 投票
1 回答
1282 浏览

c# - Silverlight 套接字策略不起作用

我正在尝试实现从 Windows 服务到 Silverlight 应用程序的数据推送。我创建了一个发送此策略文件的策略服务器:

使用 TCP 测试工具,我已经验证当我连接到端口 943 并发送请求时,我会收到该策略文件。

此外,在我的策略服务器中使用断点,我已经确认 Silverlight 应用程序正在访问该服务,并且该服务似乎没有错误地发送策略文件。

我还确认我的数据推送服务在上述端口上正确监听。

但是,不知何故,Silverlight 与我的数据推送服务的连接总是因 WinSock 10013 Access Denied 错误而失败。

我唯一能想到的是我的策略文件不正确,尽管据我所知它符合规范。如果您希望我发布我的任何其他代码,请告诉我。任何帮助,将不胜感激。

0 投票
1 回答
1609 浏览

.net - 是否可以删除发布者策略文件?

我有一种情况,供应商提供的程序集参考被搞砸了。基本上,它指向我不想使用的程序集版本。我使用 FusionLog 查看程序集绑定日志,并看到以下条目:

我似乎找不到发布者政策文件,我想知道是否有办法删除它?我尝试从 GAC 中删除程序集,但无济于事。

问题的背景是我被指示为 Sybase 的客户端软件安装补丁,但此补丁安装的程序集版本 (11.0.0.11292) 早于之前的程序集 (11.0.1.22582)。不要问我为什么会这样,但它确实发生了。

0 投票
2 回答
284 浏览

python - 蟒蛇在这里抱怨什么?

我正在尝试运行 Adob​​e 的示例 python 策略服务器脚本,链接到这里: http: //www.adobe.com/devnet/flashplayer/articles/socket_policy_files.html

我收到以下错误:

在上下文中:

我对python一无所知,所以这可能是非常简单明了的事情。

0 投票
1 回答
541 浏览

java - Java SecurityManager:策略文件的好介绍

您能否推荐一个关于标准 Java SecurityManager 的重要策略文件的良好介绍?

是否有超出 Java 网站提供的示例?或者也许有人描述了如何保护运行大量不同 Web 应用程序的 Tomcat?

[编辑] 我的用例是一个可以运行由三种类型的用户编写的脚本的应用程序:1. 应用程序开发人员,2. 应用程序管理员和 3. 最终用户。

第 1 组的用户需要能够访问几乎任何资源(= 不需要特殊的 SM)。

第 2 组可以信任,但我们希望保护他们免受愚蠢的错误(例如 call System.exit)。

第 3 组不可信任。他们通常只写小脚本。

当我运行一个脚本时,我知道它来自哪里。策略文件会帮助我的用例还是我需要编写自己的 SecurityManager?

0 投票
4 回答
12297 浏览

java - Java Policy file - Deny permissions to a codebase

In the Java policy file, the grant codeBase syntax specifies which codebase should be granted which permissions. for example,

grant codeBase "file:/C:/abc.jar" { permission java.security.AllPermission; };

grants AllPermission to code inside abc.jar

In a similar way, Is there a way to deny permissions to a specific syntax? Like this:

deny codeBase "file:/C:/def.jar" { permission java.io.FilePermission; };

so that the code inside def.jar gets every other permissions except the FilePermission?

Is this even possible?

I know this can be easily done using the SecurityManager class, but I just want to know if this is possible by using the policy file only.

0 投票
1 回答
4537 浏览

java - Java JCE 无限强度加密安全策略文件

JCE 策略文件(在 {java.home}/lib/security 中)是否在 JRE 更新后被标准强度策略文件覆盖?或者这些在 JRE 更新时会被单独留下吗?

编辑:有谁知道 Mac OS X JRE 是否附带无限的策略文件?

谢谢

乔恩

0 投票
2 回答
14920 浏览

java - .java.policy 文件和本地小程序

我正在使用 Javascript 与 Java 小程序交互的 HTML 页面。小程序的 HTML 页面、javascript 文件和 .jar 文件将在本地部署到用户文件系统上的文件夹中。

(将其实现为独立的 Java 应用程序在这里不是一个选项;由于各种原因,我不会在这里解释)。

小程序需要做本地文件 i/o。因此,我试图调整用户 .java.policy 文件中的设置以允许这样做。

我发现以下设置是唯一有效的设置:

这并不理想,因为它授予所有小程序读写所有文件的权限。自然,我更愿意隔离到特定的代码库。但是我找不到有效的“grant codeBase”语法。

我努力了:

这是使用此配置运行的:

  • 火狐 3.6.10
  • Java 1.6 更新 25
  • 视窗 7 64 位

在设置这个 .java.policy 文件时我哪里出错了?

我对 Java 世界非常生疏,尤其是在使用小程序时——因此感谢您的专业知识!