web-dev-qa-db-ja.com

WCF ServiceHostアクセス権

WCFチュートリアルを実行すると、次のエラーが表示されます。

HTTPはURLを登録できませんでした http:// +:8000/ServiceModelSamples/Service / 。プロセスには、この名前空間へのアクセス権がありません(詳細については http://go.Microsoft.com/fwlink/?LinkId=7035 を参照してください)。

これはWindows 7の制限が原因ですか?

165
Joshua

問題は、URLがWindowsによって作成されるのをブロックされていることです。

修正手順:管理者としてコマンドプロンプトを実行します。 URLをACLに追加します

netsh http add urlacl url=http://+:8000/ServiceModelSamples/Service user=mylocaluser
177
Joshua

IDEを介して実行している場合、管理者として実行すると役立ちます。これを行うには、Visual Studio 2008/10アプリケーションアイコンを見つけて右クリックし、[管理者として実行]を選択します

91
Stephen Newman

別の解決策は、アドレスを使用することです

http:// localhost:8732/Design_Time_Addresses/YOUR_ADDRESS

.NET Framework(3.5)は、このアドレス(http:// *:8732/Design_Time_Addresses)を自動的に登録して、スコープをデバッグします。これは、デバッグやテストのためにVisual Studio内でサービスをホストする必要がある場合に便利です。これを実稼働環境で使用しないでください...

36
Davide Icardi

管理者でコマンドプロンプトを開き、次のテキストを記述します。

netsh http add urlacl url=http://+:8000/ServiceModelSamples/Service user=Everyone
28
Metin Atalay

Visual Studioを管理者として開きます。実行されます。

3
Vicky

動作する他のオプションは..、

アプリケーションプールのIDを変更する場合、コードを実行できます。アイデアは、より多くの特権を持つ1つのアカウントのアプリケーションプール実行アカウントを変更することです。

詳細については、このブログを使用してください

https://letrasandnumeros.com/2017/11/27/http-could-not-register-url-http-80-hellowcf-your-process-does-not-have-access-rights-to- this-namespace /

0
Lucaseto