MQAUSX and Microsoft Active Directory

Centralize authentication is a great thing. Many customers use MQAUSX on AIX, HP-UX, IBM i (OS/400), Linux, Solaris and authenticate against Microsoft Active Directory (AD) as a remote LDAP server. Since, AD conforms to LDAP v3, this generally works very well.

Some companies configure their AD servers such that the attribute sAMAccountName contains the user’s UserID (i.e. jdoe) and the user’s username to be the user’s full name (i.e. John Doe). This makes authentications very difficult for MQAUSX via an LDAP session as AD will not authenticate a Login DN that contains sAMAccountName attribute but not the username attribute. Normally, we recommend that the customer use MQAUSX LDAP ANR (Ambiguous Name Resolution) feature as it works very well with AD.

Recently, we had a customer go down that path using MQAUSX LDAP ANR for authentication but for them, it was not a workable solution (sAMAccountName had truncated values, they put the country code in the UPN, etc..)

They requested that MQAUSX LDAP and LDAP SSL components be changed to support the following logic when authenticating against AD:

  • Connect and bind to LDAP server using service account credentials (LDAPBindDN and LDAPBindPwd).
  • With the incoming UserID, run an LDAP search to discover the DN of the user object associated with UserID.
  • The search should return the current DN (i.e. “cn=John Doe, cn=Users, dc=corp, dc=acme, dc=com”) of a user object (if not, the connection is rejected).
  • Attempt a LDAP bind operation using the returned DN along with the provided incoming Password
  • If the bind succeeds, the user is authenticated, otherwise the connection is rejected.

The MQAUSX LDAP and LDAP SSL components have been updated to handle the above logic and the following MQAUX IniFile keywords have been added:

  • UseLDAPUserIDSearch specifies that a LDAP UserID Search is to be performed
  • LDAPUserIDSearchBase specifies a search base for the LDAP UserID Search
  • LDAPUserIDSearchFilter specifies a search filter for the LDAP UserID Search
  • LDAPUserIDSearchScope specifies a search scope for the LDAP UserID Search

Example:

UseLDAPUserIDSearch=Y
LDAPUserIDSearchBase="dc=corp,dc=acme,dc=com"
LDAPUserIDSearchFilter="(&(objectCategory=user)(samaccountname=%USERID%))"
LDAPUserIDSearchScope=2

To keep the confusion to a minimum and to support a proper naming standard, the following LDAP Group Search keywords have been renamed:

  • UseLDAPSearch to UseLDAPGroupSearch
  • LDAPSearchBase to LDAPGroupSearchBase
  • LDAPSearchFilter to LDAPGroupSearchFilter
  • LDAPSearchScope to LDAPGroupSearchScope

So far, the new feature is working very well for this customer. So if anyone would like to try out this new MQAUSX feature then send an email to support@capitalware.com requesting the latest release of MQAUSX.

Regards,
Roger Lacroix
Capitalware Inc.

Capitalware, IBM i (OS/400), IBM MQ, Linux, MQ Authenticate User Security Exit, Security, Unix, Windows Comments Off on MQAUSX and Microsoft Active Directory

PdfCreator 1.3.1 Released

PdfForge has just released PdfCreator v1.3.1.
http://www.pdfforge.org/pdfcreator

PDFCreator is a free tool to create PDF files from nearly any Windows application.

Regards,
Roger Lacroix
Capitalware Inc.

Open Source, Windows Comments Off on PdfCreator 1.3.1 Released

WebSphere MQ Redbooks

IBM has several Redbooks that provide in-depth details for WebSphere MQ. Here are 5 MQ related Redbooks that I have found:

WebSphere MQ V7.0 Features and Enhancements
WebSphere MQ V6 Fundamentals
WebSphere MQ V6, WebSphere Message Broker V6 and SSL
WebSphere Application Server V6.1: JMS Problem Determination
WebSphere MQ Solutions in a Microsoft .NET Environment

Regards,
Roger Lacroix
Capitalware Inc.

.NET, IBM i (OS/400), IBM MQ, Java, JMS, Linux, Unix, Windows, z/OS Comments Off on WebSphere MQ Redbooks

