-
サーバ構築のデージーネットTOP
-
OSS情報
-
OSS紹介
-
Rocket.Chat~オンプレ用のチャット~
-
Rocket.Chat管理者マニュアル
2. ユーザー設定
一覧へ
4. メールに関する設定
3. 認証サービス連携について
Rocket.Chatでは、様々な認証サービスを使ってユーザー認証を行うことができます。
現在サポートされている認証サービスは次の通りです。
- CAS
- LDAP
- Oauth
- SAML
- WordPress
認証の設定は、設定画面の該当するメニューから設定が行えます。
本書ではLDAPサービスとの連携例を解説します。
3.1. LDAPサービス連携
3.1.1. LDAPと連携できる情報
Rocket.ChatとLDAPを連携した場合、次のようなことができるようになります。
- LDAPを利用してユーザー認証を行う
- LDAPの属性値をRocket.Chatユーザー属性(IDやメールアドレス等)と同期する
- LDAPのグループとロールをマッピングする
- LDAPのグループと所属するチャンネルをマッピングする
3.1.2. 基本的なLDAP認証設定
まず基本的な内容として、LDAPのユーザーを利用して認証・情報の同期を
行う設定についてです。
最初に、LDAPの設定画面の接続タブの設定項目を設定します。
設定する内容は次の通りです。
- 有効にする
- サーバーの種類
- ホスト
- LDAPサーバのドメインまたはIPアドレスを入力します
- ポート
- 再接続
- 有効化するとLDAPサーバと切断した場合に自動的に再接続を行います
- ログインフォールバック
- 有効にするとLDAP認証に失敗した場合に、ローカルユーザーで認証を試みます。なお次章の注意点も確認してください。
次に 認証
の項目を設定します。
認証の項目は、次の内容を設定します。
- 有効
- ユーザーDNとパスワードを使ってLDAPの認証を行う場合、有効を設定します
- ユーザーDN
- パスワード
次に 暗号化
の項目を設定します。
暗号化の項目は、次の内容を設定します。
- 暗号化
- LDAPサーバとの通信の暗号化方式を指定します(StartTLS/SSL)
- CA証明書
- 認証できなければ拒否
- 検証できない証明書の扱いを選択します。自己署名証明書の場合、無効にします
次に タイムアウト
の項目を設定します。
タイムアウトの項目は、次の内容を設定します。
- タイムアウト(ミリ秒)
- LDAPの処理全体のタイムアウトをミリ秒で指定します
- 接続タイムアウト(ミリ秒)
- アイドルタイムアウト(ミリ秒)
- LDAP操作後に接続を閉じるまでのタイムアウトをミリ秒で指定します
ここまでの設定で、LDAPとの基本的な接続の設定は完了しました。
ここからLDAPの属性とRocket.Chatのユーザー属性のマッピング設定に入ります。
まず ユーザー検索
のタブで、ユーザーの検索フィールドを設定します。
設定する内容は次の通りです。
- ログイン後にユーザーを検索
- ActiveDirectoryや一部LDAPサーバ特有のパスワード無しの認証の問題を回避するためのオプションです。特に問題無い場合、有効にすることを推奨します。
次に 検索フィルター
の項目を設定します。
検索フィルターの項目は、次の内容を設定します。
- ベースDN
- LDAPの検索ベースDNを指定します
- この項目は、ユーザーを特定するためのフィールドとして使われます。Rocket.Chatでログインした場合には、この情報を使ってLDAPにセルフバインドが行われます。
- フィルター
- LDAPからユーザーを検索する際の検索フィルタを指定します
- 範囲
- 検索フィールド
- 検索ページサイズ
- 検索サイズ制限
次に グループフィルター
の項目を設定します。
グループフィルターの項目は、次の内容を設定します。
- LDAPユーザーグループフィルターを有効にする
- 有効化すると、LDAPアクセスをグループ内のユーザーに制限できます
- グループObjectClass
- グループID属性
- グループメンバー属性
- グループメンバー型式
- LDAPのグループに登録されているメンバーデータの形式を指定します
- 例: uid=#{username},ou=users,o=Company,c=com
- グループ名
続いて データ同期
のタブから、データ同期の設定を行います。
設定する内容は次の通りです。
- 一意の識別子フィールド
- LDAPユーザーとRocket.Chatユーザーをリンクするためのフィールドです。複数の値をカンマ区切りで指定すると LDAP レコードからそれぞれ取得することを試みます。
- 既存ユーザーのマージ
- 有効化すると、LDAPと同じユーザーIDを持つRocket.chatの内部ユーザーの情報がマージされます。
- ログオン時にユーザーデータを更新
- 有効化するとログイン時にユーザーデータ(名前・メールアドレス等)を同期します
- デフォルトドメイン
- 指定されている場合、電子メール情報が取得できないユーザーの電子メールアドレスのドメインとして、この情報を利用します
次に アバター
の項目を設定します。
アバターの項目は、次の内容を設定します。
- ユーザーのアバターの同期
- 有効化するとアバターの画像をLDAPから取得できます
- ユーザーアバターフィールド
- アバター画像が保存されているLDAPフィールドを指定します
次に マッピング
の項目を設定します。
マッピングの項目は、次の内容を設定します。
- ユーザー名フィールド
- 新しいユーザーのユーザー名として使用されるフィールドを指定します
- メールフィールド
- 新しいユーザーのメールアドレスとして使用されるフィールドを指定します
- 名前フィールド
- 新しいユーザーの表示名として使用されるフィールドを指定します
以上の設定を行い、設定の保存すると次回ログインからLDAPに登録されたユーザーで
ログインできるようになります。
3.2. LDAP連携の注意点
3.2.1. ログインフォールバックについて
ログインフォールバックを無効にする場合、管理者ユーザーがLDAPに存在する必要があります。ロールのマッピング等がうまくいっていることを確認した後に、無効にするようにしてください。
3.2.2. パスワードの同期について
基本的にLDAPとRocket.Chatのパスワードは、同期されません。
ただしLDAPを利用したログイン時に、パスワードがRocket.Chatの内部DBに保存されます。
上記のログインフォールバックの機能では、この内部DBに保存されたDBでログインができる状態が維持されます。
便利な機能ですが、問題も存在します。例えば次のような状況が発生します。
- LDAPでRocket.Chatに初回ログイン(内部DBに登録されるパスワード: original)
- LDAP上でパスワードを変更(変更後のパスワード: newpassword)
- Rocket.Chatに古いパスワード(original)を利用してログインする
- ログインができる
これは内部的には、LDAP認証が失敗した後フォールバックして、内部DBのパスワードを利用して認証するため発生する問題です。
現状この問題の根本的な回避策は存在しないため、LDAPでパスワードを変更した際には、
運用ルールとして、Rocket.Chatに再ログインさせるなどの措置が必要です。
2. ユーザー設定
一覧へ
4. メールに関する設定
OSS情報
- 便利機能
- ここでは、実運用時に役立つ便利な使い方を紹介します。
- 会話ログ機能
- ここでは、管理者が専用のWEBページから、チャット利用者の投稿を確認できる「会話ログ機能」について紹介します。
- インストール方法
- ここでは、チャット機能をCentOS7へインストールする方法について紹介します。