Enabling LDAP Authentication in TIBCO Web Service

You can enable basic authentication in a Service configuration resource by checking Use Basic Authentication under Endpoint Bindings tab. This will require username and password every time the web service is invoked.

If you want to authenticate against an LDAP server, you can enable the BW engine to use Java Authentication and Authorization Service (JAAS) LDAP Login Module. You can create an LDAP group and authorize all users belonging to that group to have access to your web service. To do this, you have to add the following engine properties to the TRA file:

java.property.com.tibco.bw.security.login.jaas = true
java.property.java.security.auth.login.config = <location>/jaas.conf

jaas.conf is a configuration file that defines the filtering rules and largely depends on the LDAP language. Sample content is as follows:

AuthenticationService {
com.sun.security.auth.module.LdapLoginModule REQUIRED
userProvider="ldap://myldapserver.com:447/cn=GroupName,ou=groups,o=world"
userFilter="member=uid={USERNAME},ou=people,ou=com,o=world"
authIdentity="uid={USERNAME},ou=people,ou=com,o=world"
useSSL=false
debug=true;
};

If you want to include the required engine properties in the EAR file for deployment, you have to edit the bwengine.xml file and add those properties before building the EAR file in Designer. That way, you will be able to set the values of these runtime variables under Process Archive in TIBCO Administrator.

Comments

  1. Hi,

    I've tried this aproach but without success. I need to mention that it was in desing mode using TIBCO Designer and over ordinalry HTTP Request activity and not a service. It seems that no call was sent to the ldap server at all.

    It tries to authenticate aginst the TIBCO Administrator and I was able to login using a user defined there.

    AuthenticationService {
    com.sun.security.auth.module.LdapLoginModule REQUIRED
    userProvider="ldap://ldapservername.example.com:389"
    authIdentity="uid={USERNAME},ou=People,dc=example,dc=com"
    useSSL=false
    debug=true;
    };



    Do you know what I'm doing wrong?

    Thanks,
    Tsvetan

    ReplyDelete
  2. Did you add the custom properties (mentioned in this post) in the TRA file?

    ReplyDelete

Post a Comment

Popular posts from this blog

XML Schema and JSON Schema Validation in Mule 4

Parsing a JSON String and Converting it to XML in TIBCO

Using XML To Java in TIBCO BW