PyCharm 2026.1 Help

OAuth 2.0 認証

HTTP クライアントは OAuth 2.0 認証をサポートします。 アクセストークンを取得し、OAuth 2.0 で保護されたリソースへのリクエストを認証できます。 ユーザー認証情報を入力できるようにするために、HTTP クライアントは組み込みの JCEF ブラウザーにログインフォームを表示します。 この非モーダルブラウザーでは、IDE での作業が妨げられることはなく、たとえば、ユーザー名とパスワードをコピーして貼り付けることができます。

一般的なフローには次の手順が含まれます:

  1. 認証設定を指定する (認可タイプやトークン URL など) (パブリック環境ファイル内の JSON 形式)。

  2. この認証構成を参照しますを HTTP リクエストで $auth.token 変数を使って指定します。

  3. リクエストを実行します。 認証が成功すると、保護されたリソースにアクセスできます。 受信したアクセストークンとリフレッシュトークンは、 HTTP クライアント認証ログ​ または サービス ツールウィンドウで確認できます。

  4. アクセストークンを手動でリフレッシュしたり、 新しいトークンを要求して認証手順を再初期化したりすることもできます。

認証構成の作成

  1. .http ファイルの 実行​ リストで、認証構成を追加する環境を選択します。

  2. ツールバーで「追加アイコン 」をクリックし、「認証構成​ 」を選択します。

    これにより、選択した環境の "Security" にある "Auth" オブジェクト内のパブリック環境ファイルに認証構成テンプレートが追加されます。 例:

    { "dev": { "Security": { "Auth": { "auth-id": { "Type": "OAuth2", "Grant Type": "", "Client ID": "" } } } } }
  3. プレースホルダー auth-id を、 .http ファイル内でこの構成を参照するために使用する意味のある名前に置き換えます。

  4. 認証パラメーターを指定します。 必須パラメーターは選択した "Grant Type" によって異なります。 認証パラメーターを入力する際、PyCharm コーディング支援を使用可能です。パラメーターの名前を入力し始めるか、 Ctrl+Space を押すと、利用可能な JSON 鍵の一覧が表示されます。

HTTP リクエストで認証構成を使用する

認証構成が作成されたら、それを使用してアクセストークンを取得し、リクエストの認証ができます。

  1. 認証構成の名前を {{$auth.token()}} 変数に渡します (例: {{$auth.token("my-config")}})。 この変数は、リクエスト Authorization ヘッダーまたはクエリパラメーターで使用できます。

  2. 実行 」をクリックしてリクエストを送信します。 保護されたリソースにアクセスする前に、HTTP クライアントは認可サーバーにリクエストを送信してアクセストークンを取得します。

  3. プロンプトが表示されたら、認証プロセスを完了します。 認証が正常に完了すると、HTTP クライアントは保護されたリソースにアクセスします。

{{$auth.token()}} 変数をすばやく追加するには、ライブテンプレートを使用します:HTTP メソッドのヘッダーセクションで AuthorizationToken と入力し、表示される候補のリストから利用可能な認証を選択します。

HTTP Client auth configuration

このようなリクエストを実行すると、 サービス ツールウィンドウで 認証ログの表示​ ボタンが使用できるようになります。 リダイレクトページ、アクセストークン、その他の認証の詳細を表示できます。

アクセストークンを手動で取得する

HTTP リクエストで認証構成を参照すると、HTTP クライアントは、保護されたリソースにアクセスする前にアクセストークンを自動的に取得 (またはリフレッシュ) します。 保護されたリソースに実際のリクエストを送信せずにアクセストークンを取得したい場合は、アクセストークンを手動で取得できます。

  1. http-client.env.json ファイルで、認証構成名の横にある 実行 をクリックします。

  2. 認証構成に プライベート変数が含まれている場合は、表示されるポップアップでプライベート環境ファイルを選択します。

  3. プロンプトが表示されたら、認証プロセスを完了します。

認証が正常に完了すると、PyCharm はアクセストークンを取得します。 アクセストークンをすでに持っていても、有効期限が切れている場合は、PyCharm がリフレッシュします。

新しいアクセストークンを取得する

トークンのリフレッシュに加え、再認証、つまり最初のアクセストークン取得時と同じフローを繰り返すことで新しいトークンを取得できます。

  1. http-client.env.json ファイルで、認証構成名にキャレットを置きます。

  2. Alt+Enter (Show Context Actions) を押して、 認証トークンの強制取得​ を選択します。

  3. 認証構成に プライベート変数が含まれている場合は、表示されるポップアップでプライベート環境ファイルを選択します。

