Module java.base
Package java.nio.file

Class LinkPermission

  • All Implemented Interfaces:
    Serializable, Guard

    public final class LinkPermission
    extends BasicPermission
    The Permission class for link creation operations.

    The following table provides a summary description of what the permission allows, and discusses the risks of granting code the permission.

    Table shows permission target name, what the permission allows, and associated risks
    Permission Target Name What the Permission Allows Risks of Allowing this Permission
    hard Ability to add an existing file to a directory. This is sometimes known as creating a link, or hard link. Extreme care should be taken when granting this permission. It allows linking to any file or directory in the file system thus allowing the attacker access to all files.
    symbolic Ability to create symbolic links. Extreme care should be taken when granting this permission. It allows linking to any file or directory in the file system thus allowing the attacker to access to all files.

    Since:
    1.7
    See Also:
    Files.createLink(java.nio.file.Path, java.nio.file.Path), Files.createSymbolicLink(java.nio.file.Path, java.nio.file.Path, java.nio.file.attribute.FileAttribute<?>...), Serialized Form
    • Constructor Detail

      • LinkPermission

        public LinkPermission​(String name)
        Constructs a LinkPermission with the specified name.
        Parameters:
        name - the name of the permission. It must be "hard" or "symbolic".
        Throws:
        IllegalArgumentException - if name is empty or invalid
      • LinkPermission

        public LinkPermission​(String name,
                              String actions)
        Constructs a LinkPermission with the specified name.
        Parameters:
        name - the name of the permission; must be "hard" or "symbolic".
        actions - the actions for the permission; must be the empty string or null
        Throws:
        IllegalArgumentException - if name is empty or invalid, or actions is a non-empty string