メニュー

Rate this page:

Thanks for rating this page!

We are always striving to improve our documentation quality, and your feedback is valuable to us. How could this documentation serve you better?

ユーザーアイデンティティとアクセストークン

In your Programmable Chat application, you will be responsible for two components:

  • ユーザーがメッセージを送受信するクライアント(ブラウザ、iOS、Android)アプリケーション
  • ユーザーのアイデンティティを保証するサーバー

本ガイドでは、メッセージングアプリケーション内でこの 2 つのコンポーネントがどのように連携するのかを説明します。

クライアント:アクセストークンのリクエスト

ユーザーがブラウザーまたはモバイルデバイスでメッセージの送受信を始めようとした時点では、Twilio はユーザーを信頼できません。現代のインターネットの状況を考えれば当然でしょう! ユーザーは、開発者であるあなたが保証しなければなりません。これによって、Twilio もユーザーを信頼できるようになります。

ユーザーが誰なのか、またユーザーにどんな操作が許可されているのかを Twilio に伝えるアクセストークンをユーザーに与える必要があります。スターターアプリケーションでは、次のようにクライアントがサーバーにアクセストークンをリクエストします。

        
        
        
        

        クライアントは、接続に使用しているデバイスを一意に認識するために何らかのデバイス ID を提供する必要があります。通常は、iOS ではベンダー IDAndroid では ANDROID_ID を使用します。ウェブアプリケーションでは、ちょうどいいものが用意されていませんが、fingerprint.js のようなライブラリの使用を検討することを推奨します。

        このリクエストをサーバーでどのように処理し、クライアントのトークンを作成するのか見てみましょう。

        サーバー:アクセストークンの作成

        サーバーでは、送信されたトークンリクエストに基づいて、このユーザーは誰なのかこのユーザーに何を実行することを許可する必要があるのかを決定する必要があります。

        ユーザーが誰なのか(ユーザーのアイデンティティ)を判断するために、既存のログインシステム(セッション cookie、API トークン、または API リクエストやページをセキュアにするために現在使っているメカニズム)を使うことができます。また、ユーザーが誰なのかをまったく気にしない場合は、スターターアプリケーションのように、一時的なアイデンティティをユーザーに割り当てることもできます。ユーザーが誰なのかを判断する方法は、アプリケーションごとに違ってきます。

        If you determine that the user should indeed be allowed to access your Chat application, you must grant your user access to Chat and configure an Endpoint ID. Here's how we generate those tokens in our starter apps.

              
              
              
              

              エンドポイント ID について

              An "endpoint" in Chat is a unique app, device, and user combination that can receive a message. For example, "alice@example.com" using "SquareChat" on her iPhone is a different message delivery destination (endpoint) than "alice@example.com" using "SquareChat" on her Kindle Fire tablet. The endpoint ID you generate on the server - while it can be a string in any format you want - should integrate at least these three dimensions.

              Once your client receives an Access Token from your server, you can initialize the Twilio Chat SDK and start sending and receiving messages.

              クライアント:アクセストークンによる SDK の初期化

              Access Token in hand, we can now initialize the Chat SDK on the client to start doing fun stuff like sending and receiving messages. Here's how you would use the token string to initialize the client, again taken from the starter apps.

                    
                    
                    
                    

                    クライアントを初期化すると、すべての SDK の機能にアクセスできるようになります。

                    トークンの有効期限切れ

                    先に進む前に、tokenExpired イベントをリスニングし、トークンをリフレッシュします。

                          
                          
                          
                          

                          トークンロジックがセットアップされたので、まずやってみたいのは、チャンネルでメッセージを送受信することでしょう。その方法を学ぶには、次のリンクをクリックしてください!

                          次のセクション:チャンネルとメッセージ »

                          Rate this page:

                          ヘルプが必要ですか?

                          We all do sometimes; code is hard. Get help now from our support team, or lean on the wisdom of the crowd browsing the Twilio tag on Stack Overflow.