2012-06-12 10 views
19

アクセス権に基づいて、異なるユーザーに対して同じ質問に異なる回答を提供したいと考えています。私はこの質問読み:ユーザーの表示権限に基づいて異なるRESTリソースの内容

Excluding private data in RESTful response

をしかし、RESTの私の理解は、特定のリソースが住むべきであるということですので、私は、あなたが/people.xml/unauthenticated/people.xmlの両方を提供しなければならないと述べて受け入れ答え、同意しません特定の場所ではなく、あなたが興味を持っているどのくらいのその情報のに応じて、いくつかの。

私が設計してるシステムはさらに複雑に1つ以上です。ユーザーが複数のサークルの友だちを作成し、異なるアクセス権を割り当てているとします。たとえば、私の「知人」サークルは私の誕生日にアクセスでき、「プロ」サークルは私の就職履歴にアクセスすることができますが、それ以外の方法でアクセスすることはできません。私が言及した質問から答えを適用するために、私は、そうで/circles/b/users/42/circles/c/users/42とを(私はセキュリティ上の理由のために秘密にしておきたいかもしれません)、ユーザの円の全てを取得する方法を持って、その後、/circles/a/users/42を通過する必要がありますその結果をマージして利用可能な最大情報量を表示します。 明らかに、他のサークルのいずれかが取得するすべての情報を取得する単一のサークルである必要はありません。私は(私はおそらく別の手順が必要になることがありますオブジェクトのいくつかの種類とその将来のバージョンでこれを行う必要があることに注意)、これは十分にトリッキーであると信じて、しかし、私はという事実にもかかわらず、特定のユーザーにセキュリティ制限を課すことをしたい場合彼は私のサークルの一部にもいるのですか?その問題を解決することはできますか?私が上記の質問のいずれかに答えることを拒否し、私に答えを与えることができる新しいものを思い付いても、この特定のユーザーが個々のアクセス制限のために異なって扱われるという事実を明らかにするでしょう。

私はここで何が欠けていますか? RESTful Webサービスを開発することも可能ですか?

結論は動作がRESTfulなないということであるならば、これはまだREST契約を破るために道徳的に大丈夫だろうな状況として構成するのでしょうか?もしそうなら、否定的な意味は何ですか?たとえば、プロキシキャッシングの問題を起こす危険はありますか?

答えて

関連する問題