You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@directory.apache.org by Alex Karasulu <ak...@apache.org> on 2007/08/29 16:22:25 UTC

[LDAP][Client] Slick idea for a CLI based client

A while back I posted some Confluence pages about writing a command line yet
interactive
LDAP client called LDAP shell.  I never really got any comments about it.  I
just thought
it might be worth while putting out the idea again on this email channel.

The concept is simple and one that everyone on the command line is pretty
much used to.
A shell.  Users log into an LDAP server and have a command prompt where they
can:

 o CD into any ldap context using relative or absolute distinguished names
 o LS within a server entry to list it's children if any (use -R to change
scope :))
 o CAT to print the contents of an entry to the console
 o LESS to pan through contents
 o VI, ED to edit the contents and save
 o PUSHD to push a DN onto the stack
 o POPD to pop a DN off of the stack and CD into it
 o MV to modifyDn on an entry
 o CP to copy an entry

Yep all the shell built-ins you're used to in bourne or bourne again shells
should be there.  The
only difference in the commands are that they apply to a different naming
system than the UNIX
file system path syntax.

The idea here is to enable LDAP scripting for those who already know how to
script in shells.
Furthermore these deterministic scripts can be transformed into code that
can be pushed into
the server as stored procedures.

Also Directory Studio can use this as an LDAP console.  You don't need to
just be in a shell
to utilize this neat little client.  Studio's browser can select nodes in
the tree to represent
the path of working directory ($PWD).  As the user navigates through the
LDAP shell Studio's
browser can give them cues on their position and where they can go. Drag and
drop can be
used to move nodes in the browser into the shell which will list the DN of
the node dropped in.
Selected a node in the browser can automatically CD users into that entry.

Is this a crazy idea? Thoughts?

Alex

Re: [LDAP][Client] Slick idea for a CLI based client

Posted by Chris Custine <cc...@apache.org>.
Yes, this is a fantastic idea.  One important thing is to be certain that we
make the command processor rather generic so that we can use it within other
console type applications.  Specifically, I was playing with an XMPP bot
that runs externally and can log in to an XMPP server and  point to an LDAP
server to execute commands/searches from a XMPP client.  A reusable
administrative command processor would be perfect and we could offer the
same shell in any type of client like this.

Come to think of it, if we do this correctly, the administrative command
processor could be the basis of a JMX based admin module as well.  Just a
thought.

Chris


On 8/29/07, Ersin Er <er...@gmail.com> wrote:
>
> Hi,
>
> That's a good idea. You had partially wrote it down here before:
> http://docs.safehaus.org/display/APACHEDS/LDAP+Console
>
> This can be considered both as a command line to The Studio or as a
> general LDAP command line client. One point I want to make here is that one
> of the reasons that makes adoption of RDBMS is its easy use with text based
> clients, IMO. So having such a tool should help LDAP be used more where it
> is appropriate.
>
> On 8/29/07, Alex Karasulu <ak...@apache.org> wrote:
> >
> > A while back I posted some Confluence pages about writing a command line
> > yet interactive
> > LDAP client called LDAP shell.  I never really got any comments about
> > it.  I just thought
> > it might be worth while putting out the idea again on this email
> > channel.
> >
> > The concept is simple and one that everyone on the command line is
> > pretty much used to.
> > A shell.  Users log into an LDAP server and have a command prompt where
> > they can:
> >
> >  o CD into any ldap context using relative or absolute distinguished
> > names
> >  o LS within a server entry to list it's children if any (use -R to
> > change scope :))
> >  o CAT to print the contents of an entry to the console
> >  o LESS to pan through contents
> >  o VI, ED to edit the contents and save
> >  o PUSHD to push a DN onto the stack
> >  o POPD to pop a DN off of the stack and CD into it
> >  o MV to modifyDn on an entry
> >  o CP to copy an entry
> >
> > Yep all the shell built-ins you're used to in bourne or bourne again
> > shells should be there.  The
> > only difference in the commands are that they apply to a different
> > naming system than the UNIX
> > file system path syntax.
> >
> > The idea here is to enable LDAP scripting for those who already know how
> > to script in shells.
> > Furthermore these deterministic scripts can be transformed into code
> > that can be pushed into
> > the server as stored procedures.
> >
> > Also Directory Studio can use this as an LDAP console.  You don't need
> > to just be in a shell
> > to utilize this neat little client.  Studio's browser can select nodes
> > in the tree to represent
> > the path of working directory ($PWD).  As the user navigates through the
> > LDAP shell Studio's
> > browser can give them cues on their position and where they can go. Drag
> > and drop can be
> > used to move nodes in the browser into the shell which will list the DN
> > of the node dropped in.
> > Selected a node in the browser can automatically CD users into that
> > entry.
> >
> > Is this a crazy idea? Thoughts?
> >
> > Alex
> >
>
>
>
> --
> Ersin Er
> http://www.ersin-er.name

