ホームページ > バックエンド開発 > PHPチュートリアル > PHP開発モバイルインターフェース(拡張版)

PHP開発モバイルインターフェース(拡張版)

WBOY
リリース: 2016-06-23 13:28:26
オリジナル
1063 人が閲覧しました

前に述べたように: モバイル端末と PHP サーバーインターフェースの通信プロセス設計 (基本バージョン)

api_token の検証のために、そのセキュリティをさらに強化できます:

強化 1:

さらに 2 つのテーブルを追加インターフェーステーブルと認可テーブルの設計参照は次のとおりです:

インターフェーステーブル

api_domainvarchar(255)Domain is_enable ちっちゃい(1) 1 は使用可能、0 は使用できませんadd_timeint時刻を追加
フィールド名 フィールドタイプ コメント
api_id int インターフェースID
api_name varchar(120) 「/」で区切られたインターフェース名 (blog/Index/addBlog など)
(注: コアフィールドのみがリストされ、その他は展開できます!!!)

認証フォーム ..

API 番号api_namevarchar(120)利用可能 1: 利用可能0: 利用できません 時間 (スタンプ) を追加 期限切れ時間 (スタンプ)
is_enabled tinyint(1)
add_time int
expire_time int

(注: コアフィールドのみがリストされています。他のフィールドは展開してください!!!)

実行プロセスは次のとおりです:

1. モバイル端末とサーバーによって生成された api_token を比較します。等しくない場合は、直接エラーを返します。そうでない場合は、次のステップに進みます。

2. インターフェース URL に従って、api_name とクライアントからパラメーターとして返された client_id を組み立て、「Authorization Table」レコードを検索します。レコードが存在し、有効である場合 (使用可能かどうか、期限切れかどうか)、権限の検証に合格し、インターフェイス データが返されることを意味します。そうでない場合は、エラー メッセージが返されます。

いくつかの非常に特殊なインターフェースについては、どのように特殊なのか、どのインターフェースが特殊なのかはわかりません。要するに、http リクエストがハイジャックされ、渡されたパラメーターが改ざんされている可能性があると感じています。例:

ページに 5 元を入力しました。これは、誰かが 5 元を送金したいのですが、HTTP 送金プロセス中にハイジャックされて変更されました。考えてみると、この問題を解決するにはいくつかの解決策があります。

オプション 1: を使用します。 https、これについては詳しく説明しません。これは、より認識されたセキュリティ メカニズムです。

オプション 2: デジタル署名を使用します。実装原則は次のとおりです:

次の 3 つのパラメータが必要な場合渡されるパラメータ

パラメータ名 1 = パラメータ値 1

パラメータ名 2 = パラメータ値 2

パラメータ名 3 = パラメータ値 3

別のパラメータを追加できます。パラメータの名前は、identity_key (名前は重要ではありません)、このパラメータの値は、前のパラメータ値を順番に追加して暗号化した結果です。

つまり:

identity_key = md5('パラメータ値 1' + 'パラメータ値 2' + 'パラメータ値 3' + '暗号化キー');

したがって、渡される最終パラメータは次のとおりです:

Parameter名前1=パラメータ値1

パラメータ名2=パラメータ値2

パラメータ名3=パラメータ値3

client_id=client_id値

identity_key=md5('パラメータ値1' + 'パラメータ値2' + 'パラメータ値 3' + 'client_id 値' + '暗号化キー')

サーバーはパラメータを受信した後、同じ暗号化ルールに従ってidentity_keyを再生成します。サーバーのidentity_keyとクライアントのidentity_keyが検証されます。そうでない場合は、それが改ざんされていることを意味します。次に何をするかはあなた次第です。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート