Applet数字签名:权限与本地资源访问指南
需积分: 9 192 浏览量
更新于2024-09-18
收藏 15KB DOCX 举报
本文主要介绍了如何使用Applet进行数字签名以及授予本地资源访问权限的过程。Applet是Java平台上的小应用程序,通常嵌入在Web浏览器中运行。数字签名是确保软件完整性和来源可信的重要手段。
首先,我们需要创建一个包含Applet代码的Jar包。在命令行中,通过`jar-cvf MyApplet.jar class`命令打包Applet类文件(如`jcomponent.FileReaderApplet.class`),这一步确保了代码的组织和管理。
接着,当将Applet嵌入到HTML页面中,使用`<APPLET>`标签指定Applet的属性,包括`CODEBASE`(定义代码的源位置)、`CODE`(引用Applet类)、`ARCHIVE`(包含的文件列表)以及宽度、高度等。例如:
```html
<APPLET CODEBASE="."
CODE="jcomponent.FileReaderApplet.class"
ARCHIVE="MyClass.jar"
NAME="TestApplet"
WIDTH=400
HEIGHT=300
HSPACE=0
VSPACE=0
ALIGN=middle>
</APPLET>
```
接下来是关键的数字签名步骤:
1. 使用`keytool`工具生成密钥库(keystore),通过`keytool -genkey -keystore pepper.store -alias pepper`命令创建,同时设置密钥库密码。这一步确保了签名的安全性。
2. 为了签署Applet,执行`keytool -export -keystore pepper.store -alias pepper -file pepper.cert`,生成用于签名的证书文件。
最后,为了赋予Applet访问本地资源的权限,我们需要创建一个策略文件`applet.policy`。在这个文件中,通过`signedBy`声明证书持有者(此处为`pepper`),并使用`java.io.FilePermission`允许指定权限,如读取所有文件:
```xml
keystore "file:c:/admin/pepper.store", "JKS";
grants signedBy "pepper" {
permission java.io.FilePermission "<ALLFILES>", "read";
};
```
将此策略文件添加到`${java.home}/jre/lib/security`目录下,这样就确保了只有经过签名的由`pepper`证书签署的Applet才能在用户的浏览器中运行,并且能够访问本地文件系统。
Applet做数字签名是提高其安全性和可信度的关键步骤,通过生成密钥库、证书、策略文件的管理,可以有效地控制Applet的权限,保护用户数据的安全。
2009-04-19 上传
2013-01-29 上传
2021-01-08 上传
2011-07-18 上传
2009-05-12 上传
2010-04-27 上传
2022-07-12 上传
2013-06-25 上传
赖皮
- 粉丝: 0
- 资源: 4
最新资源
- 构建基于Django和Stripe的SaaS应用教程
- Symfony2框架打造的RESTful问答系统icare-server
- 蓝桥杯Python试题解析与答案题库
- Go语言实现NWA到WAV文件格式转换工具
- 基于Django的医患管理系统应用
- Jenkins工作流插件开发指南:支持Workflow Python模块
- Java红酒网站项目源码解析与系统开源介绍
- Underworld Exporter资产定义文件详解
- Java版Crash Bandicoot资源库:逆向工程与源码分享
- Spring Boot Starter 自动IP计数功能实现指南
- 我的世界牛顿物理学模组深入解析
- STM32单片机工程创建详解与模板应用
- GDG堪萨斯城代码实验室:离子与火力基地示例应用
- Android Capstone项目:实现Potlatch服务器与OAuth2.0认证
- Cbit类:简化计算封装与异步任务处理
- Java8兼容的FullContact API Java客户端库介绍