web-dev-qa-db-ja.com

Windows 7、IIS7のHomeGroupでwwwrootフォルダーを共有した後の401エラー

Wwwrootフォルダーをホームグループの残りの部分と共有した後、Webサイトで次のエラーが発生します。

サーバーエラー

401-無許可:資格情報が無効なため、アクセスが拒否されました。指定した資格情報を使用してこのディレクトリまたはページを表示する権限がありません。

私の推測では、wwwrootフォルダーを共有したときに、フォルダーのアクセス許可が壊れていたと思います。フォルダの共有を解除してIIS7を再起動しようとしましたが、それでもエラーが発生します。 wwwrootフォルダーに必要なデフォルトのアクセス許可を知っている人はいますか? IIS7はデフォルト設定で構成されています(つまり、IIS7の設定は変更していません)。

どんな助けでも大歓迎です。

すでに試しました:

  • IIS7の再起動
  • 匿名認証をオフにしてから再度オンにする
  • Wwwrootフォルダーの共有を解除する
9
Brian Hasden

Wwwroot権限をリセットするために、別のボックスに移動し、問題のあるWebサーバーにすべての設定をコピーしました。

Wwwrootフォルダーのデフォルトのアクセス許可に戻す手順は次のとおりです。

  1. wwwrootフォルダーを右クリックし、[プロパティ]をクリックします
  2. [セキュリティ]タブに移動し、[詳細設定]ボタンをクリックします
  3. [アクセス許可の変更...]ボタンをクリックし、[このオブジェクトの親から継承可能なアクセス許可を含める]チェックボックスをオンにします
  4. 「継承元」列の値が「<継承されていない>」であるすべてのアクセス許可エントリを削除します
  5. [適用]をクリックして、次の5つのアクセス許可エントリが "C:\ inetpub \"ディレクトリから継承されていることを確認します:
    • TrustedInstaller-フルコントロール
    • システム-フルコントロール
    • 管理者-フルコントロール
    • ユーザー-読み取りと実行
    • クリエーターオーナー-スペシャル

これらのアクセス許可が確認されたら、[追加]ボタンをクリックし、オブジェクト名として「IIS_IUSRS」と入力して、[OK]をクリックします。権限リストから「フォルダのトラバース/ファイルの実行」、「フォルダの一覧表示/データの読み取り」、「属性の読み取り」、「拡張属性の読み取り」、「権限の読み取り」を選択し、「OK」をクリックします。

これで、wwwrootフォルダーは、IIS7に付属しているすぐに使用できるアクセス許可に戻されます。

これにより、私が遭遇していた前述の401 AccessDeniedエラーが修正されました。

12
Brian Hasden

私はこれと同じ問題に遭遇しました。ただし、すべてのアクセス許可を再作成するのではなく、読み取りアクセス許可を持つWEBSERVER\Usersを再度追加する必要がありました。フォルダーを共有すると、そのフォルダーが削除された可能性がありますか?

7
Jason

この情報を投稿していただきありがとうございます。これはマイクロソフトが大好きです。私たちにとって、これはwwwrootディレクトリを共有することによって引き起こされました。これを修正するために行ったことは次のとおりです。

  1. WwwRootを右クリックします。
  2. [セキュリティ]タブをクリックします。
  3. [詳細ボタン]をクリックします。
  4. 上記の投稿に記載されているすべての権限はそこにありましたが、継承元の列にはすべて「なし」がありました。
  5. 継承を有効にするをクリックします。
  6. 適用をクリックします。
  7. Aspnet_clientフォルダへの「セキュリティの適用エラー」に関するエラーメッセージ。これが何を意味するのかわからない。
  8. Continueをクリックします。
  9. システムがすべての権限を適用するのを待ちます。
  10. 完了。
0
tommo123456