## Uses of Interface
java.security.Guard

- Packages that use Guard
  Package | Description
  --- | ---
  com.sun.jdi | This is the core package of the Java Debug Interface (JDI), it defines mirrors for values, types, and the target VirtualMachine itself - as well bootstrapping facilities.
  com.sun.security.jgss | This package defines classes and interfaces for the JDK extensions to the GSS-API.
  com.sun.tools.attach | Provides the API to attach to a Java™ virtual machine.
  java.awt | Contains all of the classes for creating user interfaces and for painting graphics and images.
  java.io | Provides for system input and output through data streams, serialization and the file system.
  java.lang | Provides classes that are fundamental to the design of the Java programming language.
  java.lang.management | Provides the management interfaces for monitoring and management of the Java virtual machine and other components in the Java runtime.
  java.lang.reflect | Provides classes and interfaces for obtaining reflective information about classes and objects.
  java.net | Provides the classes for implementing networking applications.
  java.nio.file | Defines interfaces and classes for the Java virtual machine to access files, file attributes, and file systems.
  java.security | Provides the classes and interfaces for the security framework.
  java.sql | Provides the API for accessing and processing data stored in a data source (usually a relational database) using the Java™ programming language.
  java.util | Contains the collections framework, some internationalization support classes, a service loader, properties, random number generation, string parsing and scanning classes, base64 encoding and decoding, a bit array, and several miscellaneous utility classes.
  java.util.logging | Provides the classes and interfaces of the Java™ 2 platform's core logging facilities.
  javax.management | Provides the core classes for the Java Management Extensions.
  javax.management.remote | Interfaces for remote access to JMX MBean servers.
  javax.net.ssl | Provides classes for the secure socket package.
  javax.security.auth | This package provides a framework for authentication and authorization.
  javax.security.auth.kerberos | This package contains utility classes related to the Kerberos network authentication protocol.
  javax.smartcardio | Java™ Smart Card I/O API
  javax.sound.sampled | Provides interfaces and classes for capture, processing, and playback of sampled audio data.
  jdk.jfr | This package provides classes to create events and control Flight Recorder.
  jdk.net | Platform specific socket options for the `java.net` and `java.nio.channels` socket classes.

