Class DefaultAccessControl

  • All Implemented Interfaces:
    AccessControl

    public class DefaultAccessControl
    extends java.lang.Object
    implements AccessControl
    Default implementation of package io.adminshell.aas.v3.model.AccessControl Access Control defines the local access control policy administration point. Access Control has the major task to define the access permission rules.
    • Field Detail

      • defaultEnvironmentAttributes

        protected Reference defaultEnvironmentAttributes
      • defaultPermissions

        protected Reference defaultPermissions
      • defaultSubjectAttributes

        protected Reference defaultSubjectAttributes
      • selectableEnvironmentAttributes

        protected Reference selectableEnvironmentAttributes
      • selectablePermissions

        protected Reference selectablePermissions
      • selectableSubjectAttributes

        protected Reference selectableSubjectAttributes
    • Constructor Detail

      • DefaultAccessControl

        public DefaultAccessControl()
    • Method Detail

      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object
      • equals

        public boolean equals​(java.lang.Object obj)
        Overrides:
        equals in class java.lang.Object
      • getAccessPermissionRules

        public java.util.List<AccessPermissionRule> getAccessPermissionRules()
        Description copied from interface: AccessControl
        Access permission rules of the AAS describing the rights assigned to (already authenticated) subjects to access elements of the AAS. More information under https://admin-shell.io/aas/3/0/RC01/AccessControl/accessPermissionRule
        Specified by:
        getAccessPermissionRules in interface AccessControl
        Returns:
        Returns the List of AccessPermissionRules for the property accessPermissionRules.
      • setAccessPermissionRules

        public void setAccessPermissionRules​(java.util.List<AccessPermissionRule> accessPermissionRules)
        Description copied from interface: AccessControl
        Access permission rules of the AAS describing the rights assigned to (already authenticated) subjects to access elements of the AAS. More information under https://admin-shell.io/aas/3/0/RC01/AccessControl/accessPermissionRule
        Specified by:
        setAccessPermissionRules in interface AccessControl
        Parameters:
        accessPermissionRules - desired value for the property accessPermissionRules.
      • getSelectableSubjectAttributes

        public Reference getSelectableSubjectAttributes()
        Description copied from interface: AccessControl
        Reference to a submodel defining the authenticated subjects that are configured for the AAS. They are selectable by the access permission rules to assign permissions to the subjects. Default: reference to the submodel referenced via defaultSubjectAttributes. More information under https://admin-shell.io/aas/3/0/RC01/AccessControl/selectableSubjectAttributes
        Specified by:
        getSelectableSubjectAttributes in interface AccessControl
        Returns:
        Returns the Reference for the property selectableSubjectAttributes.
      • setSelectableSubjectAttributes

        public void setSelectableSubjectAttributes​(Reference selectableSubjectAttributes)
        Description copied from interface: AccessControl
        Reference to a submodel defining the authenticated subjects that are configured for the AAS. They are selectable by the access permission rules to assign permissions to the subjects. Default: reference to the submodel referenced via defaultSubjectAttributes. More information under https://admin-shell.io/aas/3/0/RC01/AccessControl/selectableSubjectAttributes
        Specified by:
        setSelectableSubjectAttributes in interface AccessControl
        Parameters:
        selectableSubjectAttributes - desired value for the property selectableSubjectAttributes.
      • getDefaultSubjectAttributes

        public Reference getDefaultSubjectAttributes()
        Description copied from interface: AccessControl
        Reference to a submodel defining the default subjects attributes for the AAS that can be used to describe access permission rules. The submodel is of kind=Type. More information under https://admin-shell.io/aas/3/0/RC01/AccessControl/defaultSubjectAttributes
        Specified by:
        getDefaultSubjectAttributes in interface AccessControl
        Returns:
        Returns the Reference for the property defaultSubjectAttributes.
      • setDefaultSubjectAttributes

        public void setDefaultSubjectAttributes​(Reference defaultSubjectAttributes)
        Description copied from interface: AccessControl
        Reference to a submodel defining the default subjects attributes for the AAS that can be used to describe access permission rules. The submodel is of kind=Type. More information under https://admin-shell.io/aas/3/0/RC01/AccessControl/defaultSubjectAttributes
        Specified by:
        setDefaultSubjectAttributes in interface AccessControl
        Parameters:
        defaultSubjectAttributes - desired value for the property defaultSubjectAttributes.
      • getSelectablePermissions

        public Reference getSelectablePermissions()
        Description copied from interface: AccessControl
        Reference to a submodel defining which permissions can be assigned to the subjects. Default: reference to the submodel referenced via defaultPermissions More information under https://admin-shell.io/aas/3/0/RC01/AccessControl/selectablePermissions
        Specified by:
        getSelectablePermissions in interface AccessControl
        Returns:
        Returns the Reference for the property selectablePermissions.
      • setSelectablePermissions

        public void setSelectablePermissions​(Reference selectablePermissions)
        Description copied from interface: AccessControl
        Reference to a submodel defining which permissions can be assigned to the subjects. Default: reference to the submodel referenced via defaultPermissions More information under https://admin-shell.io/aas/3/0/RC01/AccessControl/selectablePermissions
        Specified by:
        setSelectablePermissions in interface AccessControl
        Parameters:
        selectablePermissions - desired value for the property selectablePermissions.
      • getDefaultPermissions

        public Reference getDefaultPermissions()
        Description copied from interface: AccessControl
        Reference to a submodel defining the default permissions for the AAS. More information under https://admin-shell.io/aas/3/0/RC01/AccessControl/defaultPermissions
        Specified by:
        getDefaultPermissions in interface AccessControl
        Returns:
        Returns the Reference for the property defaultPermissions.
      • setDefaultPermissions

        public void setDefaultPermissions​(Reference defaultPermissions)
        Description copied from interface: AccessControl
        Reference to a submodel defining the default permissions for the AAS. More information under https://admin-shell.io/aas/3/0/RC01/AccessControl/defaultPermissions
        Specified by:
        setDefaultPermissions in interface AccessControl
        Parameters:
        defaultPermissions - desired value for the property defaultPermissions.
      • getSelectableEnvironmentAttributes

        public Reference getSelectableEnvironmentAttributes()
        Description copied from interface: AccessControl
        Reference to a submodel defining which environment attributes can be accessed via the permission rules. More information under https://admin-shell.io/aas/3/0/RC01/AccessControl/selectableEnvironmentAttributes
        Specified by:
        getSelectableEnvironmentAttributes in interface AccessControl
        Returns:
        Returns the Reference for the property selectableEnvironmentAttributes.
      • setSelectableEnvironmentAttributes

        public void setSelectableEnvironmentAttributes​(Reference selectableEnvironmentAttributes)
        Description copied from interface: AccessControl
        Reference to a submodel defining which environment attributes can be accessed via the permission rules. More information under https://admin-shell.io/aas/3/0/RC01/AccessControl/selectableEnvironmentAttributes
        Specified by:
        setSelectableEnvironmentAttributes in interface AccessControl
        Parameters:
        selectableEnvironmentAttributes - desired value for the property selectableEnvironmentAttributes.
      • getDefaultEnvironmentAttributes

        public Reference getDefaultEnvironmentAttributes()
        Description copied from interface: AccessControl
        Reference to a submodel defining default environment attributes, i.e. attributes that are not describing the asset itself. The submodel is of kind=Type. At the same type the values of these environment attributes need to be accessible when evaluating the access permission rules. This is realized as a policy information point. More information under https://admin-shell.io/aas/3/0/RC01/AccessControl/defaultEnvironmentAttributes
        Specified by:
        getDefaultEnvironmentAttributes in interface AccessControl
        Returns:
        Returns the Reference for the property defaultEnvironmentAttributes.
      • setDefaultEnvironmentAttributes

        public void setDefaultEnvironmentAttributes​(Reference defaultEnvironmentAttributes)
        Description copied from interface: AccessControl
        Reference to a submodel defining default environment attributes, i.e. attributes that are not describing the asset itself. The submodel is of kind=Type. At the same type the values of these environment attributes need to be accessible when evaluating the access permission rules. This is realized as a policy information point. More information under https://admin-shell.io/aas/3/0/RC01/AccessControl/defaultEnvironmentAttributes
        Specified by:
        setDefaultEnvironmentAttributes in interface AccessControl
        Parameters:
        defaultEnvironmentAttributes - desired value for the property defaultEnvironmentAttributes.