设置 SOLR 身份验证 kerebos 插件

问题描述 投票:0回答:1

我的任务是设置 Apache SOLR 在身份验证下运行,同时不修改对 SOLR 的现有 c# 调用。

可用的选项是基本身份验证插件和 kerebos 插件

当我尝试基本身份验证插件时,我发现我需要更改对 SOLR 的调用以包含登录

我正在尝试了解 kerebos,但我无法完全理解它。

我的理解是,我需要设置一个称为密钥表文件的文件,其中包含可以访问该应用程序的主体的列表 然后你更新了一个叫做 KDC 的东西,并给出了相同的原则

所以我基本上在一个盒子上有一个 Web api,在另一个盒子上有 apache solr。

  1. 我不需要用kerebos登录,对吗?因此,只要 KDC 具有 Web api 框和 solr 框以及 Windows 用户帐户(我正在考虑使用 Web api 的服务帐户),服务器之间的来回就会自动发生(请求票证,授予门票等)

  2. 我不需要更改我的http调用,对吧?

  3. 我不需要安全证书,对吧?

c# solr kerberos
1个回答
0
投票

如果将 Active Directory 用作 KDC,则每个域控制器都将拥有 KDC 服务。您的应用程序 URL FQDN 部分应在 Active Directory SPN 中注册。这是客户端将使用 Kerberos 身份验证访问应用程序的 URL,参与 Kerberos 的主机也应在 Active Directory 中注册。

Keytab 文件将包含服务帐户凭据,并使用 ktpass 等实用程序或应用程序的特定实用程序构建此文件并将其安全地传输到相关应用程序目录。这是 AD 中的服务凭证,具有相关 SPN 对象的必要权限。

您的应用程序应使用其密钥表文件要求 KDC 提供 TGT 和 TGS 票证。然后门票就可以在您的应用程序中使用。

单独的 Kerberos 不需要证书,但如果您的应用程序使用 LDAPS(端口 636)连接到 AD,则 DC 应该有证书。如果您的应用程序不需要证书,那么 DC 证书可能就足够了。

仅此场景并不允许每个应用程序用户请求票证。服务帐户构建安全身份验证通道,其余的用户身份验证和授权应由应用程序处理。

© www.soinside.com 2019 - 2024. All rights reserved.