セキュリティモデル
作業にリモートサーバーへのアクセスが含まれる場合、ローカルマシンとバックエンド間の接続が保護され、やり取りされるデータが十分に暗号化されていることを確認する必要があります。
リモート開発セキュリティモデルを使用すると、作業のほぼすべてのセキュリティ面を制御できます。
IDE コンポーネントはサーバー側とクライアント側の両方で実行されています。 バックエンドで読み込まれたすべての情報は、追加のユーザー操作なしでクライアントに転送される場合があり、クライアントに提供された情報も追加のユーザー操作なしでサーバー側プロセスに転送される場合があります。
接続セキュリティ
JetBrains Client と IDE バックエンド間の通信は、安全な SSH トンネルで実行される場合でも、1.3 TLS でエンドツーエンド暗号化されます。 JetBrains は TLS 1.3 を使用し、それに加えて SSH セキュリティ接続が使用されます。
リモート開発ではルート証明書からの信頼階層がないため、中間者攻撃がないことを確認するために追加の手動チェックが実行されます。
通常の接続リンクは次のとおりです:
接続時に、クライアントはホスト証明書のフィンガープリントが正確に
fpであることを確認します。 ホストが正しいことをクライアントに対して検証します (サードパーティーにハイジャックされていない)接続時に、ホストは、クライアントがワンタイム接続トークン
jtを提供することを確認します。 このトークンを知らないこのポートの接続を拒否します。
この接続を介して認証情報を転送したり、パブリックスペースを介してこの接続データを渡したりすることは安全です。 Code With Me も同様です。
ログと統計の収集
JetBrains は、ユーザーの権限に基づいて統計とログを収集します。 デフォルトでは、データ共有はすべてのリリースバージョンで無効になっており、RustRover の プレビューおよび早期アクセスプログラム(EAP)バージョンでは有効になっています。
特別な非有償ライセンスには、常に有効な、構成不可能な必須のデータ共有同意が付属しています。
データ共有を構成する
使用統計情報を送信する を選択すると、JetBrains が RustRover の作業時に使用する機能やアクションに関する匿名統計情報を収集できるようになります。

EAP バージョンの使用時に使用統計情報を送信する チェックボックスを選択すると、JetBrains が RustRover のご利用時における機能や操作に関する統計情報を収集できるようになります。

非営利契約の条件では、IDE が IDE 機能の使用状況に関連する匿名の統計情報 (IDE テレメトリ) を JetBrains に送信することが想定されています。 この情報には、使用しているフレームワークやファイルテンプレート、呼び出されたアクション、IDE 機能とのその他のやり取りなどが含まれますが、これらに限定されません。 この情報には個人データは含まれません。 詳細については、サブスクリプション契約の セクション 4. コンプライアンス監視と統計(英語)を参照してください。
このデータの収集と使用に関する詳細については、 データ共有設定を参照してください。
ログを収集する
JetBrains がログを収集して送信するように要求すると、ログに機密データが含まれている可能性があることも警告されます。
メインメニューで へ移動します。
開いたダイアログで、 Finder に表示 をクリックし、JetBrains にデータを送信することに同意する場合はそのまま進めます。

JetBrains プライバシーポリシーの詳細については、 JetBrainsWeb サイト(英語)を参照してください。
任意のリンクを開く
IDE では、さまざまな機能を使用するためにブラウザーを開くことが必要になる場合があります。 サーバー側にはブラウザーがないことに注意してください。 この場合、リクエストは JetBrains Client にリダイレクトされます。
クライアントマシンで任意のリンクを開く前に、JetBrains は確認ダイアログを表示します。

コピーアンドペーストアクション
コピーペースト アクションは、実際の貼り付けの前にのみクリップボードのコンテンツを送信し、実際のコピー中にのみバックエンドがクリップボードを変更できるようにします。
ポート転送
リモートサーバーのポートにアクセスするには、ローカルマシンに転送します。 デバッグの目的やファイアウォールのバイパスに役立つ場合があります。
実行ツールウィンドウを介してリモートポートを転送する
リモートセッションを開始し、プロジェクトを開きます。
アプリケーションを実行します。
実行 ツールウィンドウで、アプリケーションはリスニングポートを表示します。
転送するポートをクリックし、オプションのリストから ポートの転送 を選択します。

転送後にブラウザーを開きたい場合は、 ポートを転送してブラウザーで開く を選択してください。
その結果、リモートポートはローカルマシンに転送されます。
作成したポートをクリックして、ブラウザーで結果を確認します。
転送されたポートはバックエンドコントロールセンターにも追加されます。

CLI 経由でフロントエンドのブラウザーでリンクを開く
リモートマシンからポートを転送することで、フロントエンドのブラウザーでリンクを開くことができます。 これは、バックエンドで Web サービスを実行している場合や、リモートで実行されるスクリプトにリンクがハードコードされている場合に役立ちます。
リモートプロジェクトを開きます。
リモートターミナル Alt+F12 を開きます。
ポートを転送するには、次のいずれかのコマンドを使用します。
idea openUrlOnClient http://localhost:$portremote-dev-server serverMode openUrlOnClient https://localhost:$port
バックエンドコントロールセンターを介してポート転送を管理する
バックエンドコントロールセンターを通じてポートを追加、削除、編集できます。
ポートを追加する
リモートプロジェクトを開きます。
メインツールバーでバックエンドの名前をクリックして、バックエンドコントロールセンターウィンドウを開きます。
開いたウィンドウの ポート タブで、
をクリックして新しいポートを追加します。
を使用してポートを削除できます。 これは、プロジェクトの再起動時に
forwardedPorts.xmlファイルからも削除されます。提案されたフィールドにポート番号を入力し、 適用 をクリックして変更を保存します。

