6

Springをベースにした安らかなWebサービスを構築しています。SpringSecurityを使用しています。デスクトップアプリケーションからのみアクセスできます。基本的に、マシンツーマシンのWebサービス。

  • 認証を行うカスタムサービスが必要です。次に、認証の結果に基づいて、他のより機密性の高い操作を実行します。

  • もう1つのオプションは、各リクエストの本文でクレデンシャルを送信し、基本的に毎回認証を行うことです。

Logicによると、毎回の認証にはかなりのオーバーヘッドがあるため、最初のアプローチが最も効率的です。

これに関連して何を提案しますか?ステートレスまたはステートフルにするには?ステートフルアプローチには大きな欠点がありますか?

この時点までに、 Java Web Services Up and Runningのいくつかの章と、このようなSOからのいくつかの質問を読みまし た。

4

2 に答える 2

3

これを行うためのRESTの方法は、提供するリンクに記載されているように、各要求で認証することであり、セッションを維持することではありません。

各リクエストでのユーザー名/パスワードによる認証については、...セキュアレイヤー(https)を使用できれば安全です。それ以外の場合、ペアはクリアテキストで送信され、検出可能です。

もう1つのオプションは、AWSの方法のようなものを使用することです(たとえば、ここここのAmazonへのリンク)。その他の説明はこちら:buzzmediasamritchie

たぶんOAuthはオプションですが、私はそれを使った経験がありません。

于 2012-06-18T07:56:18.547 に答える
0

RESTサービス(クライアント-サーバー)を開始するには、Restletを使用することを強くお勧めします

このRESTサービスへの認証は、を使用して定義できますClientResource。例 :

private static ClientResource getClientResource(String uri) {
ClientResource clientResource = new ClientResource(uri);
clientResource.setChallengeResponse(ChallengeScheme.HTTP_BASIC,
        "username", "password"
        );
return clientResource;
}
于 2012-06-18T01:44:18.667 に答える