メインコンテンツまでスキップ

API セキュリティ

APIセキュリティでは、セキュリティの設定ができます。

APIセキュリティの確認方法

サイドバーよりAPIセキュリティを確認したい[API]をクリックします。 そして、[セキュリティ]をクリックします。

Image from Gyazo セキュリティ画面が表示されます。

Image from Gyazo

セキュリティの種類

セキュリティは下記5種類から選択できます。

Image from Gyazo

セキュリティ説明
なしアクセス制限なし
静的アクセストークン静的生成されたトークン認証
動的アクセストークン動的生成されたトークン認証
CookieCookieによる認証
特権付き静的トークンメンバーに紐付いた静的トークン認証

各セキュリティについて

なし

セキュリティなしの設定です。
一時的な開発用APIを作成してテストをする場合や、完全にオープンなデータのみ使用する場合などに利用します。

注記

トークンなしでダイレクトにエンドポイントへのアクセスが可能であるため、基本的には他のセキュリティを選択/設定を検討してください。

静的アクセストークン

静的生成されたトークンによる認証方式を設定します。サーバー間通信する場合や公開情報の提供APIなどに利用します。

静的トークンをリクエストヘッダに指定することで、セキュアなエンドポイントへアクセスできるようにします。

注記

静的生成されたトークンは意図せずに流出した場合やフロントエンドに組み込まれる想定があるので、トークンの更新を想定したシステム構成にしてください。

動的アクセストークン

動的生成されたトークンによる認証方式を設定します。ログインが必要なサイトなどに利用します。

ログイン認証リクエスト毎にワンタイムトークンを動的生成し、その値をリクエストヘッダに指定することで、セキュアなエンドポイントへアクセスできるようにします。

「動的アクセストークン」の場合は下記3項目が必要となります。

  • ユーザーが1人以上登録されている必要があります。
  • 必須エンドポイントの作成が必要です。
  • トークンのマネジメント制御をフロントエンドで実装する必要があります。
必須エンドポイントカテゴリーモデルオペレーション
ログイン認証Login(v1)login_challenge
トークン認証Login(v1)token

トークン認証のAPIが複数設定されている場合、 各API間で認証状態は共有されず、APIごとに認証が必要です。

Cookieによる認証方式を設定します。ログインが必要なサイトなどに利用します。

ログイン認証リクエスト毎にCookieを動的生成し、その値をリクエストヘッダに指定することで、セキュアなエンドポイントにもアクセスできるようにします。

「Cookie」の場合は下記2項目が必要となります。

  • ユーザーが1人以上登録されている必要があります。
  • 必須エンドポイントの作成が必要です。
必須エンドポイントカテゴリーモデルオペレーション
ログイン認証Login(v1)login_challenge

cookie認証のAPIが複数設定されている場合、各API間で認証状態が共有されます。

また、「Cookie」の場合サードパーティCookieの規制を回避するため、 フロントとKurocoのドメインを合わせる必要があります。
(ドメインを一致させファーストパーティCookieにさせる必要があります)

特権付き静的トークン

特定のメンバーに紐付いた静的トークンによる認証方式を設定します。サーバー間通信で、特定のメンバーの権限でAPIにアクセスする必要がある場合などに利用します。

静的アクセストークンと同様にトークンをリクエストヘッダに指定しますが、トークン生成時に指定したメンバーとしてリクエストが認証されます。
これにより、ログインや動的トークン生成のフローを経ることなく、メンバーの権限に基づいたAPIリクエスト制限のあるエンドポイントにアクセスできます。

注記

トークンはメンバーの権限でリクエストを実行するため、適切な権限を持つメンバーを指定してトークンを生成してください。
また、静的アクセストークンと同様にトークンの流出に注意し、トークンの更新を想定したシステム構成にしてください。

IPアドレス制限について

指定されたIPアドレスからのアクセスのみ許可します。

Image from Gyazo

指定方式は下記の通りです。

  • IPアドレス指定(例: 192.0.2.1)
  • CIDR指定(例: 192.0.2.0/24)
  • "-"による範囲指定(例: 192.0.2.1-192.0.2.2)

関連ドキュメント


サポート

お探しのページは見つかりましたか?解決しない場合は、問い合わせフォームからお問い合わせいただくか、Slackコミュニティにご参加ください。