SQL Anywhere は、クライアント・ファイルの転送において、データベース・サーバ・コンピュータとは異なる場所に存在することの多いクライアント・コンピュータ上のデータを不正に転送できないようにする手段を提供しています。
そのため、データベース・サーバは各文の実行元を追跡し、文がクライアント・アプリケーションから直接受信されたものかどうかを判断します。クライアントからの新しいファイルの転送を開始する際に、データベース・サーバは文の実行元に関する情報を付加します。文がクライアント・アプリケーションから直接送信された場合は、CmdSeq ファイル・ハンドラによってファイルの転送が許可されます。文がクライアント・アプリケーションから直接送信されたものではない場合、アプリケーションは検証のコールバックを登録する必要があります。コールバックが登録されないと、転送が拒否されて文が失敗し、エラーが発生します。
また、接続が正常に確立されるまで、クライアント・データの転送は許可されません。この制限により、接続文字列やログイン・プロシージャを使用した不正アクセスを防止できます。
許可されたユーザを装ってシステムへのアクセスを試みるユーザからの保護を実現するには、転送データの暗号化を行ってください。
また、SQL Anywhere では、さまざまなレベルでアクセスを制御する次のセキュリティ・メカニズムも提供しています。
サーバ・レベルのセキュリティ read_client_file および write_client_file 保護機能により、サーバワイドでクライアント側の転送を無効にできます。-sf サーバ・オプションを参照してください。
アプリケーション・レベルおよび DBA レベルのセキュリティ allow_read_client_file および allow_write_client_file データベース・オプションにより、データベース、ユーザ、接続レベルでのアクセス制御を実現します。たとえば、アプリケーションの接続後にこのデータベース・オプションを OFF に設定することにより、アプリケーションがクライアント側の転送に使用されるのを防止できます。allow_read_client_file オプション [データベース]を参照してください。
ユーザ・レベルのセキュリティ READCLIENTFILE および WRITECLIENTFILE 権限は、それぞれクライアント・コンピュータからのデータの読み込みまたはクライアント・コンピュータへのデータの書き込みに対して、ユーザ・レベルのアクセス制御を提供します。READCLIENTFILE 権限とWRITECLIENTFILE 権限を参照してください。
Copyright © 2009, iAnywhere Solutions, Inc. - SQL Anywhere 11.0.1 |