Windows システムでの SSPI セキュリティー出口の使用

このトピックでは、Windows システムで SSPI チャネル出口プログラムを使用する方法について説明します。 付属する出口コードの形式は、オブジェクトとソースの 2 つです。

オブジェクト・コード

オブジェクト・コード・ファイルは amqrspin.dll と呼ばれます。 お客様およびサーバーの両方の場合、それは IBM® MQ for Windows の標準パーツとして MQ_INSTALLATION_PATH/exits/INSTALLATION_NAME フォルダーにインストールされます。 例えば、C:\Program Files\IBM\WebSphere MQ\exits\installation2 などです。 これは、標準のユーザー出口としてロードされます。 提供されるセキュリティー・チャネル出口を実行して、チャネル定義にある認証サービスを使用することができます。

これを行うには、次のいずれかを指定してください。
SCYEXIT('amqrspin(SCY_KERBEROS)')

SCYEXIT('amqrspin(SCY_NTLM)')
制限付きチャネルのサポートを提供するには、SVRCONN チャネルで以下を指定します。
SCYDATA('remote_principal_name')
where remote_principal_name は、 DOMAIN¥userの形式です。 ソース・チャネルは、リモート・プリンシパルの名前が remote_principal_name と一致する場合にのみ確立されます。

Kerberos セキュリティー・ドメイン内で稼働するシステム間で、提供されているチャネル出口プログラムを使用するには、キュー・マネージャー用に servicePrincipalName を作成してください。

ソース・コード

出口ソース・コード・ファイルは amqsspin.c と呼ばれます。 これは C:\Program Files\IBM\WebSphere MQ\Tools\c\Samples に存在します。

ソース・コードを変更するには、変更されたソースを再コンパイルしなければなりません。

このソースのコンパイルとリンクは、関連したプラットフォームの他のチャネル出口と同じように行います。ただし、SSPI ヘッダーはコンパイル時にアクセスする必要があり、SSPI セキュリティー・ライブラリーは関連した他の推奨ライブラリーとともにリンク時にアクセスする必要があります。

以下のコマンドを実行する前に、cl.exe、Visual C++ ライブラリー、および include フォルダーがパス内で使用可能であることを確認してください。 以下に例を示します。
cl /VERBOSE /LD /MT /Ipath_to_Microsoft_platform_SDK\include
/Ipath_to_IBM_MQ\tools\c\include amqsspin.c /DSECURITY_WIN32
-link /DLL /EXPORT:SCY_KERBEROS /EXPORT:SCY_NTLM STACK:8192
注: ソース・コードには、トレースまたはエラー処理のためのプロビジョンは含まれていません。 ソース・コードを変更して使用する場合、独自のトレースおよびエラー処理ルーチンを追加してください。