直接の答え
ユーザー名とパスワードのフィールドを別々にすることを推奨します。 クライアントが RTSP URI 内の資格情報を必要とする場合は、ユーザー情報コンポーネント内の予約文字をパーセント エンコードし、管理者以外のアカウントでテストします。
なぜこれが起こるのか
@、:、#、%、? などの文字 および / は、URI 内で構造的な意味を持ちます。 したがって、エンコードされていないパスワードでは、ホストまたはパスの開始位置が変更される可能性があります。
URL、資格情報、アドレス ファミリ、および RTP トランスポートを、独立して失敗する可能性がある別個の変数として扱います。
管理されたテスト
まず、予約されていない文字を使用する一時的なテスト アカウントでエンドポイントを証明し、次に強力なパスワードを復元して、文書化されたクライアントのエンコード動作を検証します。
一度に 1 つの変数を変更します。 カメラのモデル、ファームウェア、エンドポイント、アカウントを記録しておきます。 次に、ネットワーク到達可能性、プロトコル応答、メディアトランスポート、およびデコードを個別のレイヤーとしてテストします。
専用の表示専用アカウントと信頼できるローカル診断ツールを使用します。 出力を共有する前に、資格情報、プライベート アドレス、識別データを編集します。
診断シーケンス
| チェック | アクション | 進歩の証拠 |
|---|---|---|
| フィールド | 利用可能な場合は、専用の資格情報フィールドを使用します。 | URL にはシークレットが含まれておらず、一貫して解析されます。 |
| エンコーディング | URL 全体ではなく、資格情報コンポーネントのみをエンコードします。 | ホスト、ポート、パスは読み取り可能なままです。 |
| ログ | スクリーンショットを確認し、公開されたシークレットの出力をデバッグします。 | 認証情報は共有前に編集されます。 |
| アカウント | 固有の表示専用カメラ アカウントを使用します。 | 侵害しても管理権限は付与されません。 |
保管すべき証拠
実際のパスワードを記録せずに、生の文字クラスとエンコードされた形式を文書化します。 解析動作を再現するには、合成例で十分です。
境界と安全上の注意
認証情報を含む実際の RTSP URL を、公開オンライン プレーヤー、検索ボックス、問題追跡ツール、または分析ツールに決して貼り付けないでください。
リモート表示の場合は、RTSP またはカメラ管理ポートをパブリック インターネットに直接公開するのではなく、管理された VPN を使用します。
SmartRTSP
SmartRTSP は、Apple デバイス、Windows、Android 用のカメラに焦点を当てた RTSP および ONVIF ビューアです。 直接表示、発見、マルチカメラのチェックに適しています。 継続的な記録、証拠のエクスポート、または企業の集中管理が必要な場合は、専用の NVR または VMS を用意してください。
よくある質問
パスワードに @ が含まれている場合はどうすればよいですか?
別のパスワード フィールドを使用するか、資格情報コンポーネント内の @ を %40 としてパーセント エンコードします。
RTSP URL 全体をエンコードする必要がありますか?
いいえ。URL 全体をエンコードすると、必要な区切り文字が非表示になる可能性があります。 必要なコンポーネントのみをエンコードします。
資格情報を URL 金庫に入れるのは安全ですか?
ログ、履歴、スクリーンショットを通じて漏洩する可能性が高まるため、資格情報を個別に保存することが望ましいです。
一次参考文献
関連する SmartRTSP ガイド
関連ガイドを開く資格情報の漏洩を回避しながら、予約されたパスワード文字が RTSP URI 区切り文字として誤って読み取られるのを防ぎます。