On 30/08/2013 14:15, hugh lewis wrote:
Hi Francesco,

Thank you for your reply.

I installed the cmd connector, and I discovered that it passes the fields as environment variables. So I can use that for now as my proof of concept, and maybe look at modifying the openam connector to use its Restful communication parts in future.

Fine.

One question - the password is passed as a "org.identityconnectors.common.security.GuardedString". I guess I could write a command line java command to decode that, then pass it back to my curl script. But this seems a little "duct tape"-ish. Is there another way of getting at the password from a bash/powershell prompt? Im not a java programmer, so if this is something that requires some java know-how I guess I can consult a colleague!

GuardedString is an encrypted format defined by ConnId, for which only a Java implementation exists so I guess you need to involve one of your colleagues: to ease his work I've prepared a simple gist [7] of what is needed to decrypt the password.

Hope this helps.

Regards.

On 30 August 2013 10:28, Francesco Chicchiriccò <[email protected] <mailto:[email protected]>> wrote:

    On 30/08/2013 10:56, hugh lewis wrote:

        Hi There,

        i am currently evaluating syncope for my employer.  I have
        successfully provisioned accounts from a flat file (extracted
        from our employee database) to various ldap and database
        targets.  i would also like to provision accounts to our red
        hat IPA system.  I can provision directly into IPA's ldap
        backend, but this is not ideal as there are a number of things
        (kerberos etc) not set when you create accounts via ldap.

        IPA does have a json interface for provisioning accounts.  I
        dont see a json plugin in connid.  Is there a way to provision
        accounts directly to a RESTful target?

        I notice a new CMD connid - I guess I could call curl directly
        via this connector and call IPA's provisioning that way?  Only
        problem is, the CMD connector is very new and I cant find any
        documentation about how it receives  the data from syncope (I
        would need to know how the data is passed so I can form the
        json file to pass to curl.


    Hi and thanks for your interest in Apache Syncope.

    I think you have some options here:

     1. Use the ConnId LDAP connector to provision the LDAP backend
    (RedHat 389 is very well supported as recently reported [1]) -
    this connector is by far the most stable but you have reported
    above some drawbacks of acting at this level, in your case.

     2. Use the ConnId CMD connector - as you've noticed, this is
    quite new; it is meant to be deployed on a remote connector server
    [2] in order to execute arbitrary provisioning commands in the
    remote host environment; it is particularly useful when you need
    to run some operating system command (say 'useradd' on Linux, for
    example) on a remote server.
    About the data exchange format, it is missing, you are right,
    there is an open issue for that [3] but you can take a look at
    some examples for Windows and Powershell [4] [5] - besides the
    technology difference, the data is exchanged in the same way.

     3. Write your own RESTful connector - this might seem the hardest
    path but it would allow you to take the complete control over the
    RESTful communication: FYI, the ConnId OpenAM connector [6] is
    coded in this way and can be taken as example.


    For any question or help specifically related to ConnId you can
    contact [email protected]
    <mailto:[email protected]>.

    Regards.

    [1] http://blog.tirasa.net/blogs/index.php/how-to-add-389-directory
    [2] https://connid.atlassian.net/wiki/display/BASE/Connector+Servers
    [3] https://connid.atlassian.net/browse/CMD-1
    [4]
    
http://blog.tirasa.net/blogs/index.php/coffeetime/execute-adamsync-from-another-host
    [5]
    
http://blog.tirasa.net/blogs/index.php/wiseit/apache-syncope-and-powershell-scripts
    [6] https://github.com/Tirasa/ConnIdOpenAMBundle

[7] https://gist.github.com/ilgrosso/6389336

--
Francesco Chicchiriccò

ASF Member, Apache Syncope PMC chair, Apache Cocoon PMC Member
http://people.apache.org/~ilgrosso/

Reply via email to