概要

概要

お知らせ:当社は、お客様により充実したサポート情報を迅速に提供するため、本ページのコンテンツは機械翻訳を用いて日本語に翻訳しています。正確かつ最新のサポート情報をご覧いただくには、本内容の英語版を参照してください。

Zoho Recruit APIでは、認証にOAuth 2.0プロトコルを使用します。認可コードグラントタイプを使用して、グラントトークン(コード)を取得します。このグラントタイプを使用すると、ユーザー名とパスワードを非公開にしたまま、任意のアプリケーションと特定のデータを共有できます。このプロトコルにより、ユーザーはセキュアで簡単に認証を利用できます。

参照

Zoho RecruitのOAuth認証の生成フローは、5つの簡単な手順で構成されています。以下のリンクを使用して、各ページに移動できます。
  1. 手順1:クライアントの登録
  2. 手順2:認可リクエストの実行
  1. 手順3:トークンの作成

OAuth 2.0を使用する理由

  1. 顧客のアプリケーションへのアクセスをいつでも取り消すことができます
  2. 認証情報をクライアントに開示する必要がありません
  3. アクセストークンはクライアント全体ではなく個々のアプリケーションに対して発行されるため、クライアントがハッキングされても情報は漏えいしません
  4. クライアントアプリケーションごとに異なる特定のスコープを適用し、クライアントがアクセスできるデータを制限または許可できます

OAuth 2.0の仕組み


用語

Zoho Recruit APIを使用する前に知っておく必要がある用語を以下に示します。

保護リソース  
候補者、連絡先、求人などのZoho Recruitのリソースです。

リソースサーバー  
保護リソースをホストするZoho Recruitサーバーです。

リソース所有者  
保護リソースへのアクセスを許可できる、アカウントの任意のエンドユーザーです。

クライアント  
エンドユーザーに代わって保護リソースにアクセスするため、リソースサーバーにリクエストを送信するアプリケーションです。

クライアントID  
接続済みアプリケーションから作成されるコンシューマーキーです。

クライアントシークレット  
接続済みアプリケーションから作成されるコンシューマーシークレットです。

認可サーバー  
認可サーバーは、アクセストークンやリフレッシュトークンなどの必要な認証情報をクライアントに提供します。この場合は、Zoho Recruit認可サーバーです。

認証コード  
認証サーバーによって作成され、ブラウザー経由でクライアントに送信される一時的なトークンです。クライアントはこのコードを認可サーバーに送信し、アクセストークンとリフレッシュトークンを取得します。

トークン  

アクセストークン  
ユーザーの保護リソースにアクセスするために、リソースサーバーに送信されるトークンです。アクセストークンは、Zoho Recruit APIへのセキュアかつ一時的なアクセスを提供し、アプリケーションが接続済みアプリにリクエストを行うために使用します。各アクセストークンは1時間のみ有効で、スコープで定義された操作にのみ使用できます。

リフレッシュトークン  
新しいアクセストークンを取得するために使用できるトークンです。このトークンは、エンドユーザーによって取り消されるまで有効期間は無制限です。

スコープ  

Zoho Recruit APIでは、クライアントアプリケーションがアクセスできるリソースの種類を制御する、選択されたスコープを使用します。通常、セキュリティを強化するために、トークンは複数のスコープで作成されます。たとえば、見込み客を作成または表示するため、またはメタデータを表示するためのスコープを作成できます。
スコープには、サービス名、スコープ名、操作の種類の3つのパラメーターがあります。

スコープを定義するフォーマットは、scope=service_name.scope_name.operation_typeです。

例:https://accounts.zoho.com/oauth/v2/auth?scope=ZohoRecruit.modules.ALL
ここでは、ZohoRecruitがサービスAPI名、modulesがスコープ名、ALLが操作の種類です。

利用可能なスコープ

スコープ名

関連するメソッド

users

users.all

settings

settings.all, settings.custom_views, settings.related_lists, settings.modules, settings.fields, settings.layouts

modules

modules.all, modules.candidate, modules.client, modules.contact, modules.jobopening, modules.campaign, modules.task, modules.event, modules.call, modules.interview, modules.vendor, modules.custom,modules.notes,modules.activities,modules.assessment,modules.candidatestatus,modules.jobopeningstatus


グループスコープ
グループスコープでは、データに対してユーザーが実行できるすべての操作への完全なアクセス権を付与します。たとえば、グループスコープにより、ユーザーはすべてのタブのデータを読み取り、作成、更新、削除できます。

例:https://accounts.zoho.com/oauth/v2/auth?scope=ZohoRecruit.modules.ALL,ZohoRecruit.settings.ALL&client_id={client_id}&response_type=code&access_type={%22offline%22or%22online%22}&redirect_uri={redirect_uri}
上記の例では、ユーザーはクライアントのZoho Recruitアカウント内のすべてのタブにアクセスできます。
その他の例は次のとおりです。
  1. scope=ZohoRecruit.modules.READ(表示のみの権限)
  2. scope=ZohoRecruit.modules.CREATE
  3. scope=ZohoRecruit.modules.UPDATE
  4. scope=ZohoRecruit.modules.DELETE
重要なお知らせ:ユーザーのアクセストークンは、使用するAPIの種類を定義するため、機密として管理する必要があります。アクセストークンは、公開フォーラム、公開リポジトリー、またはWebサイトのHTMLやJavaScriptなどのクライアント側コードで絶対に公開しないでください。一般に公開すると、データの盗難、消失、破損につながる可能性があります。