リンクを実行する小さなウェブページを作成しています。具体的にはマグネットリンクです。しかし、webserveruserroleは、それを実現するのに十分なmojo(rights、Process.Start()
)を持っていません。
このユーザーロールを探しましたが、見つかりませんでした。
magnet:?xt
Webサーバーにリンクを実行/開始させるにはどうすればよいですか?
Webページからプロセスを開始することが可能である場合、これはウイルスの高速道路になります。
もちろん、あなたはhttpモデルを理解していると思います。Webページは実際にはサーバー上で実行され、すべてのコードはサーバー上で実行されます。クライアントブラウザには、1回限りのhttpリクエスト/レスポンスから受信したhtmlのみが表示されます。
ただし、ご想像のとおり、カスタムURLスキーム(yourapp:// yourquery)を作成できます。クライアント側は、そのようなURLを処理するアプリケーションを登録する必要があります(これがマグネットリンクの仕組みです)。
msdnページの詳細:URLプロトコルへのアプリケーションの登録。
しかし、私はマイクロソフトが言っていることを強調します:
URLプロトコルを処理するセキュリティアラート アプリケーションは、悪意のあるデータに応答する方法を検討する必要があります。ハンドラーアプリケーションは信頼できないソースからデータを受信する可能性があるため、アプリケーションに渡されるURLおよびその他のパラメーター値には、ハンドリングアプリケーションを悪用しようとする悪意のあるデータが含まれている可能性があります。
アプリケーションが悪意のあるデータを処理する方法を知らない場合、これは深刻な問題につながる可能性があります。