@Nathanが最終的に単純なHTTPヘッダーになり、OAuth2およびクライアント側のSSL証明書と言う人もいました。その要点はこれです... APIの範囲外であるため、REST APIはセキュリティを処理する必要はありません。
代わりに、Web プロキシの背後にある HTTP ヘッダー (SiteMinder、Zermatt、さらには Apache HTTPd などの一般的なアプローチ) であるか、OAuth 2 のように複雑であるかにかかわらず、セキュリティ レイヤーをその上に配置する必要があります。
重要なことは、エンドユーザーの操作なしでリクエストが機能することです。必要なのは、REST API への接続が認証されていることを確認することだけです。userPrincipalJava EE では、 で取得できるの概念がありHttpServletRequestます。また、URL パターンを保護できるデプロイメント記述子で管理されるため、REST API コードでチェックする必要がなくなります。
WCF の世界ではServiceSecurityContext.Current、現在のセキュリティ コンテキストを取得するために使用します。認証を要求するようにアプリケーションを構成する必要があります。
上記のステートメントには例外が 1 つあります。それは、リプレイを防止するための nonce の使用です (リプレイは、攻撃または同じデータを 2 回送信するだけの誰かである可能性があります)。その部分はアプリケーション層でしか扱えません。