- - ### Uses of Guard in com.sun.jdi

    Classes in com.sun.jdi that implement Guard
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `JDIPermission` | The `JDIPermission` class represents access rights to the `VirtualMachineManager`.

  - ### Uses of Guard in com.sun.security.jgss

    Classes in com.sun.security.jgss that implement Guard
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `InquireSecContextPermission` | This class is used to protect various attributes of an established GSS security context that can be accessed using the `ExtendedGSSContext.inquireSecContext(com.sun.security.jgss.InquireType)` method.

  - ### Uses of Guard in com.sun.tools.attach

    Classes in com.sun.tools.attach that implement Guard
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `AttachPermission` | When a `SecurityManager` set, this is the permission which will be checked when code invokes `VirtualMachine.attach` to attach to a target virtual machine.

  - ### Uses of Guard in java.awt

    Classes in java.awt that implement Guard
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `AWTPermission` | This class is for AWT permissions.

  - ### Uses of Guard in java.io

    Classes in java.io that implement Guard
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `FilePermission` | This class represents access to a file or directory.
    `class` | `SerializablePermission` | This class is for Serializable permissions.

  - ### Uses of Guard in java.lang

    Classes in java.lang that implement Guard
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `RuntimePermission` | This class is for runtime permissions.

  - ### Uses of Guard in java.lang.management

    Classes in java.lang.management that implement Guard
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `ManagementPermission` | The permission which the SecurityManager will check when code that is running with a SecurityManager calls methods defined in the management interface for the Java platform.

  - ### Uses of Guard in java.lang.reflect

    Classes in java.lang.reflect that implement Guard
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `ReflectPermission` | The Permission class for reflective operations.

  - ### Uses of Guard in java.net

    Classes in java.net that implement Guard
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `NetPermission` | This class is for various network permissions.
    `class` | `SocketPermission` | This class represents access to a network via sockets.
    `class` | `URLPermission` | Represents permission to access a resource or set of resources defined by a given url, and for a given set of user-settable request methods and request headers.

  - ### Uses of Guard in java.nio.file

    Classes in java.nio.file that implement Guard
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `LinkPermission` | The `Permission` class for link creation operations.

  - ### Uses of Guard in java.security

    Classes in java.security that implement Guard
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `AllPermission` | The AllPermission is a permission that implies all other permissions.
    `class` | `BasicPermission` | The BasicPermission class extends the Permission class, and can be used as the base class for permissions that want to follow the same naming convention as BasicPermission.
    `class` | `Permission` | Abstract class for representing access to a system resource.
    `class` | `SecurityPermission` | This class is for security permissions.
    `class` | `UnresolvedPermission` | The UnresolvedPermission class is used to hold Permissions that were "unresolved" when the Policy was initialized.

    Constructors in java.security with parameters of type Guard
    Constructor | Description
    --- | ---
    `GuardedObject​(Object object, Guard guard)` | Constructs a GuardedObject using the specified object and guard.

  - ### Uses of Guard in java.sql

    Classes in java.sql that implement Guard
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `SQLPermission` | The permission for which the `SecurityManager` will check when code that is running an application with a `SecurityManager` enabled, calls the `DriverManager.deregisterDriver` method, `DriverManager.setLogWriter` method, `DriverManager.setLogStream` (deprecated) method, `SyncFactory.setJNDIContext` method, `SyncFactory.setLogger` method, `Connection.setNetworkTimeout` method, or the `Connection.abort` method.

  - ### Uses of Guard in java.util

    Classes in java.util that implement Guard
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `PropertyPermission` | This class is for property permissions.

  - ### Uses of Guard in java.util.logging

    Classes in java.util.logging that implement Guard
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `LoggingPermission` | The permission which the SecurityManager will check when code that is running with a SecurityManager calls one of the logging control methods (such as Logger.setLevel).

  - ### Uses of Guard in javax.management

    Classes in javax.management that implement Guard
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `MBeanPermission` | Permission controlling access to MBeanServer operations.
    `class` | `MBeanServerPermission` | A Permission to perform actions related to MBeanServers.
    `class` | `MBeanTrustPermission` | This permission represents "trust" in a signer or codebase.

  - ### Uses of Guard in javax.management.remote

    Classes in javax.management.remote that implement Guard
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `SubjectDelegationPermission` | Permission required by an authentication identity to perform operations on behalf of an authorization identity.

  - ### Uses of Guard in javax.net.ssl

    Classes in javax.net.ssl that implement Guard
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `SSLPermission` | This class is for various network permissions.

  - ### Uses of Guard in javax.security.auth

    Classes in javax.security.auth that implement Guard
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `AuthPermission` | This class is for authentication permissions.
    `class` | `PrivateCredentialPermission` | This class is used to protect access to private Credentials belonging to a particular `Subject`.

  - ### Uses of Guard in javax.security.auth.kerberos

    Classes in javax.security.auth.kerberos that implement Guard
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `DelegationPermission` | This class is used to restrict the usage of the Kerberos delegation model, ie: forwardable and proxiable tickets.
    `class` | `ServicePermission` | This class is used to protect Kerberos services and the credentials necessary to access those services.

  - ### Uses of Guard in javax.smartcardio

    Classes in javax.smartcardio that implement Guard
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `CardPermission` | A permission for Smart Card operations.

  - ### Uses of Guard in javax.sound.sampled

    Classes in javax.sound.sampled that implement Guard
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `AudioPermission` | The `AudioPermission` class represents access rights to the audio system resources.

  - ### Uses of Guard in jdk.jfr

    Classes in jdk.jfr that implement Guard
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `FlightRecorderPermission` | Permission for controlling access to Flight Recorder.

  - ### Uses of Guard in jdk.net

    Classes in jdk.net that implement Guard
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `NetworkPermission` | Represents permission to access the extended networking capabilities defined in the jdk.net package.