セキュリティインテグレーションで認証
StarRocks をセキュリティインテグレーションを使用して外部認証システムと統合します。
StarRocks クラスター内でセキュリティインテグレーションを作成することで、外部認証サービスへのアクセスを StarRocks に許可できます。セキュリティインテグレーションを使用すると、StarRocks 内でユーザーを手動で作成する必要がありません。ユーザーが外部 ID を使用してログインしようとすると、StarRocks は authentication_chain の設定に従って対応するセキュリティインテグレーションを使用してユーザーを認証します。認証が成功し、ユーザーがログインを許可された後、StarRocks はセッション内に仮想ユーザーを作成し、そのユーザーが後続の操作を実行できるようにします。
セキュリティインテグレーションを使用して外部認証方法を構成する場合は、外部認可を有効にするために StarRocks を Apache Ranger と統合 する必要があることに注意してください。現在、セキュリティインテグレーションを StarRocks ネイティブ認可と統合することはサ ポートされていません。
また、StarRocks に Group Provider を有効にして、外部認証システムのグループ情報にアクセスし、StarRocks でユーザーグループを作成、認証、および認可することができます。
特定のコーナーケースでは、外部認証サービスを使用してユーザーを手動で作成および管理することもサポートされています。詳細な手順については、See also を参照してください。
セキュリティインテグレーションを作成する
現在、StarRocks のセキュリティインテグレーションは以下の認証システムをサポートしています:
- LDAP
- OJSON Web Token(JWT)
- OAuth 2.0
StarRocks はセキュリティインテグレーションを作成する際に接続性チェックを提供しません。
LDAP を使用したセキュリティインテグレーションの作成
構文
CREATE SECURITY INTEGRATION <security_integration_name>
PROPERTIES (
"type" = "authentication_ldap_simple",
"authentication_ldap_simple_server_host" = "",
"authentication_ldap_simple_server_port" = "",
"authentication_ldap_simple_bind_base_dn" = "",
"authentication_ldap_simple_user_search_attr" = ""
"authentication_ldap_simple_bind_root_dn" = "",
"authentication_ldap_simple_bind_root_pwd" = "",
"authentication_ldap_simple_ssl_conn_allow_insecure" = "{true | false}",
"authentication_ldap_simple_ssl_conn_trust_store_path" = "",
"authentication_ldap_simple_ssl_conn_trust_store_pwd" = "",
"comment" = ""
)
パラメータ
security_integration_name
- 必須: はい
- 説明: セキュリティインテグレーションの名前。
注意
セキュリティインテグレーション名はグローバルに一意です。このパラメータをnativeとして指定することはできません。
type
- 必須: はい
- 説明: セキュリティインテグレーションのタイプ。
authentication_ldap_simpleとして指定します。
authentication_ldap_simple_server_host
- 必須: いいえ
- 説明: LDAP サービスの IP アドレス。デフォルト:
127.0.0.1。
authentication_ldap_simple_server_port
- 必須: いいえ
- 説明: LDAP サービスのポート。デフォルト:
389。
authentication_ldap_simple_bind_base_dn
- 必須: はい
- 説明: クラスターが検索する LDAP ユーザ ーの基本識別名 (DN)。
authentication_ldap_simple_user_search_attr
- 必須: はい
- 説明: LDAP サービスにログインするために使用されるユーザーの属性。例:
uid。
DN パス機構: LDAP セキュリティインテグレーションは DN パス機能をサポートします。
- 認証成功後、システムはユーザーのログイン名と完全な DN の両方を記録します。
- Group Provider と組み合わせると、DN 情報が自動的にグループプロバイダに渡されます。
- Group Provider で
ldap_user_search_attrが設定されていない場合、グループマッチングには DN が使用されます。 - このメカニズムは Microsoft AD のよう な複雑な LDAP 環境に特に適しています。
詳細はユーザーグループの認証の DN マッチングメカニズムを参照してください。
authentication_ldap_simple_bind_root_dn
- 必須: はい
- 説明: LDAP サービスの管理者 DN。
authentication_ldap_simple_bind_root_pwd
- 必須: はい
- 説明: LDAP サービスの管理者パスワード。
authentication_ldap_simple_ssl_conn_allow_insecure
- 必須: いいえ
- 説明: LDAP サーバへの暗号化されていない接続を許可するかどうか。デフォルト値:
true. この値をfalseに設定すると、LDAP へのアクセスに SSL 暗号化が必要であることを示します。
authentication_ldap_simple_ssl_conn_trust_store_path
- 必須: いいえ
- 説明: LDAP サーバーの SSL CA 証明書を格納するローカルパス。pem および jks 形式をサポートします。証明書が信頼できる組織によって発行されている場合は、この項目を設定する必要はありません。
authentication_ldap_simple_ssl_conn_trust_store_pwd
- 必須: いいえ
- 説明: LDAP サーバーのローカルに保存された SSL CA 証明書にアクセスするために使用されるパスワード。pem 形式の証明書にはパスワードは必要ありません。パスワードが必要なのは jsk 形式の証明書だけです。
group_provider
- 必須: いいえ
- 説明: セキュリティインテグレーションと組み合わせる Group Provider の名前。複数の Group Provider はカンマで区切られます。設定されると、StarRocks はログイン時に各指定プロバ イダーの下でユーザーのグループ情報を記録します。v3.5 以降でサポートされています。Group Provider を有効にする詳細な手順については、Authenticate User Groups を参照してください。
permitted_groups
- 必須: いいえ
- 説明: StarRocks にログインを許可されるグループの名前。複数のグループはカンマで区切られます。指定されたグループが結合された Group Provider によって取得できることを確認してください。v3.5 以降でサポートされています。
comment
- 必須: いいえ
- 説明: セキュリティインテグレーションの説明。