Windows ドメインでは、クライアント・コンピュータに Kerberos クライアントをインストールしなくても、Windows ベースのコンピュータで SSPI を使用できます。Windows ドメイン・アカウントには、関連付けられた Kerberos プリンシパルがあらかじめ用意されています。
Kerberos 認証を設定します。Kerberos 認証の設定を参照してください。
SQL Anywhere サーバを -krb オプションを指定して起動し、Kerberos 認証を有効にします。次に例を示します。
dbeng11 -krb -n my_server_princ C:\kerberos.db |
パブリック・オプションまたは一時的なパブリック・オプション login_mode を Kerberos を含む値に変更します。このオプションの設定には、DBA 権限が必要です。次に例を示します。
SET OPTION PUBLIC.login_mode = 'Kerberos'; |
クライアントが使用するデータベース・ユーザ ID を作成します。既存のデータベース・ユーザに適切なパーミッションがあれば、そのデータベース・ユーザ ID を Kerberos ログインに使用できます。次に例を示します。
CREATE USER kerberos_user IDENTIFIED BY abc123; |
クライアントの Kerberos プリンシパルから既存のデータベース・ユーザ ID へのマッピングを作成します。作成するには、GRANT KERBEROS LOGIN TO 文を実行します。この文の実行には、DBA 権限が必要です。次に例を示します。
GRANT KERBEROS LOGIN TO "pchin@MYREALM.COM" AS USER "kerberos-user"; |
クライアント・コンピュータからデータベースに接続します。次に例を示します。
dbisql -c "KERBEROS=SSPI;ENG=my_server_princ" |
接続文字列に Kerberos=SSPI と指定されている場合、Kerberos ログインが試行されます。
次の Interactive SQL 文を使用した接続も成功します。ただし、接続が成功するためには、ユーザは、サーバのデフォルト・データベース内の Kerberos ログイン・マッピングと一致するユーザ・プロファイル名を使用してログオンしていることが必要です。
CONNECT USING 'KERBEROS=SSPI'; |
Copyright © 2009, iAnywhere Solutions, Inc. - SQL Anywhere 11.0.1 |