Uploaded image for project: 'OpenAM'
  1. OpenAM
  2. OPENAM-10909

Exploration of OpenAM via Amster is Unintuitive

    Details

    • Type: Bug
    • Status: Open
    • Priority: Major
    • Resolution: Unresolved
    • Affects Version/s: 14.0.0
    • Fix Version/s: None
    • Component/s: Amster
    • Labels:
    • Environment:
      Amster: 14.0.0-SNAPSHOT build 57ac6fcc5c{code}
      OpenAM 14.0.0-SNAPSHOT Build f01d833a2c (2017-March-17 00:27)

      Description

      Exploration of OpenAM via Amster is Unintuitive
      The scenario is that I have come to Amster for the first time and I wanted to see what I could do.

      Running:

      query AuthenticationModules --realm /

      Results in:

      ===> [{"_id":"DataStore","type":"datastore","typeDescription":"Data Store","_rev":"1955276544"},{"_id":"LDAP","type":"ldap","typeDescription":"LDAP","_rev":"690454913"},{"_id":"SAE","type":"sae","typeDescription":"SAE","_rev":"191981236"},{"_id":"Federation","type":"federation","typeDescription":"Federation","_rev":"1574246029"},{"_id":"HOTP","type":"hotp","typeDescription":"HOTP","_rev":"1883998480"},{"_id":"OATH","type":"oath","typeDescription":"OATH","_rev":"1702176017"},{"_id":"Amster","type":"amster","typeDescription":"ForgeRock Amster","_rev":"1697754061"}]
      

      The query returns a list with types e.g. "type":"datastore". However, in order to read that type you have to add the 'Module' and camel case that type i.e. entity == DataStoreModule. Note, the output also does not contain that value.

      Running:

      read DataStoreModule --realm / --id DataStore

      Results in:

      ===> {"authenticationLevel":0,"_rev":"467329688","_type":{"_id":"datastore","name":"Data Store","collection":true},"_id":"DataStore"}
      

      The problem is that I tried to use the type returned from query when running:

      read datastore --realm / --id DataStore




      e.g. This is an example of my "exploration"

      • Query to find entities
      • Read those entities
        amster amqa-clone75.test.forgerock.com:8080> :h q
        
        usage: query <entity> [--realm <name>] [--global] [--filter <expression>]]
        
        Options:
        
          --realm <name>
              Specify the realm where the entity exists
        
          --global
              Specify if the entity is global
        
          --filter <expresssion>
              Specify the filter expression. Expression matching entities will be
              returned. Default: 'true'.
        
        Query the OpenAM entity.
        
        Examples:
        
          query Services --realm / --filter 'true'
        
          query AuthenticationModules --realm /
        
        amster amqa-clone75.test.forgerock.com:8080> query AuthenticationModules --realm /
        ===> [{"_id":"DataStore","type":"datastore","typeDescription":"Data Store","_rev":"1955276544"},{"_id":"LDAP","type":"ldap","typeDescription":"LDAP","_rev":"690454913"},{"_id":"SAE","type":"sae","typeDescription":"SAE","_rev":"191981236"},{"_id":"Federation","type":"federation","typeDescription":"Federation","_rev":"1574246029"},{"_id":"HOTP","type":"hotp","typeDescription":"HOTP","_rev":"1883998480"},{"_id":"OATH","type":"oath","typeDescription":"OATH","_rev":"1702176017"},{"_id":"Amster","type":"amster","typeDescription":"ForgeRock Amster","_rev":"1697754061"}]
        amster amqa-clone75.test.forgerock.com:8080> 
        amster amqa-clone75.test.forgerock.com:8080> :h r
        
        usage: read <entity> [--realm <name>] [--global] [--id <id>]
        Options:
        
          --realm <name>
              Specify the realm where the entity exists
        
          --global
              Specify if the entity is global
        
          --id <id>
              Specify the id of the entity. Required if the entity is in a collection.
        
        Read the OpenAM entity.
        
        Examples:
        
          read DataStoreModule --realm / --id myDataStore
        
          read DataStoreModule --global
        
        amster amqa-clone75.test.forgerock.com:8080> read DataStoreModule --realm / --id DataStore
        ===> {"authenticationLevel":0,"_rev":"467329688","_type":{"_id":"datastore","name":"Data Store","collection":true},"_id":"DataStore"}
        amster amqa-clone75.test.forgerock.com:8080> read FederationModule --realm / --id Federation
        ===> {"authenticationLevel":0,"_rev":"1988381083","_type":{"_id":"federation","name":"Federation","collection":true},"_id":"Federation"}
        amster amqa-clone75.test.forgerock.com:8080> read AmsterModule --realm / --id Amster
        ===> {"authorizedKeys":"/root/openam/authorized_keys","enabled":true,"authenticationLevel":0,"_rev":"-848566319","_type":{"_id":"amster","name":"ForgeRock Amster","collection":true},"_id":"Amster"}
        amster amqa-clone75.test.forgerock.com:8080> read AmsterModule --global
        ===> {"defaults":{"authorizedKeys":"/root/openam/authorized_keys","enabled":true,"authenticationLevel":0},"_rev":"-1342396898","_type":{"_id":"amster","name":"ForgeRock Amster","collection":false},"_id":""}
        

        Attachments

          Activity

            People

            • Assignee:
              Unassigned
              Reporter:
              AndrewVinall Andrew Vinall
            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated: