CSRFトークン利用時の注意点
今回はCSRFトークンについて、以下の利用時の注意点を紹介します。
-
CSRFトークンを取得する で仕様を明記しているとおり、kintone REST APIをセッション認証で実行する場合は、CSRFトークンが必要となります。(HTTPメソッドがPOST, PUT, DELETEの場合のみ)
-
kintone内(JavaScript)でAPIを実行する場合は、HTTPメソッドにかかわらずCSRFトークンは不要となります。
- 例外として、JavaScriptからXMLHttpRequestを使ってREST APIを実行する時はCSRFトークンが必要となります。
その場合も、CSRFトークンが必要になるのはHTTPメソッドがPOST, PUT, DELETEの場合のみです。
- 例外として、JavaScriptからXMLHttpRequestを使ってREST APIを実行する時はCSRFトークンが必要となります。
XMLHttpRequestは主に、「kintone REST APIリクエスト(kintone.api)」から実行できないREST API(ファイルのアップロード、ダウンロード)を実行したい場合に利用します。
参考Tips
-
- 「kintone REST APIリクエスト(kintone.api)」が未対応のREST API(ファイルアップロード)を実行する目的でXMLHttpRequestを使うため、CSRFトークンが必要となるパターンです。
-
- 「kintone REST APIリクエスト(kintone.api)」が未対応のREST API(ファイルダウンロード)を実行する目的でXMLHttpRequestを利用するケースです。
この場合、HTTPメソッドがPOST, PUT, DELETE以外のためCSRFトークンは不要となるパターンです。
- 「kintone REST APIリクエスト(kintone.api)」が未対応のREST API(ファイルダウンロード)を実行する目的でXMLHttpRequestを利用するケースです。
まとめ
POST, PUT, DELETE | POST, PUT, DELETE以外 | |
---|---|---|
kintone REST APIリクエスト(kintone.api) | 不要 | 不要 |
XMLHttpRequest | 必要 | 不要 |
このTipsは、2014年4月版kintoneで動作を確認しています。