1

次のように、Web.config で Windows 認証を使用する ASP.NET MVC 4 プロジェクトがあります。

<system.web>
    <authentication mode="Windows" />
</system.web>

しかし、コントローラーのメソッドから調べるServiceSecurityContext.Currentとnullです。Windows認証を使用しているため、ユーザーの認証情報を含める必要はありませんか?

これを理解しようとしている理由はCredentialCache.DefaultNetworkCredentials、Controller メソッドからどの資格情報が使用されているかを知りたいからです。プロパティに関するMSDNの記事を読んで収集したものから、現在のセキュリティコンテキストの資格情報を使用しています...これはnullです。

助けてくれてありがとう!

4

1 に答える 1

5

クラスは、ServiceContextWCF サービス内で使用することを目的としています。ASP.NET MVC とは関係ありません。

ServiceContext.CurrentASP.NET MVC アプリケーション内で使用しようとすることは、コンソール アプリケーション内で使用しようとするようなものですHttpContext.Current=> NULL が返されます。

これを理解しようとしている理由は、CredentialCache.DefaultNetworkCredentials が Controller メソッドから使​​用している資格情報を知りたいからです。

User.Identity.Name次に、プロパティを探しています。

[Authorize]
public ActionResult Index()
{
    string currentUser = User.Identity.Name;
    ...
}
于 2013-01-23T22:22:41.700 に答える