SupportPac IA94 v2.0.2 Released

SupportPac IA94 v2.0.2 Released

IBM has released version 2.0.2 of SupportPac IA94.
http://www.ibm.com/support/docview.wss?uid=swg24007092

The IBM Message Service Client for C/C++ (“XMS C/C++”) renders the Java Message Service (JMS) API in the C/C++ languages. It brings the benefits of JMS — a standard, abstracted messaging API for pub/sub and point-to-point messaging, as well as externally administered objects – to the non-Java world.

Regards,
Roger Lacroix
Capitalware Inc.

C, IBM MQ, Linux, Programming, Unix, Windows Comments Off on SupportPac IA94 v2.0.2 Released

LibreOffice 3.5.1 Released

LibreOffice has just released LibreOffice v3.5.1.
http://www.libreoffice.org

LibreOffice is a comprehensive, professional-quality productivity suite that you can download and install for free. There is a large base of satisfied LibreOffice users worldwide, and it’s available in more than 30 languages and for all major operating systems, including Microsoft Windows, Mac OS X and Linux (Debian, Ubuntu, Fedora, Mandriva, Suse, …).

Regards,
Roger Lacroix
Capitalware Inc.

Linux, macOS (Mac OS X), Open Source, Windows Comments Off on LibreOffice 3.5.1 Released

Now that’s a resignation letter!!

Greg Smith, who headed Goldman’s U.S. equity derivatives business in Europe, Africa and the Middle East, resigned Wednesday with a letter in the Op-Ed section of The New York Times newspaper, entitled “Why I am Leaving Goldman Sachs.”
http://www.nytimes.com/2012/03/14/opinion/why-i-am-leaving-goldman-sachs.html?_r=1

As I always say to my kids, if it is black, call it black, don’t call it white or beige. Morals. Everyone should have morals. Morals does not mean you do the right thing when it is convenient but you do the right thing ALL THE TIME, even when everyone else is saying sit down and be quiet.

I am sure Greg Smith will take a lot of heat from financial industry people over his Op-Ed piece and I am sure Goldman Sachs will find a way to “disallow” any stock options, pension, benefits, etc. for Greg Smith speaking the truth.

More people need to standup and speak the truth. I give Greg Smith 2 thumbs-up for standing up and speaking the truth. Yes, I know people really don’t like to hear the truth but how are we ever going to change the world if people don’t speak up!!!

Regards,
Roger Lacroix
Capitalware Inc.

General Comments Off on Now that’s a resignation letter!!

WebSphere MQ Fix Pack 7.0.1.8 Released

IBM has just released FixPack 7.0.1.8 for WebSphere MQ.
http://www.ibm.com/support/docview.wss?uid=swg21586542

Regards,
Roger Lacroix
Capitalware Inc.

Fix Packs for MQ, IBM i (OS/400), IBM MQ, Linux, Unix, Windows Comments Off on WebSphere MQ Fix Pack 7.0.1.8 Released

New: MQ File Mover v4.1.0

Capitalware is pleased to announce the release of MQ File Mover v4.1.0. It is a free open source project.

MQ File Mover is a managed file transfer solution that facilitates the transfer of files using IBM’s WebSphere MQ (aka MQSeries). MQFM processes “Action” commands which are controlled through an MQFM Workflow XML file. The user combines a series of Action commands to create the MQFM Workflow XML file.

    Changes:

  • Updated Zip Action to handle locked files (locked by another process)
  • Updated Zip Action to handle Windows drive label (i.e. C: )
  • Updated Watch Action to perform retry on a failure
  • Added the ability to use Global properties with other Global properties
  • Added code to dump out user global values
  • Added createdir attribute for Append, Copy, DecryptFile, EncryptFile, Merge, MergeSort, Move, Receive, ReplaceText, Sort, Tar, Touch, UnTar, UnZip, & Zip Actions
  • Added append attribute for Receive Action
  • Added default value (“*”) for Extension Element for Watch Action for type=”D”
  • Added createdir attribute for Archive Element
  • Fixed bug in XML processing for Global variables
  • Fixed bug in XML processing for Execute Object

