org.apache.ignite.plugin.security

## Interface SecuritySubject

- All Superinterfaces:
    Serializable

      public interface SecuritySubject
      extends Serializable

  Security subject representing authenticated node with a set of permissions.

- - ### Method Summary

    All Methods Instance Methods Abstract Methods Default Methods Deprecated Methods
    Modifier and Type | Method and Description
    --- | ---
    `InetSocketAddress` | `address()` Gets subject connection address.
    `default Certificate[]` | `certificates()` Gets subject client certificates, or `null` if SSL were not used or client certificate checking not enabled.
    `UUID` | `id()` Gets subject ID.
    `Object` | `login()` Login provided via subject security credentials.
    `SecurityPermissionSet` | `permissions()` Deprecated. `SecuritySubject` must contain only immutable set of information that represents a security principal. Security permissions are part of authorization process and have nothing to do with `SecuritySubject`. This method will be removed in the future releases.
    `default PermissionCollection` | `sandboxPermissions()` Deprecated. `SecuritySubject` must contain only immutable set of information that represents a security principal. Security permissions are part of authorization process and have nothing to do with `SecuritySubject`. This method will be removed in the future releases.
    `SecuritySubjectType` | `type()` Gets subject type for node.

- - ### Method Detail

    - #### id

          UUID id()

      Gets subject ID.
      Returns:
        Subject ID.

    - #### type

          SecuritySubjectType type()

      Gets subject type for node.
      Returns:
        Subject type.

    - #### login

          Object login()

      Login provided via subject security credentials.
      Returns:
        Login object.

    - #### address

          InetSocketAddress address()

      Gets subject connection address. Usually `InetSocketAddress` representing connection IP and port.
      Returns:
        Subject connection address.

    - #### certificates

          default Certificate[] certificates()

      Gets subject client certificates, or `null` if SSL were not used or client certificate checking not enabled.
      Returns:
        Subject client certificates.

    - #### permissions

          @Deprecated
          SecurityPermissionSet permissions()

      Deprecated. `SecuritySubject` must contain only immutable set of information that represents a security principal. Security permissions are part of authorization process and have nothing to do with `SecuritySubject`. This method will be removed in the future releases.
      Authorized permission set for the subject.
      Returns:
        Authorized permission set for the subject.

    - #### sandboxPermissions

          @Deprecated
          default PermissionCollection sandboxPermissions()

      Deprecated. `SecuritySubject` must contain only immutable set of information that represents a security principal. Security permissions are part of authorization process and have nothing to do with `SecuritySubject`. This method will be removed in the future releases.
      Returns:
        Permissions for SecurityManager checks.

${current.year} Copyright © Apache Software Foundation
| Follow @ApacheIgnite
Ignite Database and Caching Platform | : ver. 2.16.0
Release Date | : December 15 2023