(ビジネス向け)Microsoft Office 365のすべてのユーザーは、Microsoft Azure ADを通じて承認されます。 そのため、新しいユーザー(メール)がOffice 365に追加されるたびに、Microsoft Azure ADの対応するエントリが自動的に作成されます。
ここでは、Microsoft Azure ADを使用してUbuntu 14.04ユーザーを認証する方法を示します。 つまり、Microsoft Azure AD / Office 365を使用してUbuntuでSSOを作成する方法です。
1.前提条件
- Microsoft Azure AD / Office 365(ビジネス)アカウント
- インターネット接続のあるUbuntuサーバー
2. Microsoft Azure ADを構成する
開始するには、
manage.windowsazure.comの Microsoft Azureポータル、または
Office365メニュー->管理-> Azure ADにアクセスして
ください 。
次に、目的のActive Directoryブランチに移動します(ADの複雑な分岐構造を使用していない場合、エントリは1つだけです)。

「アプリケーション」を選択します。

「追加」をクリックして新しいアプリケーションを追加します。

「組織が開発中のアプリケーションを追加」を選択します。

この認証方法が使用される明確な名前(たとえば、「Linux Test Servers」)を考えて、「名前」フィールドに指定し、アプリケーションタイプ「ネイティブクライアントアプリケーション」(「ネイティブクライアントアプリケーション」)を選択します。

次のページでは、「リダイレクトURI」(「リダイレクトURI」)の入力を求められます。 URIに類似した任意の値を指定できます。 この場合、このフィールドは何にも影響しません。

ADアプリケーションが作成されました! 次に、「設定」をクリックします。

「クライアントID」フィールドの値を記憶/書き留めます-再度必要になります。

3. Ubuntu 14.04の構成
SSHを介してサーバーにアクセスします(この場合、sudoコマンドの実行を許可されているuser123によって)。

ルートに移動してgitをインストールします。
sudo su - apt-get install git

gitリポジトリ
github.com/bureado/aad-loginを複製します。
git clone https://github.com/bureado/aad-login

複製されたディレクトリに入り、/ opt / aad-loginディレクトリを作成し、aad-login.js package.jsonを/ opt / aad-login /にコピーし、aad-loginを/ usr / local / bin /にコピーします:
cd aad-login/ mkdir -p /opt/aad-login cp aad-login.js package.json /opt/aad-login/ cp aad-login /usr/local/bin/

ディレクトリ/ opt / aad-login /を入力し、npmアプリケーションをインストールします。
cd /opt/aad-login/ apt-get install npm

必要なnpmコンポーネントをインストールします。
npm install

ファイル./aad-login.jsの編集:

ディレクトリ変数の値には、Microsoft Azure AD / Office 365で使用されるドメイン名と、Microsoft Azure ADポータルで以前に取得した値「Client ID」(「Client Code」)のclientidを入力します。

ファイル/etc/pam.d/common-authの編集:

リストの最初になるように、pam_execの呼び出しを追加します。
auth sufficient pam_exec.so expose_authtok /usr/local/bin/aad-login

nodejsをインストールします。
apt-get install nodejs

廃止されたノードを削除し、シンボリックリンク/ usr / bin / nodejs-> / usr / bin / nodeを作成します。
apt-get --purge remove node ln -s /usr/bin/nodejs /usr/bin/node

ログインを許可するユーザーを作成します(パスワードを設定する必要はありません)。 このようなユーザーのログインは、エイリアスの電子メールアドレスと一致する必要があります。 たとえば、メールがsupport@aspanta.onmicrosoft.comであるサポートユーザーを作成します。
useradd -m support

すべて準備完了です!
Microsoft Azure AD / Office 365で作成したユーザーとパスワードを設定してログインしようとします。
