授予所需的权限

要创建新条目,请单击“策略工具”主窗口中的“添加策略条目”按钮。这将显示“策略条目”对话框,如下图所示。

策略 Importing 对话框

策略条目为来自特定代码源的代码指定一个或多个权限-来自特定位置(URL)的代码,由特定实体签名的代码,或两者。

CodeBaseSignedBy 文本框指定您要授予要在文件中添加的权限的代码。

  • CodeBase 值指示代码源位置;您授予从该位置进行编码的权限。空的 CodeBase 条目表示“任何代码”-不论代码起源于何处。

  • SignedBy 值指示存储在密钥库中的证书的别名。该证书中的公钥用于验证代码上的数字签名。您授予对由别名指定的密钥库条目中与公钥相对应的私钥签名的代码的权限。 SignedBy 项是可选的;省略它表示“任何签名者”,即代码是由谁签名还是由谁签名都没有关系。

如果您同时具有 CodeBaseSignedBy 条目,则仅对来自指定位置并由命名别名签名的代码授予权限。

您可以从存储示例的位置(URL)授予所有代码权限。

在“策略条目”对话框的“代码库”文本框中键入以下 URL:

https://docs.oracle.com/javase/tutorial/security/tour1/examples/

注意: 这是一个 URL。因此,它必须始终使用斜杠作为分隔符,而不是反斜杠。

SignedBy 文本框留为空白,因为您不需要对代码进行签名。

Note:

要不仅从先前指定的目录中而且从security目录及其子目录中授予任何代码(.class文件)的权限,请在 CodeBase 框中键入以下 URL:

https://docs.oracle.com/javase/tutorial/security/

您已经指定了代码的来源( CodeBase ),并且不必对代码进行签名(因为没有 SignedBy 值)。

现在,您已经指定了此策略条目,因此在“策略条目”对话框中单击“完成”按钮。现在,“策略工具”窗口包含一行代表策略条 Object 行,其中显示CodeBase值。

PolicyTool 窗口,显示新的策略条目

注意: 我们将在下一课中授予对此新策略条 Object 权限。