認証エンドポイントについて
概要
ユーザー認証をするための API として GET|POST /endpoint/type/:serverType/user/:uid
を提供していますが、よりセキュアに利用いただくためには、ゲーム側の API サーバー等を経由して認証・認可処理などを挟んだ上で認証情報を返却していただくことをおすすめしております。
シーケンス
以下に認証処理の一例を示します。ゲームサーバーを経由し、認証・認可処理などの前処理を行い、Diarkis サーバーの認証エンドポイントから認証情報を取得し、返却します。
エンドポイント仕様
GET|POST /endpoint/type/:serverType/user/:uid
:serverType
は認証するサーバータイプ (UDP/TCP など) を指定します。:uid
には userID を指定します。リクエストメソッドは
GET
POST
のどちらでも可能です。
レスポンスは以下の様になります(Diarkis サーバーに接続できる環境で curl でも確認いただくことが可能です)
# 例) UDP サーバータイプに接続する場合 /endpoint/type/UDP/user/userID
% curl 127.0.0.1:7000/endpoint/type/UDP/user/user0001
{
"encryptionIV": "3f78480272d6415c8a29ef7aafce3f61",
"encryptionMacKey": "80cf921c367042a99f868b13b72a209d",
"serverType": "UDP",
"serverHost": "127.0.0.1",
"serverPort": 7100,
"sid": "8c63eaa3783e4bf2a4097823697b4551",
"encryptionKey": "d08589d341fd4f1696f058c0c4fe21f5"
}
非推奨の認証エンドポイントについて
GET /auth/:uid
エンドポイントは起動しているサーバータイプすべてに対してユーザー認証を行うため、例えば UDP と TCP サーバーが起動している場合は、双方に対してユーザーを作成します。
それによって利用しないサーバーに対してもユーザー生成するコストが発生し、サーバー負荷が高まる原因となります。
[2024/11/11 11:11:11.111]<HTTP> WARNING HTTP|10.4.4.4:8100 GET /auth/:uid has been deprecated. Please use GET /endpoint/type/:serverType/user/:uid instead
上記のようなログがある場合は GET /endpoint/type/:serverType/user/:uid
に切り替えをお願いいたします。
参考
詳細は以下の API リファレンスをご覧ください。
https://docs.diarkis.io/docs/server/v1.1.0-beta3/diarkis/server/http/index.html#hdr-Endpoint_API
最終更新
役に立ちましたか?