発表日 | ロールアウト開始日 | ロールアウト終了日 |
2024年8月27日 | 2024年8月27日 | 2025年2月17日 |
OAuth 2.0のベストプラクティスに準拠するために、Zendeskは2025年2月17日より、Zendesk Supportに限り、アクセストークンのインプリシットグラントおよびパスワードグラントの受け付けを停止します。この提供終了はChat、Sell、Sunshineには適用されません。
古いタイプのグラントではセキュリティが不安なため、できるだけ早く認証コードフローまたはAPIトークンに切り替えることをお勧めします。
このお知らせには以下の内容が含まれています。
変更内容
2025年2月17日、Zendeskはアクセストークンを取得するための有効なグラントタイプとして、インプリシットグラントとパスワードグラントの使用の受け付けを停止します。お客様は、認証コードフローのグラントタイプまたはAPIトークンのいずれかに移行する必要があります。本日より、APIコールの認証にOAuth 2.0を使用したい人は、認証コードフローのグラントタイプのみを使用することができます。
Zendeskがこれらの変更を行う理由
OAuth 2.0のベストプラクティスに従い、インプリシットグラントとリソース所有者のパスワード資格情報(パスワード)グラントは現在、OAuth 2.0セキュリティの現在のベストプラクティスによって安全ではないと見なされ、許可されません。
インプリシットグラントは、追加の認証コードステップを必要とせずにアクセストークンを直接返すために推奨されていました。これは、「client_secret」を安全に保存できないパブリックOAuthクライアントに必要でした。この方法は、クライアントの確認なしにHTTPリダイレクト経由でアクセストークンを送信するため、セキュリティ上のリスクがあるため、現在は推奨されていません。これは、より安全な認証コードグラントとProof Key for Code Exchange(PKCE)に置き換えられました。パスワードグラントは、ユーザーの資格情報を使用してアクセストークンを取得するための古い方法です。この方法では、クライアントアプリケーションがユーザーのパスワードを処理し、認証サーバーに送信する必要があり、攻撃対象領域が増加するため、現在は推奨されていません。また、2要素認証とは互換性がありません。
提供終了に伴い必要となる作業
インプリシットグラントを使用している場合、以下を行う必要があります。
-
/oauth/authorizations/new
エンドポイントへの現在のコールを更新して、response_type: token
ではなくresponse_type: code
を使用し、まだ存在しない場合はredirect_uri
およびstate
パラメータを含めます。パブリッククライアントを使用する場合、必ずcode_challenge
およびcode_challenge_method
パラメータも必ず含めます。code_challenge
を生成する方法の詳細については、「code_challenge値の生成」を参照してください。 - OAuthクライアントで、新しい折り返し電話のエンドポイントを更新または実装します。詳細については、「アプリケーションでのOAuth認証の使用」および「Using PKCE to make Zendesk OAuth access tokens more secure」の認証コードグラントの実装の詳細を参照してください。パブリッククライアントの場合、または
/oauth/authorizations/new
コールにcode_challenge
を含める場合は、/oauth/tokens
エンドポイントを呼び出すときに必ずcode_verifier
を含めます。 - 管理センターの
/admin/apps-integrations/apis/zendesk-api/oauth_clients
でクライアントを更新し、新しい/更新されたリダイレクトURIがまだ存在しない場合はそれを含めます。 - テストと検証が完了したら、最高レベルのセキュリティを提供できるように、管理センターの
/admin/apps-integrations/apis/zendesk-api/oauth_clients
にあるクライアントの種類を「パブリック」または「機密」に更新することをお勧めします。
現在パスワードグラントを使用している場合は、代わりに「APIトークン」を使用する必要があります。
この発表に関連するフィードバックや質問がある場合は、コミュニティフォーラムにアクセスしてください。このフォーラムでは、顧客から寄せられた製品フィードバックを収集し管理しています。Zendesk製品に関する一般的なサポートについては、Zendeskカスタマーサポートにお問い合わせください。