アクティブ ディレクトリでの Django LDAP 認証の設定方法を学習しますか? このチュートリアルでは、Microsoft Windows と LDAP プロトコルからアクティブ ディレクトリ データベースを使用して Django ユーザーを認証する方法を示します。

• ウブンツ 18
• ウブンツ 19
• ジャンゴ 2.2.6
• ウィンドウズ 2012 R2

ハードウェアリスト:

次のセクションでは、この Django チュートリアルを作成するために使用される機器の一覧を示します。

上記のハードウェアの一部は、Amazonのウェブサイトで見つけることができます。

ジャンゴ関連チュートリアル:

このページでは、Django のインストールに関連するチュートリアルのリストへのクイック アクセスを提供します。

チュートリアル - Windows ドメイン コントローラ ファイアウォール

まず、Windows ドメイン コントローラにファイアウォールルールを作成する必要があります。

このファイアウォールルールは、Django サーバーがアクティブディレクトリデータベースを照会することを許可します。

ドメイン コントローラで、セキュリティが強化された Windows ファイアウォールという名前のアプリケーションを開きます。

新しい受信ファイアウォール規則を作成します。

zabbix active directory

[ポート] オプションを選択します。

zabbix windows firewall port

[TCP] オプションを選択します。

[特定のローカル ポート] オプションを選択します。

TCP ポート 389 を入力します。

zabbix windows firewall port ldap

[接続を許可する] オプションを選択します。

zabbix windows firewall allow connection

ドメイン オプションを確認します。

[プライベート] オプションをオンにします。

[パブリック] オプションをオンにします。

Zabbix windows firewall profile

ファイアウォール規則の説明を入力します。

windows firewall active directory

これで、必要なファイアウォールルールが作成されました。

このルールは、Django がアクティブ ディレクトリ データベースに対してクエリを実行できるようにします。

チュートリアル - Windows ドメイン アカウントの作成

次に、Active ディレクトリ データベースに少なくとも 2 つのアカウントを作成する必要があります。

Admin アカウントは、Django ウェブインターフェイスでログインするために使用されます。

BIND アカウントは、アクティブ ディレクトリ データベースのクエリに使用されます。

ドメイン コントローラーで、次の名前のアプリケーションを開きます: Active Directory ユーザーとコンピューター

Users コンテナ内に新しいアカウントを作成します。

Zabbix active directory account

admin という名前の新しいアカウントを作成します。

ADMIN ユーザーに設定されたパスワード: 123qwe..

このアカウントは、Django ウェブインターフェイスで管理者として認証するために使用されます。

active directory admin account
zabbix active directory admin properties

次の名前の新しいアカウントを作成します。

BIND ユーザーに設定されたパスワード: 神サム123@

このアカウントは、Active Directory データベースに保存されているパスワードのクエリに使用されます。

active directory bind account
zabbix active directory ldap bind properties

これで、必要なアクティブ ディレクトリ アカウントが作成されました。

チュートリアル - Windows ドメイン グループの作成

次に、Active ディレクトリ データベースに少なくとも 1 つのグループを作成する必要があります。

ドメイン コントローラーで、次の名前のアプリケーションを開きます: Active Directory ユーザーとコンピューター

Users コンテナ内に新しいグループを作成します。

Grafana active directory group

django-admin という名前の新しいグループを作成します。

このグループのメンバーは、Django Web インターフェイスの管理者権限を持ちます。

django admins

大事な! django-admins グループのメンバーとして、管理者ユーザーを追加します。

django admin permission

これで、必要なアクティブ ディレクトリ グループが作成されました。

チュートリアル - Ubuntu Linux上のジャンゴのインストール

Ubuntu のインストールをアップグレードします。

必要に応じて、コンピュータを再起動します。

Copy to Clipboard

apt-get を使用して、必要なパッケージをインストールします。

Copy to Clipboard

システムにインストールされているデフォルトの Python バージョンを確認します。

Copy to Clipboard

システムにインストールされている最新の Python バージョンを確認します。

Copy to Clipboard

デフォルトの Python バージョンを、検出された最新版に変更します。

Copy to Clipboard

