Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 11.0.1 (日本語) » SQL Anywhere サーバ - データベース管理 » データベースの起動とデータベースへの接続 » SQL Anywhere データベース接続 » Kerberos 認証

 

Windows で Kerberos ログインに SSPI を使用する

Windows ドメインでは、クライアント・コンピュータに Kerberos クライアントをインストールしなくても、Windows ベースのコンピュータで SSPI を使用できます。Windows ドメイン・アカウントには、関連付けられた Kerberos プリンシパルがあらかじめ用意されています。

♦  SSPI を使用して接続するには、次の手順に従います。
  1. Kerberos 認証を設定します。Kerberos 認証の設定を参照してください。

  2. SQL Anywhere サーバを -krb オプションを指定して起動し、Kerberos 認証を有効にします。次に例を示します。

    dbeng11 -krb -n my_server_princ C:\kerberos.db
  3. パブリック・オプションまたは一時的なパブリック・オプション login_mode を Kerberos を含む値に変更します。このオプションの設定には、DBA 権限が必要です。次に例を示します。

    SET OPTION PUBLIC.login_mode = 'Kerberos';
  4. クライアントが使用するデータベース・ユーザ ID を作成します。既存のデータベース・ユーザに適切なパーミッションがあれば、そのデータベース・ユーザ ID を Kerberos ログインに使用できます。次に例を示します。

    CREATE USER kerberos_user
    IDENTIFIED BY abc123;
  5. クライアントの Kerberos プリンシパルから既存のデータベース・ユーザ ID へのマッピングを作成します。作成するには、GRANT KERBEROS LOGIN TO 文を実行します。この文の実行には、DBA 権限が必要です。次に例を示します。

    GRANT KERBEROS LOGIN TO "pchin@MYREALM.COM" 
    AS USER "kerberos-user";
  6. クライアント・コンピュータからデータベースに接続します。次に例を示します。

    dbisql -c "KERBEROS=SSPI;ENG=my_server_princ"

    接続文字列に Kerberos=SSPI と指定されている場合、Kerberos ログインが試行されます。

    次の Interactive SQL 文を使用した接続も成功します。ただし、接続が成功するためには、ユーザは、サーバのデフォルト・データベース内の Kerberos ログイン・マッピングと一致するユーザ・プロファイル名を使用してログオンしていることが必要です。

    CONNECT USING 'KERBEROS=SSPI';