在WebAPI中具有自定义身份验证和Windows身份验证

时间:2015-08-31 21:22:28

标签: asp.net-web-api owin windows-authentication

我有一个依赖OWIN令牌的Api控制器。 Owin在startup.cs中配置

Startup.cs

  public static void Configuration(IAppBuilder app)
        {

            app.UseOAuthBearerAuthentication(new OAuthBearerAuthenticationOptions());
            app.UseOAuthAuthorizationServer(new OAuthAuthorizationServerOptions()
            {
                AllowInsecureHttp = true,
                TokenEndpointPath = new PathString("/token"),
                AccessTokenExpireTimeSpan = TimeSpan.FromMinutes(30),
                Provider = new OAuthAuthorizationServerProvider()
                {
                    OnValidateClientAuthentication = async c =>
                    {
                        c.Validated();
                    },
                    OnGrantResourceOwnerCredentials = async c =>
                    {

                        try
                        {
                            using (PrincipalContext pc = new PrincipalContext(ContextType.Domain))
                            {
                                // validate the credentials
}
}
}

现在我想添加一个仅依赖于Windows身份验证的新控制器。

我这样做是因为其中一个客户端是在我们的网络上运行的Windows应用程序。它使用Windows凭据识别用户。所以应用程序不想要求用户输入密码。

请建议......

0 个答案:

没有答案