Re: [LDAP][Client] Slick idea for a CLI based client

Posted by Ersin Er <er...@gmail.com>.
Hi,

That's a good idea. You had partially wrote it down here before:
http://docs.safehaus.org/display/APACHEDS/LDAP+Console

This can be considered both as a command line to The Studio or as a general
LDAP command line client. One point I want to make here is that one of the
reasons that makes adoption of RDBMS is its easy use with text based
clients, IMO. So having such a tool should help LDAP be used more where it
is appropriate.

On 8/29/07, Alex Karasulu <ak...@apache.org> wrote:
>
> A while back I posted some Confluence pages about writing a command line
> yet interactive
> LDAP client called LDAP shell.  I never really got any comments about it.
> I just thought
> it might be worth while putting out the idea again on this email channel.
>
> The concept is simple and one that everyone on the command line is pretty
> much used to.
> A shell.  Users log into an LDAP server and have a command prompt where
> they can:
>
>  o CD into any ldap context using relative or absolute distinguished names
>
>  o LS within a server entry to list it's children if any (use -R to change
> scope :))
>  o CAT to print the contents of an entry to the console
>  o LESS to pan through contents
>  o VI, ED to edit the contents and save
>  o PUSHD to push a DN onto the stack
>  o POPD to pop a DN off of the stack and CD into it
>  o MV to modifyDn on an entry
>  o CP to copy an entry
>
> Yep all the shell built-ins you're used to in bourne or bourne again
> shells should be there.  The
> only difference in the commands are that they apply to a different naming
> system than the UNIX
> file system path syntax.
>
> The idea here is to enable LDAP scripting for those who already know how
> to script in shells.
> Furthermore these deterministic scripts can be transformed into code that
> can be pushed into
> the server as stored procedures.
>
> Also Directory Studio can use this as an LDAP console.  You don't need to
> just be in a shell
> to utilize this neat little client.  Studio's browser can select nodes in
> the tree to represent
> the path of working directory ($PWD).  As the user navigates through the
> LDAP shell Studio's
> browser can give them cues on their position and where they can go. Drag
> and drop can be
> used to move nodes in the browser into the shell which will list the DN of
> the node dropped in.
> Selected a node in the browser can automatically CD users into that entry.
>
> Is this a crazy idea? Thoughts?
>
> Alex
>



-- 
Ersin Er
http://www.ersin-er.name

Re: [LDAP][Client] Slick idea for a CLI based client

Posted by Ersin Er <er...@gmail.com>.
Some related information here:

http://blog.fupps.com/2007/09/11/web2ldap/

