今回は、Microsoftが提供するクラウドベースの認証サービス「Azure Active Directory(Azure AD)」を使ったユーザー認証について紹介します。Azure ADで管理されているユーザーをFessにログインさせてみましょう。
解説にあたっては、Azure ADとFess 13.8.0を利用するので、事前に環境をご用意ください。FessのZIPファイルは公式サイトから入手できます。インストールガイドを参考に、FessとElasticsearchをインストールしておいてください。
認証用アプリの登録
まず、Azure Portalで、認証用のアプリを登録します。Azure Portalにログインして「Azure AD」→「アプリの登録」をクリックします。
「新規登録」をクリックしたら「名前」「リダイレクト URI」を入力して「登録」をクリックします。
左側に表示されている「証明書とシークレット」→「新しいクライアントシークレット」をクリックします。「説明」テキストボックスへの入力は任意ですが、ここではアプリと同じ名前を入れておきます。「有効期限」ラジオボタンは「なし」を選択して「追加」をクリックします。
追加された行の値をコピーしておきます。このキーの値は再度表示されないため、別画面に遷移する前に記録しておいてください。
次に「APIのアクセス許可」の画面で「アクセス許可の追加」をクリックします。
APIには「Microsoft Graph」を選択します。
「APIアクセス許可の要求」で「アプリケーションの許可」をクリックして、以下のAPIを検索し、追加します。
- Directory.AccessAsUser.All
- Directory.Read.All
認証設定
続いて、Fessで認証設定を行います。
「app/WEB-INF/conf/system.properties」を開いて、今回は以下の内容を追加して保存します。
aad.tenant=[テナント名].onmicrosoft.com
aad.client.id=認証用アプリのクライアントID
aad.client.secret=認証用アプリのクライアントシークレットの値
aad.reply.url=http://localhost:8080/sso/
sso.type=aad
Fessへのアクセス
「http://localhost:8080/sso/」で検索画面にアクセスします。Microsoftのサインイン画面が表示されるので、Azure ADに登録されているアカウントでサインインします。
検索画面の右上にサインインした際のアドレスが表示されていれば、認証成功です。
* * *
今回は、Azure ADで管理されているユーザーをFessで認証する方法について紹介しました。全般の設定で、ログインを必須にすることにより、Fessにアクセスすると自動でログインできるようになるので、シングルサインオン環境を実現することもできます。
著者紹介
![]() |
菅谷 信介 (Shinsuke Sugaya)
Apache PredictionIOにて、コミッター兼PMCとして活動。また、自身でもCodeLibs Projectを立ち上げ、オープンソースの全文検索サーバFessなどの開発に従事。
※ 本記事は掲載時点の情報であり、最新のものとは異なる場合がございます。予めご了承ください。
連載目次
関連リンク
ダウンロードBOXに入れる
記事をダウンロードBOXに追加します。よろしいですか?
ブックマーク
記事をブックマークに追加します。よろしいですか?
-
$side_seminar_count = $i+1; ?>
-
1/27(水)15:00~16:50
Kubernetes時代のインフラ構築指針~オンプレミス回帰のその先へ~
$side_seminar_count = $i+1; ?>
-
2021年1月27日(水)14:00~15:00
DXの実現につながるビジネスモデル「サブスクリプション」 実現・運用・収益化のコツ
$side_seminar_count = $i+1; ?>
-
2021年1月27日(水) 13:30~15:30
Palo Alto Networks Forum vol.5 Virtual
$side_seminar_count = $i+1; ?>
-
2021年1月28日(木)13:30~16:40
建設業界のDX促進の方法論 ~安全・安心を維持し事業改善を~
$side_seminar_count = $i+1; ?>
-
2021年2月3日(水)13:00
労務管理が支える「働き方改革」適応法 ~New Normal時代の労務対応~
今注目のIT用語の意味を事典でチェック!