一部のビジネスシナリオでは、データ同期に高いセキュリティが求められます。プッシュのターゲットユーザーが現在ログインしているユーザーと同一であり、なりすましされていないことを保証する必要があります。MSS は、この要件を満たすためにユーザー一貫性検証機能を提供します。必要に応じてこの機能を有効にできます。この機能の基本原則は次のとおりです:
クライアントがサーバーに接続する際、ユーザー ID (userId) と権限付与トークン (sessionId) をレポートします。ユーザーログインシステムは userId と sessionId の両方を返します。userId または sessionId が変更された場合、クライアントは関連するインターフェイスを呼び出して、持続的接続が正しく確立されるようにする必要があります。
サーバーは、テナントが実装する一貫性検証インターフェイスを呼び出すことができます。テナントはこのインターフェイスを使用して一貫性チェックをコントロールします。MSS はこのチェックの結果を記録します。
高いセキュリティ要件を持つ同期構成の場合、テナントは一貫性検証を有効にできます。データは、この検証に合格したユーザーデバイスにのみプッシュされます。一貫性検証が有効になっていない構成の場合、検証結果は無視されます。
一貫性検証インターフェイスの構成
このセクションでは、com.antcloud.session.validate 一貫性検証インターフェイスの構成方法について説明します。
mPaaS コンソールで一貫性検証インターフェイスを構成した後、RPC インターフェイスの署名検証機能を無効にしてください。そうしないと、モバイル同期の一貫性チェックロジックが正しく機能しなくなります。
操作手順
mPaaS コンソールにログインし、対象のアプリケーションを選択して、Mobile Gateway Service > API 管理ページに移動します。API を追加します。詳細については、「Mobile Gateway > API Management」をご参照ください。
インターフェイス名
API の operationType を com.antcloud.session.validate に設定します。リクエストパラメーターは次のとおりです:
名前 | タイプと長さの仕様 | 必須 | 例 | 説明 |
instanceId | String | はい | instancedemo | 「workspaceId_appId」のフォーマットの文字列です。 |
userId | String | はい | 20880939 | ユーザー ID。 |
sessionId | String | はい | kkdddd | クライアントからの権限付与トークン。 |
レスポンスパラメーター
一貫性チェックロジックを実装して、JSON フォーマットでデータを返します。以下に例を示します:
{
"resultCode": "OK",
"resultMsg": "Operation is done successfully",
"success": true,
"result": {
"sid": "kkdddd",
"valid":true/false
}
}プロパティは次のように説明されます:
名前 | タイプ | 例 | 説明 |
success | boolean | true/false | サービス呼び出しが成功したかどうかを示します。成功の場合は |
returnCode | String | ERROR | リザルトコード。 |
resultMsg | String | SYSTEM-ERROR | リザルトメッセージ。 |
sid | String | kkdddd | 権限付与トークンまたは sessionId。 |
valid | boolean | true/false | 検証結果。 |
ビジネスリザルトコード
結果 | リザルトコード | 説明 |
true | OK | 操作は成功しました。 |
false | OPERATION_ERROR | OPERATION エラーが発生しました。これは |