追加されたポートは
forwardedPorts.xmlファイルに保存されます。プロジェクトを再起動して、
forwardedPorts.xmlファイル内に追加されたポートを確認します。
ポートを削除する
リモートプロジェクトを開きます。
メインツールバーでバックエンドの名前をクリックして、バックエンドコントロールセンターウィンドウを開きます。
開いたウィンドウの ポート タブで、削除するポートを選択し、
をクリックします。
プロジェクトの再起動時に、ポートは
forwardedPorts.xmlファイルからも削除されます。
ポートを変更する
開いたウィンドウの ポート タブで、
をクリックして新しいポートを追加します。
提案されたフィールドにポート番号を入力し、 適用 をクリックして変更を保存する前に、ポートアドレスフィールドをクリックしてポート番号を変更します。

次の点に注意してください:
ポートの転送を停止し、そのポートが他の開いているプロジェクトで使用されていない場合、そのポートは
forwardedPorts.xmlファイルから削除されます。アプリケーションを閉じると、ポート転送が停止します。 プロジェクトを再度開くと、ポートが
forwardedPorts.xmlファイル (プロジェクトごと) からロードされ、転送され、必要な場所に表示されます。
ポート転送を無効にする
セキュリティ上の理由から、特定のユーザーまたはシステム全体のポートフォワーディング設定を無効にすることができます。
変更はホスト IDE 側で行う必要があります。
ユーザー固有の設定については、次のディレクトリにテキストファイルを作成してください:
システム全体の設定については、次のディレクトリにテキストファイルを作成してください:
ユーザー固有の設定については、次のディレクトリにテキストファイルを作成してください:
システム全体の設定については、次のディレクトリにテキストファイルを作成してください:
ユーザー固有の設定には、次のレジストリキーを使用してください:
システム全体の設定には、次のレジストリキーを使用してください:
SOFTWARE\JetBrains\portForwarding ディレクトリで、この設定の値で有効化されたキーを作成します。
ユーザーまたはシステム全体のポート転送を無効にする
セキュリティ上の理由から、 OsRegistryConfigProvider OS レジストリを使用して、特定のユーザーまたはシステム全体に対してポート転送 (porForwarding) を無効にすることができます。 レジストリの場所は、OS によって異なります。
ユーザー固有の設定については、次のディレクトリにテキストファイルを作成してください:
システム全体の設定については、次のディレクトリにテキストファイルを作成してください:
ユーザー固有の設定については、次のディレクトリにテキストファイルを作成してください:
システム全体の設定については、次のディレクトリにテキストファイルを作成してください:
ユーザー固有の設定には、次のレジストリキーを使用してください:
システム全体の設定には、次のレジストリキーを使用してください:
SOFTWARE\JetBrains\portForwarding ディレクトリで、この設定の値で有効化されたキーを作成します。
キーが存在しない場合、設定はデフォルトで true とみなされます。
リバースポート転送
リバースポートフォワーディングを設定すると、リモートマシンからローカルマシンへの接続を開始できます。 これは、たとえばモバイルデバイス上でアプリケーションを開発している場合や、ローカルマシン上のデータベースへのアクセスを必要とするリモートアプリケーションを開発している場合などに便利です。 リバースポートフォワーディングは永続化されるため、再接続時やプロジェクトを開いた際にポートが自動的に転送されます。
リバースポート転送を使用する場合は、考慮して軽減する必要がある潜在的なセキュリティリスクがいくつかあります:
- 不正アクセス
リバースポート転送は、十分に信頼できるサーバーまたは個人としか使用しないでください。
- データ漏洩
機密データを転送する場合は、それが暗号化されていることを確認してください。
- マルウェア
マシン上のセキュリティツールが定期的に更新されていることを確認してください。
リバースポート転送を構成する
リモートプロジェクトを開きます。
バックエンドコントロールセンターを開きます。
開いたウィンドウの ポート タブで、
をクリックして新しいポートを追加し、 ローカルからリモートへ を選択します。

ポートのフィールドに必要なポート番号を追加し、 適用 をクリックします。

開いたダイアログで、ポート転送を要求しているリモートサーバーを信頼していることを確認し、 許可 をクリックします。


リバースポート転送を継続する
リモートプロジェクトに接続します。
リモートプロジェクトで、 Shift を2回押して どこでも検索ウィンドウを開き、 レジストリ を入力してください。

バックエンドホストとフロントエンド IDE の両方でフラグが有効になっていることを確認してください。
レジストリ (ホスト上) ツールウィンドウを開き、バックエンドで
portForwarding.store.reverse.enabledフラグを確認してください。
フロントエンド側の レジストリ ツールウィンドウを開き、
rdct.portForwarding.store.reverse.enabledフラグを確認します。
リバースポート転送は永続化されます。 リバースポートに関する情報は、 forwardedPorts.xml ファイルの reversePorts セクションに保存されます。
JetBrains Client のダウンロード場所を変更する
ダウンロード後に、JetBrains Client のフォルダーとファイルを保存する場所を再定義できます。
ユーザー固有の設定については、次のディレクトリにテキストファイルを作成してください:
ファイルの内容は path/to/directory です。
システム全体の設定については、次のディレクトリにテキストファイルを作成してください:
ファイルの内容は path/to/directory です。
ユーザー固有の設定については、次のディレクトリにテキストファイルを作成してください:
ファイルの内容は path/to/directory です。
システム全体の設定については、次のディレクトリにテキストファイルを作成してください:
ファイルの内容は path/to/directory です。
ユーザー固有の設定には、 HKEY_CURRENT_USER レジストリを使用します。
システム全体の設定には、 HKEY_LOCAL_MACHINE レジストリを使用します。
SOFTWARE\\JetBrains\\JetBrainsClient で、 path/to/directory を含む値でキー downloadDestination を作成します。