java.nio.file.LinkPermission 类处理链接创建操作的权限。这些类允许的权限如下:
权限名称 |
什么权限允许 |
授予此权限的风险 |
---|---|---|
hard |
此权限允许将现有文件添加到目录中。此操作也称为创建硬链接。 |
攻击者可能有权访问所有文件,因为此权限允许链接到文件系统中的任何文件。 |
symbolic |
此权限允许创建文件指针。此操作也称为创建软/符号链接。 |
攻击者可能有权访问所有文件,因为此权限允许链接到文件系统中的任何文件。 |
类声明:
public final class LinkPermission extends BasicPermission
构造函数:
构造函数 | 说明 |
---|---|
LinkPermission(String name) | 此构造函数用于创建具有指定名称的LinkPermission。 |
LinkPermission(String name, String actions) | 此构造函数用于创建具有指定名称和操作的LinkPermission。 |
从类 java.security.BasicPermission 继承的方法:
方法 | 说明 |
---|---|
equals(Object obj) | 该方法检查两个BasicPermission对象是否相等 |
getActions() | 该方法以字符串格式返回操作 |
hashCode() | 该方法返回该对象的哈希码值 |
implies(Permission permission) | 此方法检查该对象是否隐含给定的权限 |
newPermissionCollection() | 此方法返回一个新的PermissionCollection对象 |
示例 1:Java程序创建新硬盘LinkPermission
Java
// Java program to create a new hard LinkPermission
import java.nio.file.LinkPermission;
import java.security.Permission;
// Driver class
public class GFG {
// Main method
public static void main(String[] args)
{
try {
// Creating a new LinkPermission object
Permission permission
= new LinkPermission("hard");
// Printing name of the permission
System.out.println(permission.getName());
// Printing class of the permission object
System.out.println(permission.getClass());
// Printing hash value of the permission object
System.out.println(permission.hashCode());
}
catch (Exception e) {
e.printStackTrace();
}
}
}
输出
hard class java.nio.file.LinkPermission 3195115
示例 2:Java程序创建一个新的符号LinkPermission
Java
// Java program to create a new symbolic LinkPermission
import java.nio.file.LinkPermission;
import java.security.Permission;
// Driver class
public class GFG {
// Main method
public static void main(String[] args)
{
try {
// Creating a new LinkPermission object
Permission permission
= new LinkPermission("symbolic");
// Printing name of the permission
System.out.println(permission.getName());
// Printing class of the permission object
System.out.println(permission.getClass());
// Printing hash value of the permission object
System.out.println(permission.hashCode());
}
catch (Exception e) {
e.printStackTrace();
}
}
}
输出
symbolic class java.nio.file.LinkPermission 1787985074
示例 3:比较两个LinkPermission对象的Java程序
Java
// Java program to compare two LinkPermission objects
import java.nio.file.LinkPermission;
import java.security.Permission;
// Driver class
public class GFG {
// Main method
public static void main(String[] args)
{
try {
Permission hardPermission
= new LinkPermission("hard");
Permission softPermission
= new LinkPermission("symbolic");
// Checking is both permissions are equal or not
if (hardPermission.equals(softPermission)) {
System.out.println(
"Both permission are equal");
}
else {
System.out.println(
"Both permission are not equal");
}
}
catch (Exception e) {
e.printStackTrace();
}
}
}
输出
Both permission are not equal
相关用法
- Java java.nio.file.FileStore用法及代码示例
- Java java.nio.file.attribute.AclEntry用法及代码示例
- Java java.nio.file.spi.FileTypeDetector用法及代码示例
- Java java.nio.file.attribute.FileTime用法及代码示例
- Java java.nio.file.SimpleFileVisitor用法及代码示例
- Java java.nio.file.FileSystems用法及代码示例
- Java java.nio.file.FileSystem用法及代码示例
- Java java.nio.file.Paths用法及代码示例
- Java java.nio.ByteBuffer用法及代码示例
- Java java.nio.IntBuffer用法及代码示例
- Java java.nio.FloatBuffer用法及代码示例
- Java java.nio.ShortBuffer用法及代码示例
- Java java.nio.DoubleBuffer用法及代码示例
- Java java.nio.channels.spi.SelectorProvider用法及代码示例
- Java java.nio.charset.CoderResult用法及代码示例
- Java java.nio.charset.CodingErrorAction用法及代码示例
- Java java.nio.channels.spi.AsynchronousChannelProvider用法及代码示例
- Java java.nio.charset.CharsetEncoder用法及代码示例
- Java java.nio.charset.Charset用法及代码示例
- Java java.nio.LongBuffer用法及代码示例
- Java java.nio.channels.Selector用法及代码示例
- Java java.nio.ByteOrder用法及代码示例
- Java java.nio.CharBuffer用法及代码示例
- Java java.nio.Buffer用法及代码示例
- Java java.net.SocketException用法及代码示例
注:本文由纯净天空筛选整理自abhinavjain194大神的英文原创作品 java.nio.file.LinkPermission Class in Java。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。