接続の確立
JDBC データソースの作成
Java アプリケーションから接続するJDBC データソースを作成できます。CData JDBC Driver for DB2 に基づくJDBC データソースの作成は、3つの基本ステップで構成されます。
- ドライバーのJAR ファイルをクラスパスに追加します。JAR ファイルはインストールディレクトリの[lib]サブフォルダ内にあります。.lic ファイルはJAR ファイルと同じフォルダ内に配置される必要があることに注意してください。
- ドライバークラスを入力します。次に例を示します。
cdata.jdbc.db2.DB2Driver
- JDBC URL を入力します。次に例を示します。
jdbc:db2:Server=10.0.1.2;Port=50000;User=admin;Password=admin;Database=test or jdbc:cdata:db2:Server=10.0.1.2;Port=50000;User=admin;Password=admin;Database=test
上記の2つ目の形式は、同じURL 形式を使用しているドライバー間でアプリケーションに競合がある場合は、CData ドライバーを使用していることを確認するために常に使用できます。URL は "jdbc:db2:" または"jdbc:cdata:db2:" のいずれかから始まり、任意の接続プロパティの名前と値のペアをセミコロン区切りで入力します。
DB2 への接続
DB2 に接続するには以下のプロパティを設定します。接続の準備ができたら、認証スキームを選択し、以下で説明するように適切なプロパティを設定します。
DB2 への認証
本製品 は、DB2 への認証に4つの異なるスキームをサポートします。DB2 ユーザー資格情報(デフォルト)、暗号化されたユーザー資格情報、IBM Identity and Access Management(IAM)認証、および Kerberos です。
DB2 ユーザー資格情報
ユーザー資格情報を使用して認証するには、次のプロパティを設定します。- AuthScheme:USRIDPWD。
- User:データベースへのアクセス権を持つユーザーのユーザー名。
- Password:データベースへのアクセス権を持つユーザーのパスワード。
暗号化されたユーザー資格情報
サーバーがセキュア認証に対応しており、暗号化されたユーザー資格情報を使用して認証を行いたい場合は、このプロパティを設定します。- AuthScheme:EUSRIDPWD
IAM
本製品 は、Watson Query など、接続するアプリケーションのAPI キーを使用するDB2 サーバーへの認証もサポートしています。
適切なAPI キーを使用して認証するには、次のプロパティを設定します。
- AuthScheme:IBMIAMAuth。
- User:DB2 サーバーユーザーのIBM ID またはサービスID。
- Password:DB2 データベースへのアクセスを必要とするアプリケーションに関連付けられたAPI キー。
Kerberos
Kerberos 経由でDB2 への認証を行うには、認証プロパティを定義し、Kerberos が認証チケットを取得する方法を選択する必要があります。Kerberos でDB2 への認証を行うには、次のプロパティを設定します。
- AuthScheme:KERBEROS。
- KerberosKDC:ユーザーの認証で使用されるKerberos キー配布センター(KDC)サービス。
- KerberosUser:host/user@realm の形式で指定される、Kerberos ドメインコントローラーのサービスプリンシパル名。
- KerberosSPN(オプション):Kerberos ドメインコントローラーのサービスプリンシパル名(SPN)。
最後に、セキュリティチェックを完了するために、以下のいずれかを設定します。
- Password:データベースへの認証のためのパスワード。
- KerberosKeytabFile:Kerberos のプリンシパルと暗号化されたキーのペアを含むKeytab ファイル。
Kerberos チケットの取得
Kerberos チケットは、依頼者のID を認証するために使用されます。正式なログイン / パスワードの代わりにチケットを使用することで、パスワードをローカルに保存したり、ネットワーク経由で送信したりする必要がなくなります。 ユーザーは、ローカルコンピュータでログインするか、 コマンドプロンプトでkinit USER と入力するたびに、再認証されます(チケットはリフレッシュされます)。本製品 は、 KRB5CCNAME および / またはKerberosKeytabFile 変数が存在するかどうかに応じて、必要なKerberos チケットを取得する3 つの方法を提供します。
MIT Kerberos 資格情報キャッシュファイル
このオプションを使用すると、MIT Kerberos チケットマネージャーまたはkinit コマンドを使ってチケットを取得できます。このオプションでは、User またはPassword 接続プロパティを設定する必要はありません。
このオプションは、KRB5CCNAME がシステムに作成されている必要があります。
MIT Kerberos 資格情報キャッシュファイル経由でチケット検索を有効にするには:
- お使いの環境にKRB5CCNAME 変数が存在することを確認します。
- KRB5CCNAME を資格情報キャッシュファイルを指すパスに設定します。(例えば、C:\krb_cache\krb5cc_0 または/tmp/krb5cc_0 です。)資格情報キャッシュファイルは、MIT Kerberos チケットマネージャーを使用してチケットを生成するときに作成されます。
- チケットを取得するには:
- MIT Kerberos チケットマネージャーアプリケーションを開きます。
- Get Ticket をクリックします。
- プリンシパル名とパスワードを入力します。
- OK をクリックします。
チケットの取得に成功すると、チケット情報がKerberos チケットマネージャーに表示され、クレデンシャルキャッシュファイルに保存されます。
本製品 はキャッシュファイルを使用してDB2 に接続するためのKerberos チケットを取得します。
Note: KRB5CCNAME を編集したくない場合は、KerberosTicketCache プロパティを使用してファイルパスを手動で設定することができます。この設定後に、本製品 は指定されたキャッシュファイルを使用してDB2 に接続するためのKerberos チケットを取得します。
Keytab ファイル
お使いの環境にKRB5CCNAME 環境変数がない場合、Keytab ファイルを使用してKerberos チケットを取得できます。
この方法を使用するには、User プロパティを目的のユーザー名に設定し、KerberosKeytabFile プロパティをユーザーに関連付けられたキータブファイルを指すファイルパスに設定します。
User およびPassword
お使いの環境にKRB5CCNAME 環境変数およびKerberosKeytabFile プロパティが設定されていない場合、ユーザーとパスワードの組み合わせを使用してチケットを取得できます。
この方法を使用するには、User およびPassword プロパティを、DB2 での認証に使用するユーザー / パスワードの組み合わせに設定します。
クロスレルム認証の有効化
より複雑なKerberos 環境では、複数のレルムおよびKDC サーバーが使用されるクロスレルム認証が必要になる場合があります。例えば、1つのレルム / KDC がユーザー認証に使用され、別のレルム / KDC がサービスチケットの取得に使用される場合です。このようなクロスレルム認証を有効にするには、KerberosRealm およびKerberosKDC プロパティをユーザー認証に必要な値に設定します。また、KerberosServiceRealm およびKerberosServiceKDC プロパティを、 サービスチケットの取得に必要な値に設定します。