システムにインストールされているデフォルトの Python バージョンを確認します。

Copy to Clipboard

ジャンゴをインストールします。

Copy to Clipboard

ここにDjangoのインストール出力があります。

Copy to Clipboard

最初の Django プロジェクトを作成します。

Copy to Clipboard

settings.pyファイルを編集する

Copy to Clipboard

ALLOWED_HOSTSエントリを見つけて、Django サーバーの IP アドレスを設定します。

Copy to Clipboard

この例では、DJO サーバは IP アドレス 192.168.15.11 を使用するコンピュータ上で実行されています。

Django サーバーを起動します。

Copy to Clipboard

ブラウザソフトウェアを開き、DjangoサーバーファイアウォールのIPアドレスと:8000を入力し、Webインターフェイスにアクセスします。

この例では、ブラウザに次の URL が入力されています。

• https://192.168.15.11:8000

Django ウェブインターフェイスを提示する必要があります。

Django web interface

Linux コマンド ラインで Ctrl + C キーを押して、Djando サーバーを停止します。

Django SQLite データベース スキーマを作成します。

Copy to Clipboard

Django 移行出力は次のとおりです。

Copy to Clipboard

ローカルの管理ユーザー アカウントを作成します。

Copy to Clipboard

この例では、パスワード kamisama123 を使用して root という名前のローカル ユーザー アカウントを作成します。

Django サーバーを起動します。

Copy to Clipboard

ブラウザを開き、ウェブサーバーのIPアドレスと:8000/adminを入力します。

この例では、ブラウザに次の URL が入力されています。

• http://192.168.15.11:8000/admin

ログイン画面で、以前に作成したDjangoユーザー名とパスワードを使用します。

• デフォルトのユーザ名:ルート
• デフォルトパスワード:神サム123

Django login

ログインが成功すると、Django ダッシュボードに送信されます。

Django dashboard basic

おめでとう! あなたは、Ubuntu Linux上のジャンゴのインストールを完了しました。

チュートリアル Django - アクティブディレクトリでの LDAP 認証

Linux コマンド ラインで Ctrl + C キーを押して、Djando サーバーを停止します。

django-auth-ldap インストールを許可するために必要なパッケージをインストールします。

Copy to Clipboard

PIP を使用して django 認証-ldap パッケージをインストールします。

Copy to Clipboard

ここでは、django-auth-ldap インストールの出力を示します。

Copy to Clipboard

Django プロジェクトsettings.pyファイルを編集します。

Copy to Clipboard

settings.pyファイルの上部にあるこの領域を見つけます。

Copy to Clipboard

LDAP ユーザ認証設定をこの行の下に追加します。

Copy to Clipboard

この例では、ユーザー認証に次の構成を使用しました。

ドミアンコントローラIP - 192.168.15.10
• アクティブ ディレクトリ ドメイン - dc=技術、dc=ローカル
認証コンテナ - DC =技術、DC=ローカル
• ユーザーをバインドする - CN =バインド、CN =ユーザー、DC=技術、DC=ローカル
• ユーザーパスワードをバインドする - 神サム123@
• グループ権限 - django-admin グループのメンバーは、Webインターフェイスへの総アクセス権を持ちます。

ネットワーク環境を反映するように変更する必要があります。

Django サーバーを起動します。

Copy to Clipboard

例として、ここにsettings.pyファイルの内容があります。

Copy to Clipboard

ブラウザを開き、ウェブサーバーのIPアドレスと:8000/adminを入力します。

この例では、ブラウザに次の URL が入力されています。

• http://192.168.15.11:8000/admin

ログイン画面で、以前に作成したDjangoユーザー名とパスワードを使用します。

• デフォルトのユーザー名: 管理者
• デフォルトのパスワード: アクティブディレクトリパスワードを入力します。

Django login

ログインが成功すると、Django ダッシュボードに送信されます。

Django dashboard basic

[ユーザー] メニューにアクセスし、Active ディレクトリ ユーザーが一覧に表示されているかどうかを確認します。

django ldap authentication user

おめでとう! Ubuntu Linux のアクティブ ディレクトリを使用して、Django ldap 認証を終了しました。