com.sap.sl.sdk.authoring.cms
Interface UniverseSecurityCache


public interface UniverseSecurityCache

Object used to manage a universe security profiles definition and assignments:

  • Security profiles can be attached, detached or updated by adding, deleting or modifying security profiles from the lists retrieved by calling getDataSecurityProfiles() and getBusinessSecurityProfiles().

  • Principals (users or groups) can be assigned, unassigned or updated by adding, deleting or modifying principals from the list retrieved by calling getPrincipals(SecurityProfile).

  • A UniverseSecurityCache object can be retrieved by calling the method CmsSecurityService.getUniverseSecurityCache(String).


    Since:
    14.4.0
    See Also:
    CmsSecurityService#getUniverseSecurityCache(String)}, DataSecurityProfile}, BusinessSecurityProfile}, Principal}

    Method Summary
     void close()
              Closes the UniverseSecurityCache once it is no longer in use.
     IStatus commit()
               
     java.util.List<BusinessSecurityProfile> getBusinessSecurityProfiles()
               
     java.util.List<DataSecurityProfile> getDataSecurityProfiles()
               
     java.util.List<Principal> getPrincipals(SecurityProfile securityProfile)
               
     java.lang.String getUniversePath()
              Get the path of the universe in the CMS.
     

    Method Detail

    getDataSecurityProfiles

    java.util.List<DataSecurityProfile> getDataSecurityProfiles()
                                                                throws SlException

    Get the data security profiles attached to the universe.

    Note that if a data security profile from this list is added to another list of data security profiles, it is removed from the former.


    Returns:
    The list of DataSecurityProfile attached to the universe.
    Throws:
    SlException - if the universe security cache is closed.
    Since:
    14.4.0
    See Also:
    DataSecurityProfile}

    getBusinessSecurityProfiles

    java.util.List<BusinessSecurityProfile> getBusinessSecurityProfiles()
                                                                        throws SlException

    Get the business security profiles attached to the universe.

    Note that if a business security profile from this list is added to another list of business security profiles, it is removed from the former.


    Returns:
    The list of BusinessSecurityProfile attached to the universe.
    Throws:
    SlException - if the universe security cache is closed.
    Since:
    14.4.0
    See Also:
    BusinessSecurityProfile}

    getPrincipals

    java.util.List<Principal> getPrincipals(SecurityProfile securityProfile)
                                            throws SlException

    Get the list of principals (users or groups) assigned to the specified security profile.

    Note that if a principal from this list is added to another list of principals, it is removed from the former.


    Parameters:
    securityProfile - DataSecurityProfile or BusinessSecurityProfile to get the assigned principals of.
    Returns:
    The list of Principal assigned to the security profile.
    Throws:
    SlException - if the universe security cache is closed.
    Since:
    14.4.0
    See Also:
    Principal}

    commit

    IStatus commit()
                   throws SlException

    Commit the content of the universe security cache to the CMS.

    Any external modification done to the universe security will be overwritten by the content of the universe security cache.


    Returns:
    A IStatus object containing the status of the commit.

    The IStatus severity is Severity.OK if no error occurred. If errors occurred, the IStatus attached to the SlException thrown contains the details about the errors.

    Throws:
    SlException - in the following cases:
  • The universe security cache is closed.
  • Security profiles lists have been changed without the ‘Edit security profiles’ right.
  • Principals list has been changed without the ‘Assign security profiles’ right.
  • Security profiles have duplicate or invalid names.
  • Principals are duplicate (name and type), have an invalid name or don’t exist in the CMS.
  • The BI Platform returned an error while committing the universe security cache.
  • Since:
    14.4.0

    close

    void close()
               throws SlException
    Closes the UniverseSecurityCache once it is no longer in use.

    Throws:
    SlException
    Since:
    14.4.0

    getUniversePath

    java.lang.String getUniversePath()
    Get the path of the universe in the CMS.

    Returns:
    A String that represents the path of the universe in the CMS repository, from the Universes root folder. See CmsResourceService.UNIVERSES_ROOT.

    Example: /Universes/myCmsFolder/MyUniverse.unx

    Since:
    14.4.0


    © Copyright 2016 SAP SE or an SAP affiliate company. All rights reserved.