キャレットが .http ファイル内の $auth.token 変数上にある場合、同じアクションを呼び出すことができます。 この場合、HTTP クライアントは .http ファイルと同じフォルダーにある環境ファイルを使用するため、プライベート環境ファイルを選択する必要はありません。

新しいトークンをリフレッシュまたは取得すると、アクセスおよびリフレッシュトークンとその他の認証の詳細が HTTP クライアント認証ログ​ ツールウィンドウ (表示 | ツールウィンドウ | HTTP クライアント認証ログ​) に表示されます。

HTTP クライアント認証ログツールウィンドウ

ブラウザーの Cookie をクリア

認可サーバーは、ブラウザーの Cookie に認証データを保存する場合があります。 異なるデータを使用して認証フローをテストする場合は、組み込みの JCEF ブラウザーの Cookie をクリアする必要がある場合があります。

  1. http-client.env.json ファイルで、認証構成名にキャレットを置き、 Alt+Enter (Show Context Actions) を押します。

  2. ブラウザーの Cookie をクリア を選択します。

または、 HTTP クライアント認証ログ​ ツールウィンドウで Cookie をクリア をクリックして Cookie をクリアすることもできます。

アクセストークンの代わりに ID トークンを使用する

サーバーでアクセストークンの代わりに ID トークンの使用が必要な場合は、次のいずれかの方法で HTTP クライアントを構成できます:

  • 認証構成では、 "Use ID Token": true パラメーターを使用します。

  • .http ファイルでは、 $auth.idToken 変数 (例: Authorization: Bearer {{$auth.idToken("auth-id-1")}}) を使用します。

カスタム認証パラメーターを使用する

HTTP クライアントには、認可サーバーが必要とするカスタムリクエストパラメーターを定義するオプションが用意されています。 これには、たとえば、OAuth 2.0 認可フレームワークを拡張する resourceaudience が含まれます。

  1. 認証構成に、 "Custom Request Parameters" オブジェクトを追加します。

  2. "Custom Request Parameters" 内に、パラメーター名と値 (文字列または配列) を入力します。

  3. パラメーターの使用を特定のリクエストに制限する場合、値を 2 つのキーを持つオブジェクトとして定義します:

    • "Value" (パラメーター値)

    • "Use" — パラメーターの使用スコープ。 次の 3 つの値のいずれかになります。

      • "Use": "Everywhere" (いかなるリクエストでも)

      • "Use": "In Auth Request" (認証リクエストのみ)

      • "Use": "In Token Request" (トークンリクエストのみ)

    例:

    "auth-id-1": { "Type": "OAuth2", "Custom Request Parameters": { "audience": { "Value": "https://my-audience.com/", "Use": "In Token Request" }, "resource": [ "https://my-resource/resourceId1", "https://my-resource/resourceId2" ], "my-custom-parameter": "my-custom-value" }, }

HTTP クライアント認証ログ​ ツールウィンドウを使用して、リクエストで使用されるパラメーターとその値を表示します。

カスタムリクエストヘッダーを使用する

HTTP クライアントには、認可サーバーで必要となる可能性のあるカスタム要求ヘッダーを使用するオプションが用意されています。

  1. 認証構成に、 "Custom Request Headers" オブジェクトを追加します。

  2. "Custom Request Headers" 内に、ヘッダー名とその値を入力します。

    Ctrl+Space を押すと、 AcceptCookieUser-Agent などの一般的なヘッダーの候補リストが表示されます。

  3. ヘッダーの使用を特定のリクエストに制限する場合は、値を 2 つのキーを持つオブジェクトとして定義します。

    • "Value" (ヘッダー値)

    • "Use" — ヘッダーの使用スコープ。 次の 3 つの値のいずれかになります。

      • "Use": "Everywhere" (いかなるリクエストでも)

      • "Use": "In Auth Request" (認証リクエストのみ)

      • "Use": "In Token Request" (トークンリクエストのみ)

    例:

    "auth-id-1": { "Type": "OAuth2", "Custom Request Headers": { "Accept": { "Use": "Everywhere", "Value": "application/javascript" }, "my-custom-header": "my-custom-value" }, }

認証構成パラメーター

タイプ

