0

これらがプログラミングに関する質問かどうかはわかりませんが、私のような新しいプログラマーの多くが同じ質問をしていることは確かです。

php を使用してデータを vfp フリー テーブルに更新する Web サービスを作成しました。VfpOledb を使用して php とテーブルを接続します。多くのクライアントは、この Web サービスを使用して、サーバー内の複数のテーブルにデータを更新します。例 : ユーザー A がディレクトリ X のテーブル t_sales を更新し、ユーザー B がディレクトリ Y のテーブル t_sales を更新し、ユーザー C がディレクトリ Z のテーブル t_sales を更新します。

質問は次のとおりです。

  1. どちらが優れている/高速で、その理由: 別のユーザー用に別の php ファイル (Web サービス) を作成するか、データソースの場所を決定するために内部にスイッチケース部分を含む 1 つの php ファイルを作成しますか?

  2. どちらが優れている/安全で、その理由: ユーザーからのパラメーターとしてデータソースの場所を送信するか、データソースの場所を php ファイルに保存しますか?

どうもありがとう

4

1 に答える 1

1

データソースの場所によって、DB サーバーとテーブルを参照していると仮定します。DB サーバーとテーブルが自分のものであり、ユーザーがアクセスできるテーブルを制限したい場合、データベース情報を内部的に決定する必要があります。

Web サービスは、「/myservice/update?name=x&email=y&key=32453457830957834」のようにアクセスされる API を提供する必要があります。必要な情報は次のとおりです。

  • 挿入/更新用のデータ
  • 検索/フィルタ パラメータ
  • セキュリティ トークンまたは API キー

これにより、Web サービスを簡単に使用できるようになり、入力を回避する限り、インジェクション攻撃に対して安全になります。(テーブルをパラメーターとして定義できるようにすると、それをエスケープすることはできず、あなたとあなたのユーザーはユーザーの意のままになります。)

パフォーマンスに関しては、DB トランザクションにかかる時間と比較して、DB へのアクセス方法を決定するロジックはほとんどのアプリケーションにとって無視できます。

于 2012-04-05T02:31:37.417 に答える