認証エラーのエラーメッセージ

要素を返すエンドポイント

要素を返すエンドポイントについては、指定のリソースが存在しない場合、Cloud API は「パス ... にリソースが見つかりませんでした」のようなユーザーメッセージとともに NotFoundException をスローします。指定リソースが存在した場合に十分なリソースアクセス権をユーザーが持っていないと、Cloud API は同じユーザーメッセージとともに同じ例外をスローします。前述の手法は安全であると扱われますが、その理由としては、アクセス権限がないデータの存在を悪意のある呼び出し元が確認できないからです。

例えば、ユーザーが GET /activities/xc:20 を実行するとします。そして、アクティビティ xc:20 が存在するが、ユーザーには十分なリソースアクセス権がないと、以下のエラーが返されます。

"status": 404,
        "errorCode": "gw.api.rest.exceptions.NotFoundException",
        "userMessage": "No resource was found at path /activities/xc:20"

コレクションを返すエンドポイント

コレクションを返すエンドポイントについては、すべてのリソースが条件に一致しておりユーザーが十分なリソースアクセス権を持っている場合、Cloud API ですべてのリソースを返します。リソースが存在するが、ユーザーが十分なアクセス権を持っていない場合、Cloud API は結果から除外します。前述の手法は安全であると扱われますが、その理由としては、アクセス権限がないデータの存在を悪意のある呼び出し元が確認できないからです。

例えば、ユーザーが GET /activities を実行するとします。そして、データベースに xc:10、xc:20、および xc:30 の 3 つのアクティビティがあるとします。そのユーザーには、xc:10 および xc:30 を表示するアクセス権はありますが、xc:20 を表示するアクセス権はありません。呼び出しによって、以下が返されます。

{
  "count": 2
  "data": [ 
    { 
      "attributes": {
        "id": "xc:10",
        ... },
      ...
    },
    { 
      "attributes": {
        "id": "xc:30",
        ... },
      ...
    }
  "links": { ... }
}