認証タイプ。 可能な値:

  • "OAuth2": OAuth2 を使用してリクエストを認証します。

  • "Mock" (開発またはテスト環境用):認証プロセスをエミュレートします。OAuth2 サーバーが提供するアクセストークンの代わりに、PyCharm は認証構成からトークンを使用します。 "Token" をアクセストークンとして、必要に応じて "ID Token" を ID トークンとして指定してください。 例:

    "my-auth-id": { "Type": "Mock", "Token": "my-token" }
認可方式

アクセストークンを取得するメソッドです。 可能な値: "Authorization Code""Client Credentials""Device Authorization""Implicit" 、および "Password"

認可 URL

アプリケーションがクライアントリクエストを認可コード取得のためにリダイレクトする認可 URL。 認可コードと暗黙型には "Auth URL" が必要です。

トークン URL

認証コードをアクセストークンに交換するためのプロバイダーの認証サーバー。 認可コード、クライアント認証情報、デバイス認証、パスワード付与型には "Token URL" が必要です。

リダイレクト URL

認証後にリクエストをリダイレクトするクライアントアプリケーションの コールバック URL。 これはクライアントアプリケーションの設定にある URL、または認可サーバーが任意の URL を受け入れる場合は、例えば http://localhost:12345/foo/bar などの任意の URL です。

クライアント ID

API プロバイダーに登録されたクライアントの公開識別子。 すべての 認可方式でこのパラメーターが必要です。

クライアントシークレット

クライアントアプリケーションが認可サーバーの認証に使用する機密識別子。 クライアント認証情報 認可方式ではこのパラメーターが必要です。

クライアント認証情報

次のいずれかを入力します:

  • リクエストでクライアント資格情報を指定したくない場合は、 "none"

  • リクエスト本文でクライアント資格情報を送信する場合は、 "in body"

  • "basic" は、要求ヘッダーで基本認証要求を送信します (デフォルト値)。

デバイス認証 URL

クライアントデバイスがデバイスコードとユーザーコードを取得するためにリクエストする URL。

デバイス認証付与方式に適用・必須です。

完全な URI を開く

true に設定すると、ブラウザーでユーザーコードを含む認証 URI(verification_uri_complete )が開きます。 デフォルト値は false です。ユーザーが手動でコードを入力する必要がある認証 URI(ユーザーコードは含まれません)をブラウザーで開きます。

デバイス認証付与方式で使用可能です。

ブラウザーの後にポーリングを開始

true に設定すると、クライアントデバイスはブラウザーが閉じられた後にのみトークンエンドポイントへアクセストークンリクエスト(ポーリング)を送信します。 デフォルト値は false です。ユーザーが処理を完了するかコードの有効期限が切れるまで、デバイスはトークンエンドポイントを継続的にポーリングします。

デバイス認証付与方式で使用可能です。

PKCE

コード交換のための証明キー (PKCE)(英語) を有効にします。 認可コード付与タイプに適用可能です。

デフォルトのアルゴリズム (自動生成されたコード検証の SHA-256 ハッシュ) を使用するには、 "PKCE": true と入力します。 または、 "Code Challenge Method" (プレーンまたは SHA-256) と "Code Verifier" を使用して動作をカスタマイズします。 例:

"PKCE": { "Code Challenge Method": "Plain", "Code Verifier": "YYLzIBzrXpVaH5KRx86itubKLXHNGnJBPAogEwkhveM" },
スコープ

アプリケーションによるユーザーアカウントへのアクセス範囲を制限するスコープ。 利用可能な値は、アクセスしようとしているサービスによって異なります。

自動取得

デフォルトでは、HTTP クライアントはリクエストを送信する前にアクセストークンを自動的にリフレッシュまたは取得します。 リクエストを送信する前にアクセストークンを自動的にリフレッシュまたは取得したくない場合は、「"Acquire Automatically": false 」と入力します。 手動でリフレッシュまたは取得できます。

ユーザー名

パスワード付与方式で認証の一部として送信されるユーザー名。

パスワード

パスワード付与方式で認証の一部として送信されるユーザーパスワード。 パスワードを共有しないために、値の代わりに プライベート変数を使用できます。例えば "Password": "{{password}}"

カスタムリクエストパラメーター

カスタムリクエストパラメーターを指定

カスタムリクエストヘッダー

カスタムリクエストヘッダーを指定

2026 年 6 月 1 日