19

owin.org に基づく VS 2013 で導入された新しい認証システムの LDAP サポートを実装する方法を知っていますか。

フォーム認証を使用して独自のプロバイダーを作成しましたが、機能しなくなりました。

これを拡張する方法も大歓迎です。私が目にするのは、Google、Twitter、Facebook などの多くの oauth プロバイダーのサポートが組み込まれていることだけです。

4

1 に答える 1

1

それは実際にはかなり簡単です。提供された UserManager で CheckPasswordAsync メソッドをオーバーライドするだけです。(完全な開示、それは私のブログ投稿です)。

public class ApplicationUserManager : UserManager<ApplicationUser> {
//...SNIP...
    public override async Task<bool> CheckPasswordAsync(ApplicationUser user, string password)
    {
        return await Task.Run(() => {
            _context = new PrincipalContext(ContextType.Domain);
            return _context.ValidateCredentials(user.UserName, password, ContextOptions.Negotiate)
        });
    }
}

これは非常に素朴な方法ですが、うまくいくはずです。

于 2015-04-09T16:06:09.953 に答える