認証
認証方式
パスワード認証
パスワード認証とは、ユーザーのログイン名とパスワードを使って認証する方法です。
パスワード認証では、リクエストヘッダーに「X-Cybozu-Authorization」ヘッダーを指定します。
ヘッダーの値は ログイン名:パスワード
を Base64 エンコードした値です。
たとえば、ログイン名が「Administrator」でパスワードが「cybozu」の場合、リクエストヘッダーには次の値を指定します。
|
|
kintone や Garoon からパスワード認証を使って Garoon REST API を実行した後は、再度ログインを求められます。
kintone や Garoon の JavaScript カスタマイズで、
XMLHttpRequest
や
Fetch API
などを使って Garoon REST API を実行するときは、
リクエストトークン を利用してください。
kintone や Garoon のカスタマイズファイルにパスワードなどの認証情報をハードコーディングすることは、認証情報の漏洩の恐れがあるため、推奨していません。 詳しくは、 セキュアコーディングガイドライン を確認してください。
セッション認証
セッション認証とは、Web ブラウザーで cybozu.com にログインしたときのセッションを使って認証する方法です。
Garoon や kintone に適用した JavaScript ファイルから Garoon REST API を実行する場合には、セッションによる認証を利用できます。
ブラウザーの
Fetch API
や
XMLHttpRequest
を使って、POST/PATCH/PUT/DELETE メソッドの API を実行する場合は、
CSRF トークン を付与してください。
詳細は、
Garoon CSRFトークンの利用例 を参照してください。
OAuth クライアントを利用した認証
OAuth クライアント を参照してください。
認証方式の優先順位
パスワード認証とセッション認証を同時に利用した場合の優先順位は、次のとおりです。
- パスワード認証
- OAuth クライアントを利用した認証
- セッション認証
セキュリティ設定を行っている環境での API の利用
IP アドレス制限を設定している場合
IP アドレス制限
を設定している場合、次のいずれかの方法で実行します。
- 「IP アドレス制限」の設定で、REST API を実行する環境の IP アドレスを許可する。
- 有効期限の過ぎていないクライアント証明書を使う。
Basic 認証
Basic 認証
を設定している場合、リクエストヘッダーに「Authorization」ヘッダーを指定します。
ヘッダーの値は「Basic 」と「Basic 認証のユーザー名:Basic 認証のパスワード
を Base64 エンコードした値」を結合した値です。
たとえば、ログイン名が「cybozu」でパスワードが「password」の場合、リクエストヘッダーには次の値を指定します。
|
|
クライアント証明書
クライアント証明書は、セキュアアクセスの利用を許可することで発行できます。
セキュアアクセスの利用を許可し、クライアント証明書を発行する方法は、
セキュアアクセスを設定する
を参照してください。
クライアント証明書を使って実行する場合、URL のサブドメインの後に .s
を付ける必要があります。
たとえば「sample.cybozu.com」の場合、URL は「https://sample.s.cybozu.com」です。
SAML 認証を設定している場合
SAML 認証
を設定している環境でも、このページで案内している認証方式を使って Garoon REST API を利用できます。
ただし、パスワード認証を使う場合には、cybozu.com のログイン名とパスワードを指定してください。
.com 共通管理で ログイン時に SAML 認証だけを使うように制限する
設定を有効にしている場合には、パスワード認証で実行できるユーザーは、cybozu.com 共通管理者のみに制限されます。
その他の認証方式では、この制限を受けません。
2要素認証を設定している場合
2 要素認証
を有効にしたユーザーでは、パスワード認証で REST API を実行できません。
パスワード認証以外の認証方式で実行するか、2 要素認証を無効にした連携用ユーザーを用意してください。