## Uses of Interface
com.holonplatform.auth.Permission

- Packages that use Permission
  Package | Description
  --- | ---
  com.holonplatform.auth |
  com.holonplatform.auth.internal |
  com.holonplatform.spring.security |
  com.holonplatform.spring.security.internal |

- - ### Uses of Permission in com.holonplatform.auth

    Classes in com.holonplatform.auth with type parameters of type Permission
    Modifier and Type | Interface and Description
    --- | ---
    `interface` | `Authorizer<P extends Permission>` An Authorizer is responsible for `Authentication` authorization control using `Authentication.getPermissions()` permissions.

    Methods in com.holonplatform.auth with type parameters of type Permission
    Modifier and Type | Method and Description
    --- | ---
    `<P extends Permission> void` | Realm.`addAuthorizer(Authorizer<P> authorizer)` Add and `Authorizer` to support a specific `Permission` type
    `default <P extends Permission> Realm.Builder` | Realm.Builder.`authorizer(Authorizer<P> authorizer)` Deprecated. Use `Realm.Builder.withAuthorizer(Authorizer)`
    `<P extends Permission> Realm.Builder` | Realm.Builder.`withAuthorizer(Authorizer<P> authorizer)` Register given `Authorizer` in Realm.

    Methods in com.holonplatform.auth that return Permission
    Modifier and Type | Method and Description
    --- | ---
    `static Permission` | Permission.`create(String permission)` Create a default Permission implementation, using given `permission` String to represent permission authority.

    Methods in com.holonplatform.auth that return types with arguments of type Permission
    Modifier and Type | Method and Description
    --- | ---
    `static Authorizer<Permission>` | Authorizer.`create()` Create a default Authorizer.
    `Collection<Permission>` | Account.`getPermissions()` Optional permissions granted to account
    `Collection<Permission>` | Authentication.`getPermissions()` Set of `Permission`s granted to principal with this Authentication

    Methods in com.holonplatform.auth with parameters of type Permission
    Modifier and Type | Method and Description
    --- | ---
    `default <T extends P> boolean` | Authorizer.`isPermitted(Authentication authentication, T... permissions)` Check if given Authentication has all the specified permission/s.
    `default boolean` | AuthenticationInspector.`isPermitted(Permission... permissions)` Checks if the current `Authentication` has all the specified `Permission`s.
    `default <T extends P> boolean` | Authorizer.`isPermittedAny(Authentication authentication, T... permissions)` Check if given Authentication has any of the specified permission/s.
    `default boolean` | AuthenticationInspector.`isPermittedAny(Permission... permissions)` Checks if the current `Authentication` has any of the specified `Permission`.
    `default Account.Builder` | Account.Builder.`permission(Permission permission)` Deprecated. Use `Account.Builder.withPermission(Permission)`
    `default Authentication.Builder` | Authentication.Builder.`permission(Permission permission)` Deprecated. Use `Authentication.Builder.withPermission(Permission)`
    `Account.Builder` | Account.Builder.`withPermission(Permission permission)` Add a permission granted to Account
    `Authentication.Builder` | Authentication.Builder.`withPermission(Permission permission)` Add a permission granted to Authentication

    Method parameters in com.holonplatform.auth with type arguments of type Permission
    Modifier and Type | Method and Description
    --- | ---
    `boolean` | AuthenticationInspector.`isPermitted(Collection<? extends Permission> permissions)` Checks if the current `Authentication` has all the specified `Permission`s.
    `boolean` | AuthenticationInspector.`isPermittedAny(Collection<? extends Permission> permissions)` Checks if the current `Authentication` has any of the specified `Permission`.
    `Account.Builder` | Account.Builder.`permissions(Collection<Permission> permissions)` Set permissions granted to Account.
    `boolean` | Realm.`supportsPermission(Class<? extends Permission> permissionType)` Returns whether this Realm supports given `Permission` type

  - ### Uses of Permission in com.holonplatform.auth.internal

    Classes in com.holonplatform.auth.internal with type parameters of type Permission
    Modifier and Type | Class and Description
    --- | ---
    `class` | `AbstractAuthorizer<P extends Permission>` Abstract `Authorizer` implementation

    Classes in com.holonplatform.auth.internal that implement Permission
    Modifier and Type | Class and Description
    --- | ---
    `class` | `DefaultPermission` Default `Permission` implementation, using a String to represent permission authority.

    Methods in com.holonplatform.auth.internal with type parameters of type Permission
    Modifier and Type | Method and Description
    --- | ---
    `<P extends Permission> void` | DefaultRealm.`addAuthorizer(Authorizer<P> authorizer)`
    `<P extends Permission> Realm.Builder` | DefaultRealm.RealmBuilder.`withAuthorizer(Authorizer<P> authorizer)`

    Methods in com.holonplatform.auth.internal that return types with arguments of type Permission
    Modifier and Type | Method and Description
    --- | ---
    `Collection<Permission>` | DefaultAccount.`getPermissions()`
    `Collection<Permission>` | DefaultAuthentication.`getPermissions()`
    `Class<? extends Permission>` | DefaultAuthorizer.`getPermissionType()`
    `Class<? extends Permission>` | DefaultRealm.`getPermissionType()`

    Methods in com.holonplatform.auth.internal with parameters of type Permission
    Modifier and Type | Method and Description
    --- | ---
    `boolean` | DefaultRealm.`isPermitted(Authentication authentication, Permission... permissions)`
    `<T extends P> boolean` | AbstractAuthorizer.`isPermitted(Authentication authentication, T... permissions)`
    `boolean` | DefaultAuthContext.`isPermitted(Permission... permissions)`
    `boolean` | DefaultRealm.`isPermittedAny(Authentication authentication, Permission... permissions)`
    `<T extends P> boolean` | AbstractAuthorizer.`isPermittedAny(Authentication authentication, T... permissions)`
    `boolean` | DefaultAuthContext.`isPermittedAny(Permission... permissions)`
    `Account.Builder` | DefaultAccount.AccountBuilder.`withPermission(Permission permission)`
    `Authentication.Builder` | DefaultAuthentication.AuthenticationBuilder.`withPermission(Permission permission)`

    Method parameters in com.holonplatform.auth.internal with type arguments of type Permission
    Modifier and Type | Method and Description
    --- | ---
    `boolean` | DefaultRealm.`isPermitted(Authentication authentication, Collection<? extends Permission> permissions)`
    `boolean` | DefaultAuthContext.`isPermitted(Collection<? extends Permission> permissions)`
    `boolean` | DefaultRealm.`isPermittedAny(Authentication authentication, Collection<? extends Permission> permissions)`
    `boolean` | DefaultAuthContext.`isPermittedAny(Collection<? extends Permission> permissions)`
    `Account.Builder` | DefaultAccount.AccountBuilder.`permissions(Collection<Permission> permissions)`
    `void` | DefaultAccount.`setPermissions(Collection<Permission> permissions)` Set account permissions
    `boolean` | DefaultRealm.`supportsPermission(Class<? extends Permission> permissionType)`

  - ### Uses of Permission in com.holonplatform.spring.security

    Methods in com.holonplatform.spring.security that return Permission
    Modifier and Type | Method and Description
    --- | ---
    `static Permission` | SpringSecurity.`asPermission(org.springframework.security.core.GrantedAuthority authority)` Get the `Permission` representation of the given Spring Security `GrantedAuthority`.

    Methods in com.holonplatform.spring.security with parameters of type Permission
    Modifier and Type | Method and Description
    --- | ---
    `static org.springframework.security.core.GrantedAuthority` | SpringSecurity.`asAuthority(Permission permission)` Get the Spring Security `GrantedAuthority` representation of the given `Permission`.

  - ### Uses of Permission in com.holonplatform.spring.security.internal

    Classes in com.holonplatform.spring.security.internal that implement Permission
    Modifier and Type | Class and Description
    --- | ---
    `class` | `SpringSecurityPermission` `Permission` representation using a Spring Security `GrantedAuthority`.

    Methods in com.holonplatform.spring.security.internal that return types with arguments of type Permission
    Modifier and Type | Method and Description
    --- | ---
    `Collection<Permission>` | DefaultSpringSecurityAuthentication.`getPermissions()`

    Constructors in com.holonplatform.spring.security.internal with parameters of type Permission
    Constructor and Description
    `PermissionGrantedAuthority(Permission permission)` Constructor.

Copyright © 2019 The Holon Platform. All rights reserved.