トークン認証(OAuth)¶
Strix Cloudは、OAuthを使用するように構成してご自分の方法で接続を認可し、プレイヤーのアカウントを制御することができます。
OAuthの仕組みの詳細については、OAuthのRFCをご覧ください。
認証の有効化¶
Strix Cloud Webコンソールのアプリケーションのページにある [オプション] タブで [認証/認可] のボックスにチェックを入れた上で、 [ユーザーリソース取得API URL]、[ユーザーIDキー名]、[ユーザー名キー名] を指定することにより、OAuthを有効にできます。
認証の使用¶
アプリケーションでOAuthを有効にした場合、クライアント側では次のようにStrixNetwork
シングルトンに認証アクセストークンを設定する必要があります。
StrixNetwork.instance.authorizationAccessToken = myToken;
これには、認証プロバイダーにログインして受け取ったトークンが必要です。Strixサーバーは、Strix CloudのWebコンソールで指定した設定からリソースサーバーの情報を取得し、そのリソースサーバーにリソースを要求します。
リソースサーバーからの応答は、次のようなJSONである必要があります。
{
"name" : "logged in user name",
"userId" : 1
}
適切なJSONオブジェクトを含んだhttp OK応答を受信すると、現在のルームメンバーのnameプロパティと、それに加えてuserIdカスタムプロパティを、応答に含まれていた値に設定します。これらの値は、ネットワークが初期化されている間は上書きできません。これらは、httpアクセストークンを持つユーザーの名前とIDを表します。
HTTPエラー応答を受信した場合、ルームサーバーへの接続は失敗します。ネットワークを停止して再起動し、接続を再試行してください。
注釈
サーバー側の [ユーザーIDキー名] と [ユーザー名キー名] の設定により、使用する認可サーバーに合わせて、使用するJSONのキーの実際の名前(上の例では"name
"と"userId
")を指定することができます。