Data.DB.TCustomConnection.LoginPrompt

提供: RAD Studio API Documentation
移動先: 案内検索

Delphi

property LoginPrompt: Boolean read FLoginPrompt write FLoginPrompt default False;

C++

__property bool LoginPrompt = {read=FLoginPrompt, write=FLoginPrompt, default=0};

プロパティ

種類 可視性 ソース ユニット
property public
Data.DB.pas
Data.DB.hpp
Data.DB TCustomConnection


説明

新しい接続が開かれる直前にログイン ダイアログが表示されるかどうかを指定します。

LoginPrompt を True に設定すると、接続の確立時にログイン サポートが提供されます。LoginPrompt で 2 つの事が制御されます。つまり、OnLogin イベントの発生と、ユーザーにユーザー名とパスワードの入力を促すデフォルト ログイン ダイアログの表示です。ログイン ダイアログをリンクするには、次のようにします。

  • 非 FireDAC アプリケーションの場合は、お使いのユニットに DBLogDlg.hpp をインクルードする(C++ の場合)か、お使いの uses 句に DBLogDlg を追加します(Delphi の場合)。
  • FireDAC アプリケーションの場合は、TFDGUIxLoginDialog コンポーネントを使用します。

OnLogin イベントが発生するタイミングとデフォルト ログイン ダイアログが表示されるタイミングは、次のように、接続コンポーネントの種類によって異なります。

  • TIBDatabase、TSQLConnection、TFDConnection の場合は、OnLogin イベントのハンドラを用意しない限り、BeforeConnect イベントの後でかつ AfterConnect イベントの前にダイアログが表示されます。
    • OnLogin イベントのハンドラがある場合は、ログイン ダイアログの代わりにそのイベントが発生するので、ログイン ダイアログをリンクする必要はありません。
    • ユーザー名とパスワードの正しい値がダイアログまたは OnLogin イベントのハンドラで入力されない場合、接続は失敗します。LoginPrompt が True に設定されていない限り、OnLogin イベントは発生しません。
  • TADOConnection コンポーネントの場合は、OnWillConnect イベントの後でかつ BeforeConnect イベントの前にダイアログが表示されます。
    • OnLogin イベントのハンドラがある場合は、ログイン ダイアログの後にそのイベントが発生します。
    • お使いのユニットに DBLogDlg.hpp をインクルードしない場合(C++)や、お使いの uses 句に DBLogDlg を追加しない場合(Delphi)は、OnLogin イベントは発生しますが、デフォルト ログイン ダイアログは表示されません。
    • ユーザー名とパスワードの正しい値がダイアログまたは OnLogin イベントのハンドラで入力されない場合、接続は失敗します。LoginPrompt が True に設定されていない限り、OnLogin イベントは発生しません。
  • DataSnap SOAP 接続コンポーネントの場合は、OnGetUsername イベントの後でかつ BeforeConnect イベント、AfterConnect イベント、OnLogin イベントの前にダイアログが表示されます。ログイン ダイアログでユーザーがキャンセルした場合は、接続は開かれません。

LoginPrompt が False の場合は、アプリケーションのプログラムで、次のように、ユーザー名とパスワードの値を指定する必要があります。

  • TADOConnection の場合は、ユーザー名とパスワードを ConnectionString プロパティとして指定できます。
  • TSQLConnection の場合は、ユーザー名、パスワード、データベースを Params プロパティ内の UserName、Password、Database の各パラメータとして、または、接続名に関連付けられた接続パラメータとして指定できます。
  • DataSnap SOAP 接続コンポーネントの場合は、ログイン ダイアログで入力されるユーザー名とパスワードは本来使用されません。なお、TWebConnection の UserName プロパティと Password プロパティは無関係です。
  • TFDConnection の場合は、ユーザー名とパスワードを Params プロパティ内の User_Name および Password パラメータとして、または、接続定義に関連付けられたパラメータとして指定できます。

警告: ハードコードされたユーザー名およびパスワードをプロパティ値として格納したり OnLogin イベント ハンドラのコードに記載すると、サーバーのセキュリティが脅かされるおそれがあります。

関連項目

コード サンプル