For more information on MQ File Mover, please go to:
http://www.capitalware.biz/mqfm_overview.html

Regards,
Roger Lacroix
Capitalware Inc.

Capitalware, IBM i (OS/400), IBM MQ, Java, Linux, macOS (Mac OS X), MQ File Mover, Open Source, Unix, Windows Comments Off on New: MQ File Mover v4.1.0

Using MQ File Mover on Mac OS X (How To #7)

About every 3 weeks or so, I get an email asking me if MQ File Mover (MQFM) can be installed and used on Mac OS X. In this blog posting, I will discuss the prerequisites and issue related to using MQFM on Mac OS X.

First, as with any other platform that you run MQFM on, Mac OS X must have Java v1.5.0 or higher installed.

Second, follow the “Unix and Linux” instructions from the MQFM Installation and Operation manual for installing MQFM on Mac OS X.

Third, you will need WebSphere MQ (WMQ) to be installed on Mac OS X. This is where everyone gets stumped. IBM does not release either WMQ Server or WMQ Client for Mac OS X, although Willow Technology does have a port of WMQ for Mac OS X but it is extremely old (v5.3) and it is NOT free. I do not understand why IBM does not release a current version of WMQ for Mac OS X, as Mac OS X is a popular platform.

So, how do you get around this issue? You simply copy the MQ Java JAR files from an existing installation of WMQ to the “libs” directory of MQFM on Mac OS X.

1) If you only have WMQ v6 then copy the following 2 MQ Java JAR files to Mac OS X:

com.ibm.mq.jar
connector.jar

2) If you have WMQ v7 then copy the following 5 MQ Java JAR files to Mac OS X:

com.ibm.mq.jar
com.ibm.mq.commonservices.jar
com.ibm.mq.headers.jar
com.ibm.mq.jmqi.jar
connector.jar

That’s it. You are now ready to use MQFM on Mac OS X.

Note: If you want to use MQFM on BSD or any other OS variant then simply follow the above steps and you will be good to go.

Regards,
Roger Lacroix
Capitalware Inc.

Capitalware, IBM MQ, Java, macOS (Mac OS X), MQ File Mover, Open Source Comments Off on Using MQ File Mover on Mac OS X (How To #7)

WebSphere MQ v7.1 and Java v1.4.2

Here’s another head-banging item that some people may get burnt by.

I was doing some testing of Java applications with WebSphere MQ v7.1 and received the following error message:

java.lang.UnsupportedClassVersionError: com/ibm/mq/MQException (Unsupported major.minor version 49.0)
   at java.lang.ClassLoader.defineClass0(Native Method)
   at java.lang.ClassLoader.defineClass(ClassLoader.java:539)
   at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:123)
   at java.net.URLClassLoader.defineClass(URLClassLoader.java:251)
   at java.net.URLClassLoader.access$100(URLClassLoader.java:55)
   at java.net.URLClassLoader$1.run(URLClassLoader.java:194)
   at java.security.AccessController.doPrivileged(Native Method)
   at java.net.URLClassLoader.findClass(URLClassLoader.java:187)
   at java.lang.ClassLoader.loadClass(ClassLoader.java:289)
   at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:274)
   at java.lang.ClassLoader.loadClass(ClassLoader.java:235)
   at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:302)
Exception in thread "main"

If you do not know what “Unsupported major.minor version 49.0” means, in plain English, it means that the MQ Java JAR file you are using was built with a higher release of Java (i.e. v1.5) and is not backwards compatible with Java v1.4.2.

When I switched my JDK to version 1.5 then everything worked fine with my test application.

I searched the WebSphere MQ v7.1 documentation and cannot find anything about WebSphere MQ v7.1 now requiring Java v1.5 or higher. Attention IBM: This needs to be documented.

So be warned: If you are using Java (JDK or JRE) v1.4.2 (or lower) then you will not be able to use the MQ Java JAR files from the newly released WebSphere MQ v7.1 with your application.

Regards,
Roger Lacroix
Capitalware Inc.

IBM i (OS/400), IBM MQ, Java, JMS, Linux, Unix, Windows, z/OS 2 Comments