使用SSPI使用Npgsql连接到远程PostgreSQL服务器

时间:2014-01-27 09:17:46

标签: postgresql nhibernate windows-authentication npgsql sspi

我使用nHibernate + Npgsql使用Windows身份验证(SSPI)连接到PostgreSQL服务器。我已将Windows用户添加到Postgres,并按照http://wiki.postgresql.org/wiki/Configuring_for_single_sign-on_using_SSPI_on_Windows的建议配置了设置。

这是我的连接字符串: “Server =; Port = 5432; Database =; Integrated Security = true”

这是我的代码:

if (!sessionFactories.TryGetValue(sessionFactoryConfigPath, out sessionFactory))
            {
                Configuration cfg = new Configuration();
                if (sessionFactoryConfigPath != DefaultConfigFile)
                {
                    //Check.Require(File.Exists(sessionFactoryConfigPath),
                    //    "The config file at '" + sessionFactoryConfigPath + "' could not be found");

                    cfg.Configure(sessionFactoryConfigPath);

                }
                else
                {
                    cfg.Configure();
                }


                //  Now that we have our Configuration object, create a new SessionFactory
                sessionFactory = cfg.BuildSessionFactory();

当我运行它时,我在sessionFactory = cfg.BuildSessionFactory();得到以下错误; “致命:XX000:无法接受SSPI安全背景”

当我检查PostgreSQL日志时,发现以下条目: “提供给该功能的令牌无效(80090308)”

我正在使用“PostgreSQL 9.3.2,由Visual C ++ build 1600,32位编译”。我是从postgres网站上得到的。我使用的是Windows 7 SP1 64位。

我在这里缺少什么?请帮忙。

0 个答案:

没有答案