4D v16.3On SQL Authenticationデータベースメソッド |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v16.3
On SQL Authenticationデータベースメソッド
On SQL Authenticationデータベースメソッド
On SQL Authenticationデータベースメソッドは4Dに統合されたSQLサーバへ送られたリクエストを選別します。この選別は、名前とパスワー ド、そしてユーザのIPアドレス (オプション) に基づいて実行されます。開発者は独自のユーザーテーブルや、4Dのユーザーテーブルを使用して、接続を識別できます。接続を認証したら、CHANGE CURRENT USER コマンドを呼び出して、4Dのデータベース内のリクエストへのアクセスをコントロールしなければなりません。 On SQL Authenticationデータベースメソッドが存在する場合、4Dまたは4D ServerのSQLサーバに外部からSQL接続が行われると、自動的にこのメソッドが呼び出されます。4Dユーザを管理する内部システムは起動しません。データベースメソッドが$0にTrueを返しかつ、CHANGE CURRENT USERコマンドの実行が成功した場合のみ、接続が受け入れられます。これらの条件を満たさない場合リクエストは拒否されます。 Note: SQL LOGIN(SQL_INTERNAL;$user;$password)ステートメントは内部接続となるため、On SQL Authenticationデータベースメソッドを呼び出しません。 データベースメソッドは最大3つのテキストタイプの引数を4Dより受け取り、$0にブール値を返します。以下はこれらの引数の説明です。
(*) 4DはIPv4アドレスを、96-bitの接頭辞付きのハイブリッド型のIPv6/IPv4フォーマットで返します。例えば、ffff:192.168.2.34は、192.168.2.34というIPv4アドレスを意味します。詳細な情報については、IPv6のサポートの章を参照して下さい。 以下のようにこれらの引数を宣言しなければなりません: ` On Web Authentication データベースメソッド 標準テキストとして、パスワード($2)を受け取ります。 On SQL AuthenticationデータベースメソッドでSQL接続の識別子を確認します。例えば、ユーザのカスタムテーブルを使用して名前とパスワードをチェックします。識別子が有効な場合は、$0にTrueを返して接続を受け入れます。その他の場合は$0に、Falseを返して接続が拒否されます。 Note: On SQL Authenticationデータベースメソッドが存在しない場合、4Dの統合されたユーザ管理システムを使用 して、接続を決定します (有効になっている場合、つまりDesignerにパスワードが割り当てられている場合)。このシステムが起動していない場合、ユーザはDesigner アクセス権 (フリーアクセス) で接続されます。 $0にTrueを渡す場合、リクエストを受け入れ、ユーザのためにSQLのセッションを開くためには、On SQL AuthenticationデータベースメソッドでCHANGE CURRENT USER コマンドを呼び出し、その実行が成功しなければなりません。 以下の例でOn SQL Authenticationデータベースメソッドは、接続リクエストが内部ネットワークからのものであることを確認し、識別子を検証、SQLセッションへのアクセス権に"sql_user" ユーザを割り当てます。 C_TEXT($1;$2;$3)
|
プロパティ
プロダクト: 4D
履歴
初出: 4D v11 SQL Release 2 ARTICLE USAGE
ランゲージリファレンス ( 4D v16) |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||