GNU SASL GASSAPI 示例
GNU SASL GSSAPI Example
我似乎无法在任何地方找到有关如何将 GNU 的 SASL 与 gssapi 机制一起使用的示例。我试过像这样启动它(只是猜测它是如何工作的):
gsasl_init(&ctx);
gsasl_client_start(ctx, "GSSAPI", &session);
但我从 gsasl_client_start 收到 GSASL_UNKNOWN_MECHANISM 错误。有谁知道如何使用 gsasl?有人可以指点我教程吗?
这显然是因为构建的库没有支持 GSSAPI;查看源代码(`libgasl-1.8.1'),唯一可以return的地方是:
// src/xstart.c
static int
setup (Gsasl * ctx,
const char *mech,
Gsasl_session * sctx,
size_t n_mechs, Gsasl_mechanism * mechs, int clientp)
{
Gsasl_mechanism *mechptr = NULL;
int res;
mechptr = find_mechanism (mech, n_mechs, mechs);
if (mechptr == NULL)
return GSASL_UNKNOWN_MECHANISM;
所以这意味着它不是库支持它的情况,但它无法在支持它的计算机上找到资源(例如 kerberos)。
当我试图在我自己的系统上编译它时,configure
没有启用 GSSAPI,因为它找不到重要的东西:
...
checking if DIGEST-MD5 should be used... yes
checking if SCRAM-SHA-1 should be used... yes
checking if SAML20 should be used... yes
checking if OPENID20 should be used... yes
configure: checking for GSS implementation (yes)
configure: auto-detecting GSS/MIT/Heimdal
configure: use --with-gssapi-impl=IMPL to hard code
configure: where IMPL is `gss', `mit', or `heimdal'
checking for libgss... no
configure: WARNING: GNU GSS not found (see http://www.gnu.org/software/gss/)...
configure: WARNING: Auto-detecting MIT/Heimdal is unreliable, disabling GSSAPI
checking if KERBEROS_V5 should be used... no
...
因此,要么缺少某些基础包,您需要获取一个相关但名称不同的包(包括此支持),或者您需要自己构建它,并使用启用您想要的选项。
我似乎无法在任何地方找到有关如何将 GNU 的 SASL 与 gssapi 机制一起使用的示例。我试过像这样启动它(只是猜测它是如何工作的):
gsasl_init(&ctx);
gsasl_client_start(ctx, "GSSAPI", &session);
但我从 gsasl_client_start 收到 GSASL_UNKNOWN_MECHANISM 错误。有谁知道如何使用 gsasl?有人可以指点我教程吗?
这显然是因为构建的库没有支持 GSSAPI;查看源代码(`libgasl-1.8.1'),唯一可以return的地方是:
// src/xstart.c
static int
setup (Gsasl * ctx,
const char *mech,
Gsasl_session * sctx,
size_t n_mechs, Gsasl_mechanism * mechs, int clientp)
{
Gsasl_mechanism *mechptr = NULL;
int res;
mechptr = find_mechanism (mech, n_mechs, mechs);
if (mechptr == NULL)
return GSASL_UNKNOWN_MECHANISM;
所以这意味着它不是库支持它的情况,但它无法在支持它的计算机上找到资源(例如 kerberos)。
当我试图在我自己的系统上编译它时,configure
没有启用 GSSAPI,因为它找不到重要的东西:
...
checking if DIGEST-MD5 should be used... yes
checking if SCRAM-SHA-1 should be used... yes
checking if SAML20 should be used... yes
checking if OPENID20 should be used... yes
configure: checking for GSS implementation (yes)
configure: auto-detecting GSS/MIT/Heimdal
configure: use --with-gssapi-impl=IMPL to hard code
configure: where IMPL is `gss', `mit', or `heimdal'
checking for libgss... no
configure: WARNING: GNU GSS not found (see http://www.gnu.org/software/gss/)...
configure: WARNING: Auto-detecting MIT/Heimdal is unreliable, disabling GSSAPI
checking if KERBEROS_V5 should be used... no
...
因此,要么缺少某些基础包,您需要获取一个相关但名称不同的包(包括此支持),或者您需要自己构建它,并使用启用您想要的选项。