国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

目次
3. ToUserName Request に従って検証できます
4. AppId と AppSecret
5. サーバーのセキュリティを確保する
ホームページ WeChat アプレット WeChatの開発 WeChatパブリックプラットフォーム開発のセキュリティ戦略

WeChatパブリックプラットフォーム開発のセキュリティ戦略

Mar 03, 2017 am 10:11 AM
マイクロチャネルパブリックプラットフォーム

WeChat リクエストを処理するサーバーは WeChat サーバーのバックエンドにありますが、セキュリティの問題は依然として過小評価できません。

注目を集めるために、次の側面を大まかに要約します。

1. 非常に複雑なトークンを設定し、サービスアドレス URL を非表示にしてみます

URL: これは WeChat リクエストを処理するためのリンク アドレスです
トークン: ユーザー ID 証明書

開発者になることを申請するとき、または URLToken を変更するとき、 WeChat は、Get Access を通じて URL をリクエストし、トークンを必要とする署名を検証します。

この処理はハンドシェイクに相當し、ハンドシェイクが成功するとその後の通信が可能となります。

微信公眾平臺開發(fā)安全策略

直面する危険:

1. URL とトークンがクラックされ、他の公開アカウントに直接リンクされている場合、サービスが直接盜まれる可能性があります。もちろん、一部の広告タイプのアカウントでは、これでは利益が得られません。しかし、特定のアプリケーションやサービスを提供し、他のアカウントには無料でサービスを提供するパブリックアカウントの場合、必然的にサーバーへの負荷が増大し、一定のリスクが生じます。

2. トークンがクラックされていなくても、URL がクラックされた場合。もちろん、犯罪者の中にはその URL を攻撃する人もいます。笑

提案:

1. サービスの URL が情報や Web ページの提供と直接的な関係がないことを確認するようにしてください。これを防ぐために、サービス URL は URL に基づいて計算されます。

2. URL リダイレクトを使用して、一部のパス情報を非表示にすることができます。

3. サービス內のリクエストのソースを特定します (WeChat サーバーからのリクエストであるかどうか)。これはリクエストされた URL に基づいて決定され、他のリクエストは処理されません。

4. トークンの値は、できるだけ複雑にするようにしてください。

2. すべてのリクエストに対して署名検証を実行することをお勧めします

URL またはトークンを設定した後、WeChat はバックエンド サービスにアクセスするための get リクエストを送信します。検証に合格した後、他のすべての WeChat リクエストは POST を通じて送信されます。

そのため、コードではリクエストメソッドに基づいて署名検証を行うかどうかを判斷することがよくあります。前の例では、これも使用されました:

?///?<summary>
????????///?處理請求,產生響應
????????///?</summary>
????????///?<returns></returns>
????????public?string?Response()
????????{
????????????string?method?=?Request.HttpMethod.ToUpper();
????????????//驗證簽名
????????????if?(method?==?"GET")
????????????{
????????????????if?(CheckSignature())
????????????????{
????????????????????return?Request.QueryString[ECHOSTR];
????????????????}
????????????????else
????????????????{
????????????????????return?"error";
????????????????}
????????????}

????????????//處理消息
????????????if?(method?==?"POST")
????????????{
????????????????return?ResponseMsg();
????????????}

????????????return?"無法處理";
????????}

他の WeChat リクエストは POST として送信されますが、その URL には署名情報も含まれており、署名認証も実行する必要があります。したがって、セキュリティ上の理由から、リクエストごとに署名認証を実行することをお勧めします。

この原則に基づいて、コードを次のように変更します:

        /// <summary>
        /// 處理請求,產生響應        /// </summary>
        /// <returns></returns>
        public string Response()
        {            string method = Request.HttpMethod.ToUpper();            //驗證簽名
            if (method == "GET")
            {                if (CheckSignature())
                {                    return Request.QueryString[ECHOSTR];
                }                else
                {                    return "error";
                }
            }            //處理消息
            if (method == "POST")
            {                //驗證簽名
                if (CheckSignature())
                {                    return ResponseMsg();
                }
            }            return "無法處理";
        }

署名アルゴリズム CheckSignature()。詳細については、ここでは詳しく説明しません: WeChat パブリック アカウント開発の基本フレームワークの構築を參照してください。

3. ToUserName Request に従って検証できます

通常、パブリック アカウントはメッセージの処理時に取得できる openId に対応します。このopenIdは固定されており、これに基づいて送信者の身元情報を判斷できます。このようにして、無効なメッセージや欺瞞を非常にうまくフィルタリングすることができ、私に送信されたメッセージのみが処理されます。 URL とトークンがクラックされた場合でも、バックエンド サービスは保証されており、パブリック アカウントに対してのみサービスを提供します。

/// <summary>
        /// 是否是發(fā)給我的呢
        /// </summary>
        /// <param name="toUserName">接受者</param>
        /// <returns>bool</returns>
        private bool IsSentToMe(string toUserName)
        {
            return string.Equals(toUserName,Context.OpenID,StringComparison.OrdinalIgnoreCase);
        }

4. AppId と AppSecret

サービス アカウントの場合、いくつかの高度な機能があり、これらの高度な機能には開発者の資格情報 (AppId と AppSecret) が必要です。

AppIdとAppSecretに基づいてACCESS_TOKENを取得でき、ACCESS_TOKENに基づいてカスタムメニューなどの高度な機能を管理できます。
ACESS_TOKEN には有効期限があり、通常は 7200 秒です。ただし、AppId と AppSecret はシステムによってランダムに生成され、有効期限がありません。変更する必要がある場合は、WeChat パブリック アカウント管理プラットフォームにログインしてリセットする必要があります。

Access_Token を取得するには、Get

https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=xxxx&secret=xxxx.

を通じて次の URL をリクエストします。 Access_Token を取得した後、いくつかの高度なインターフェイスを操作できます

例:

http リクエスト メソッド: POST を通じてカスタム メニューを作成します (https を使用してください)プロトコル)

https://api.weixin.qq.com/cgi-bin/menu/create?access_token=ACCESS_TOKEN

具體的な実裝については、次を參照してください: WeChat パブリック アカウント開発カスタム メニュー


ACCESS_TOKEN は get メソッドを通じて取得されますが、実際にはあまり安全ではありません。盜まれた場合、リンクを変更する可能性があります。カスタム メニューを広告リンクや邪悪なリンクに変更すると、サーバーが直接他人の食肉機械になります。したがって、サーバーのセキュリティを確保する必要があります。セキュリティ上の理由から、AppId と AppSecret (WeChat パブリック プラットフォームのバックグラウンド サービス ページ) を時々リセットすることをお勧めします。最も重要なことは、許可されたサーバーのセキュリティを確保することです。詳細については、5 を參照してください。

5. サーバーのセキュリティを確保する

サーバーのセキュリティには、ネットワークのセキュリティの確保、ファイアウォールの設定、ウイルス対策ソフトウェアのインストール、一部のポートの制限など、さまざまな要素があります。これは通常のサーバーと同じです。この領域には多くの情報がありますが、ここでは説明しません。

WeChat パブリック プラットフォーム開発のセキュリティ戦略と関連記事の詳細については、PHP 中國語 Web サイトに注目してください。

このウェブサイトの聲明
この記事の內容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰屬します。このサイトは、それに相當する法的責任を負いません。盜作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undress AI Tool

Undress AI Tool

脫衣畫像を無料で

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード寫真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

寫真から衣服を削除するオンライン AI ツール。

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中國語版

SublimeText3 中國語版

中國語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統(tǒng)合開発環(huán)境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)