On 8/29/07, David Jencks <da...@yahoo.com> wrote:
>
> Jason Dillon has been working on GShell which is a java command line
> shell into which you can easily add java (or groovy) commands.  He's
> been working on it for use with Geronimo but I was about to mention
> it here since I thought it would be useful for apacheds as well.
> Geronimo  is going to use it to replace platform specific startup
> scripts (in non-interactive mode) but this is just a tiny part of
> what it can do.
>
> Right now the code is in https://svn.apache.org/repos/asf/geronimo/
> sandbox/gshell/trunk
> but I think jason is going to move it to somewhere more permanent soon.
>
> So I'd suggest using gshell as the shell framework and adding
> apacheds specific commands.
>
> thanks
> david jencks
>
> On Aug 29, 2007, at 7:22 AM, Alex Karasulu wrote:
>
> > A while back I posted some Confluence pages about writing a command
> > line yet interactive
> > LDAP client called LDAP shell.  I never really got any comments
> > about it.  I just thought
> > it might be worth while putting out the idea again on this email
> > channel.
> >
> > The concept is simple and one that everyone on the command line is
> > pretty much used to.
> > A shell.  Users log into an LDAP server and have a command prompt
> > where they can:
> >
> >  o CD into any ldap context using relative or absolute
> > distinguished names
> >  o LS within a server entry to list it's children if any (use -R to
> > change scope :))
> >  o CAT to print the contents of an entry to the console
> >  o LESS to pan through contents
> >  o VI, ED to edit the contents and save
> >  o PUSHD to push a DN onto the stack
> >  o POPD to pop a DN off of the stack and CD into it
> >  o MV to modifyDn on an entry
> >  o CP to copy an entry
> >
> > Yep all the shell built-ins you're used to in bourne or bourne
> > again shells should be there.  The
> > only difference in the commands are that they apply to a different
> > naming system than the UNIX
> > file system path syntax.
> >
> > The idea here is to enable LDAP scripting for those who already
> > know how to script in shells.
> > Furthermore these deterministic scripts can be transformed into
> > code that can be pushed into
> > the server as stored procedures.
> >
> > Also Directory Studio can use this as an LDAP console.  You don't
> > need to just be in a shell
> > to utilize this neat little client.  Studio's browser can select
> > nodes in the tree to represent
> > the path of working directory ($PWD).  As the user navigates
> > through the LDAP shell Studio's
> > browser can give them cues on their position and where they can go.
> > Drag and drop can be
> > used to move nodes in the browser into the shell which will list
> > the DN of the node dropped in.
> > Selected a node in the browser can automatically CD users into that
> > entry.
> >
> > Is this a crazy idea? Thoughts?
> >
> > Alex
>
>


-- 
Ersin Er
http://www.ersin-er.name

Re: [LDAP][Client] Slick idea for a CLI based client

Posted by David Jencks <da...@yahoo.com>.
Jason Dillon has been working on GShell which is a java command line  
shell into which you can easily add java (or groovy) commands.  He's  
been working on it for use with Geronimo but I was about to mention  
it here since I thought it would be useful for apacheds as well.   
Geronimo  is going to use it to replace platform specific startup  
scripts (in non-interactive mode) but this is just a tiny part of  
what it can do.

Right now the code is in https://svn.apache.org/repos/asf/geronimo/ 
sandbox/gshell/trunk
but I think jason is going to move it to somewhere more permanent soon.

So I'd suggest using gshell as the shell framework and adding  
apacheds specific commands.

thanks
david jencks

On Aug 29, 2007, at 7:22 AM, Alex Karasulu wrote:

> A while back I posted some Confluence pages about writing a command  
> line yet interactive
> LDAP client called LDAP shell.  I never really got any comments  
> about it.  I just thought
> it might be worth while putting out the idea again on this email  
> channel.
>
> The concept is simple and one that everyone on the command line is  
> pretty much used to.
> A shell.  Users log into an LDAP server and have a command prompt  
> where they can:
>
>  o CD into any ldap context using relative or absolute  
> distinguished names
>  o LS within a server entry to list it's children if any (use -R to  
> change scope :))
>  o CAT to print the contents of an entry to the console
>  o LESS to pan through contents
>  o VI, ED to edit the contents and save
>  o PUSHD to push a DN onto the stack
>  o POPD to pop a DN off of the stack and CD into it
>  o MV to modifyDn on an entry
>  o CP to copy an entry
>
> Yep all the shell built-ins you're used to in bourne or bourne  
> again shells should be there.  The
> only difference in the commands are that they apply to a different  
> naming system than the UNIX
> file system path syntax.
>
> The idea here is to enable LDAP scripting for those who already  
> know how to script in shells.
> Furthermore these deterministic scripts can be transformed into  
> code that can be pushed into
> the server as stored procedures.
>
> Also Directory Studio can use this as an LDAP console.  You don't  
> need to just be in a shell
> to utilize this neat little client.  Studio's browser can select  
> nodes in the tree to represent
> the path of working directory ($PWD).  As the user navigates  
> through the LDAP shell Studio's
> browser can give them cues on their position and where they can go.  
> Drag and drop can be
> used to move nodes in the browser into the shell which will list  
> the DN of the node dropped in.
> Selected a node in the browser can automatically CD users into that  
> entry.
>
> Is this a crazy idea? Thoughts?
>
> Alex