java.lang.Object
org.odpi.openmetadata.accessservices.securityofficer.server.services.GovernedAssetRESTServices

public class GovernedAssetRESTServices extends Object
The GovernedAssetRESTServices provides the handlers-side implementation of the GovernanceEngine Open Metadata Access Service (OMAS).

This package deals with supporting the REST API from within the OMAG Server

Governance engines such as Apache Ranger are interested in the classification of resources that they provide access to. They are unlikely to be interested in all the nitty gritty properties of that resource, only knowing that it is PI or SPI and perhaps masking or preventing access.

They tend to use this information in two ways - At policy authoring time - where knowing what tags are available is interesting to help in that definition process - At data access time - where we need to know if resource X is protected in some way due to it's metadata ie classification

Initially this OMAS client will provide information on those - classifiers - we'll call them 'tags' here - Managed assets - those resources - and in effect any tags associated with them. Details on the assets themselves are better supported through the AssetConsumer OMAS API, and additionally the governance engine is not interested currently in HOW the assets get classified - ie through the association of a classification directly to an asset, or via business terms, so effectively flatten this

The result is a fairly simple object being made available to the engine, which will evolve as work is done on enhancing the interaction (for example capturing information back from the engine), and as we interconnect with new governance engines

  • Constructor Details

    • GovernedAssetRESTServices

      public GovernedAssetRESTServices()
  • Method Details

    • getGovernedAssets

      public GovernedAssetListResponse getGovernedAssets(String serverName, String userId, List<String> entityTypes, Integer offset, Integer pageSize)
      Returns the list of governed asset

      These include the tag associations but not the definitions of those tags

      Parameters:
      serverName - - name of the server that the request is for
      userId - - String - userId of user making request.
      entityTypes - types to start query offset
      Returns:
      GovernedAssetComponentList
    • getGovernedAsset

      public GovernedAssetResponse getGovernedAsset(String serverName, String userId, String assetGuid)
      Returns a single governed asset

      These include the tag associations but not the definitions of those tags

      Parameters:
      serverName - - name of the server that the request is for
      userId - - String - userId of user making request.
      assetGuid - - Guid of the asset component to retrieve
      Returns:
      GovernedAsset or InvalidParameterException - one of the parameters is null or invalid. UnrecognizedConnectionNameException - there is no connection defined for this name. AmbiguousConnectionNameException - there is more than one connection defined for this name. PropertyServerException - there is a problem retrieving information from the property (metadata) handlers. UserNotAuthorizedException - the requesting user is not authorized to issue this request.
    • createSoftwareServer

      public StringResponse createSoftwareServer(String serverName, String userId, SoftwareServerCapabilityRequestBody requestBody)
    • getSoftwareServerByGUID

      public SoftwareServerCapabilityResponse getSoftwareServerByGUID(String serverName, String userId, String guid)