ITの窓辺から

三流IT技術者の日常

Python

Django ManyToManyFieldはどちらのモデルで指定すべきか

多対多関係のテーブルを作る場合、DjangoではManyToManyFieldを使用します。するとDjangoは元々の多対多関係のテーブルと一対多関係になるような中間テーブルを自動的に生成します。この時、どちらのテーブルにManyToManyFieldを指定するかいつも悩みます。…

DjangoでLDAP認証 その7 機能のテスト

前回でとりあえずDjangoの認証にActive Directoryを使用したLDAP認証を実装したのでした。 realizeznsg.hatenablog.com 今回はこれらの認証におけるテストを行います。はじめはPythonのunittestで諸々やろうとしていたのですが、調べるとDjangoにunittestを…

DjangoでLDAP認証 その6 とりあえず完成形

前回はパーミッションによる認可処理のはしりを実装してみました。 realizeznsg.hatenablog.com 今回は当初の要件だった以下の内容を全て実現できるようにしてみます。 Active Directory上に格納されたユーザアカウントを使用してDjango上のアプリケーション…

DjangoでLDAP認証 その5 パーミッションによる機能制限

前回ではようやくDjangoアプリケーションの認証をActive Directoryを使用したLDAP認証に置き換えることができました。今回からはアクセス制御、いわゆる認可に関してやっていきたいと思います。 realizeznsg.hatenablog.com 相変わらずの注意書きですが、こ…

DjangoでLDAP認証 その4 ldap3モジュールによる認証バックエンドカスタマイズ

前回で認証バックエンドのカスタマイズに必須のメソッドを調べたので今回からは認証バックエンドのカスタマイズをやっていこうと思います。Pythonにはldap3というPythonからLDAPサーバにLDAP接続するためのモジュールがありますので今回はこれを使っていきま…

DjangoでLDAP認証 その3 標準の認証バックエンドのメソッド

今回は認証バックエンドについて調べたことを書きます。相変わらずの注意書きですが、この記事はWebアプリケーションとDjangoの初心者が調べたことをメモするものであり、正しい解説記事を目的としていないのでご注意ください。 環境は以下の通りです。macOS…

DjangoでLDAP認証 その2 AbstractUserとAbstractBaseUser

前回の記事ではDjangoでLDAP認証を行うための相当前段階に関する話をしていたのでした。 realizeznsg.hatenablog.com 今回はその続きとして認証バックエンドについてやっていこうと思っていたのですが、ユーザーモデルについてもう少し調べていたら、もう少…

DjangoでLDAP認証 その1

Djangoの認証についてすこーしだけ理解したのでその内容をメモ代わりに取りまとめてみます。長くなりそうかつまだ未検証事項が大量にあるので記事を分割していきます。 試した環境は以下の通り。macOS(intel CPU) Big SurPython3.8.5 (venv環境)Django3.2.5 …

Pythonを始める

今回はSplunkから離れて雑記です。オライリーの本を物色していたら「退屈なことはPythonにやらせよう」という本を見つけまして、CDのジャケ買いよろしく本の名前買いしました。もちろん電子書籍です。ざっと目次を見る限り、バリバリのプログラマ向けという…