問題タブ [nevpnmanager]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ios - NEVPNManager 構成がインストールされているかどうかを検出する方法は?
NetworkExtension フレームワークを使用して、iOS で VPN を使用しています。構成をインストールして接続できます。私の質問は、VPN 構成がまだインストールされているかどうかを検出する方法、またはユーザーが構成をアンインストールしたかどうかを検出する方法があるかどうかです。
必ずしもバックグラウンドで通知や何かを探しているわけではありませんが、探しているのは、アプリケーションがフォアグラウンドになったときに行う方法/回避策ですか?
中間 CA によって発行された証明書による証明書認証を使用しており、ここから「信頼を評価する」方法を試しました:構成プロファイルが iOS にインストールされているかどうかを確認してください。
これは私にはうまくいきませんでした。私はいつも信頼されるようになります。私もこれを試しました:
しかし、これもうまくいきません。アンインストール後、プロトコルは有効なままです。アプリを終了して再起動すると、プロトコルが無効になります。
任意の提案をいただければ幸いです。
ios - NEVPNManager で作成した個人用 VPN は他のアプリに影響しますか?
iOS 8 での新しい NetworkExtension.framework の使用について説明しているこの記事など、オンラインでいくつかの記事を見つけました。これは、カスタム VPN 構成をプログラムで作成するための対応する NEVPNManager クラスです。
これらの構成は私のアプリにのみ影響し、バックグラウンドの他のものには影響しないことが暗示されていますが、決定的なものを見つけることができませんでした. コードはsharedManager
のような名前でさまざまなものを参照しているため、明らかではありません。
NEVPNManager を使用してプログラムで VPN を作成し、iOS アプリ内から VPN に接続すると、他のアプリやバックグラウンド サービスに影響しますか?
ios - iOS 8 で NEVPNManager を使用して、カスタム VPN タイプへの VPN 接続をプログラムで作成するにはどうすればよいですか? (例: Cisco Any Connect)
Apple の Configurator ツールで VPN 構成を見ると、次のようなさまざまな種類の VPN が提供されています。
- L2TP
- PPTP
- Cisco AnyConnect
- ジュニパー SSL
- チェックポイントのモバイルVPNなど
を使用してプログラムでカスタム VPN 構成を作成したいのですが、NetworkExtension フレームワークに追加されたオブジェクトNEVPNManager
のリストを見ると、プロトコル クラスはとの 2 つしかありません。NEVPNProtocolIPSec
NEVPNProtocolIKEv2
私は VPN の世界に慣れていないので、私の質問は次のとおりです。
これらの独自の VPN タイプ (Cisco AnyConnect など) は IPSec または IKEv2 のバリエーションに過ぎないので、これらのプロトコル クラスのいずれかを使用して設定できますか、それとも現在 NEVPNManager でこれを行うことはできませんか?
ios - NEVPNManager オンデマンド コールバック
について質問があります
loadPreferencesWithCompletitionHandler
と
savePreferencesWithCompletitionHandler
のNEVPNManager
。
この関数のブロックは、たとえばオンデマンド接続の確立時に呼び出されますか?
はいの場合、アプリがアクティブになるようにトリガーしますか?
いいえの場合、VPN 接続の前に準備が必要な場合はどうすればよいですか?
接続前に何らかのコールバックを設定できますか?
ios - VPN 接続用の P12 証明書を確認する
Network Extension フレームワークを使用したコードを介して VPN に接続したい。
VPN 接続を作成するための P12 証明書と、P12 証明書を検証するためのルート CA (Crt) 証明書があります。
私の問題は、プログラムで P12 証明書を検証することです。
以下のコードを使用して VPN に接続しています。
ios - 特定のドメインへのリクエストに対してのみ VPN に接続する
NEVPNManagerを使用して、特定のドメインへのリクエストに対してのみオンデマンド VPN 接続を確立するにはどうすればよいですか? または、代わりに、特定のドメインを除いて常に 1 つを確立しますか?
私はさまざまなことを試しましonDemandRules
たが、これを正しくすることはできません。私のアプリは、VPN を介してすべてのトラフィックをルーティングするか、まったくルーティングしません。
macos - 開発者 ID で署名された Mac アプリが起動に失敗し、com.apple.developer.networking.vpn.api 資格が許可されていません (エラー コード -67050)
OSX 上で動作し、El Capitan で導入された IKEv2 接続に NEVPNManager を使用するアプリケーションを開発しています。VPN 接続をセットアップ/アクティブ化するには、「パーソナル VPN」資格が必要です。
開発証明書を使用してアプリケーションに署名すると、自分のマシンで期待どおりに動作するか、ゲートキーパーをバイパスする他のマシンで期待どおりに動作します。ただし、開発者 ID 証明書で署名すると、アプリの起動に失敗します。codesign -vvvとspctl -aは、署名に問題はないと言っていますが、アプリを実行しようとすると system.log ファイルにこれが表示されます。
パーソナル VPN 機能を Mac App Store 以外で使用することを禁止することはできますか? もしそうなら、それはAppleのサービスを一切使用していないので意味がありません.
アップデート:
Apple の担当者と話し合った結果、Personal VPN 機能は App Store 以外での使用が許可されていないため、開発者 ID 証明書と一緒に使用できないことが明らかになりました。これは、どの種類のコード署名に対してどの機能が許可されているかのリストです [リストはこちら]
ios - NEVPNマネージャー iOS9
このガイドを使用して、プログラムで VPN を作成しました: http://ramezanpour.net/post/2014/08/03/configure-and-manage-vpn-connections-programmatically-in-ios-8/
すべてがiOS8で完全に機能しました。最初に、ユーザーがユーザー名を入力するテキストフィールドを持つ UIAlertView を示しました。次に、共有シークレットを入力した設定にリダイレクトされ、接続できました。
iOS 9 で、ユーザー名を入力して [完了] を押すと、次のようなポップアップが表示されます。[許可] をクリックすると、プロファイルが保存されます。その後、設定に移動し、接続を押すと、次のように表示されます: VPN共有シークレットが提供されませんでした. (私のコードに示されているように、keychainItemWrapper から取得したとしても) 誰でもこれを手伝ってくれますか?
ありがとうございました