3

私はGWTアプリケーションを作成しており、ユーザーロールに基づいて特定のウィジェットのみをロードする必要があります。たとえば。管理ウィジェット、ユーザーウィジェットなどがあるかもしれません。

これをどのように実装できるか考えていますか?

1つのオプションは、コード内の役割を確認して非表示にすることです。しかし、このコードはクライアント側で実行されるため、これはセキュリティ上のリスクだと思います。

4

2 に答える 2

3

サーバー側で役割を管理する必要があります。

  1. なんらかの方法でルートウィジェットに役割を渡します。

    • RPC中にサーバーに電話しonModuleLoadて役割を尋ねる

    • または、 JSPからJSに渡しget、ウィジェットからネイティブを使用します。

  2. 必要なパネルを作成する

はい、すべてのjsコードがクライアントにあり、JSデバッグを使用してフローを変更できるため、まだリスクがあります。これを防ぐには、Adminウィジェットからサーバー側へのすべての呼び出しをフィルタリングし、たとえば、成功する結果が得られずに失敗するようにする必要があります。したがって、サーバーへのすべての呼び出しが失敗するため、管理ウィジェットは何もできません。

それでも十分に安全でない場合は、別のGWT Entry Pointsを使用できます。この場合、クライアントを個別のJSコードを使用して個別のページに転送します。

于 2012-11-16T08:24:25.203 に答える
1

同じ問題があります。私はこれを見つけました(まだ使用していませんが、これが解決策かもしれないと思います): acris

于 2012-11-16T07:53:46.007 に答える