Windows ドメインでは、クライアントコンピューターに Kerberos クライアントをインストールしなくても、Windows ベースのコンピューターで SSPI を使用できます。Windows ドメインアカウントには、関連付けられた Kerberos プリンシパルがあらかじめ用意されています。
SSPI は、SQL Anywhere クライアントのみが Kerberos 接続パラメーターで使用できます。SQL Anywhere データベースサーバーは SSPI を使用できません。サポートされる SSPI 以外の Kerberos クライアントを使用する必要があります。
Kerberos 認証を設定します。 Kerberos 認証の設定を参照してください。
SQL Anywhere サーバーを -krb オプションを指定して起動し、Kerberos 認証を有効にします。次に例を示します。
dbeng12 -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;Server=my_server_princ" |
接続文字列に Kerberos=SSPI と指定されている場合、Kerberos ログインが試行されます。
次の Interactive SQL 文を使用した接続も成功します。ただし、接続が成功するためには、ユーザーは、サーバーのデフォルトデータベース内の Kerberos ログインマッピングと一致するユーザープロファイル名を使用してログオンしていることが必要です。
CONNECT USING 'KERBEROS=SSPI'; |
![]() |
DocCommentXchange で意見交換できます
|
Copyright © 2012, iAnywhere Solutions, Inc. - SQL Anywhere 12.0.1 |