問題タブ [remoteusermiddleware]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - RemoteUserMiddleware が機能していません。/accounts/login/?next= にリダイレクトされるだけです
を使用して、Django で単純なWWW-Authenticate
HTTP 認証を実行しようとしていREMOTE_USER
ます。これはRemoteUserMiddlewareで行われます。
残念ながら、私の設定ファイルを次のように変更した後:
@login_required
ビューにデコレータを追加しても機能しません。ページを表示するaccounts/login/?next=/page/I/tried/to/access
と、存在しない に移動し、404 エラーが発生します。
送信しないのはなぜWWW-Authenticate
ですか?これが正しい方法ではない場合、どうすればよいですか?
django - 管理サイトでリモートユーザーを追加するDjango
Shibboleth 対応サーバーで Django サイトを実行しているため、リモート ユーザー認証バックエンドを使用しています。すべてのユーザーは、このサービス (LDAP など) を介して認証されます。これは私にとってはうまくいきます。ただし、私のサイトはロックダウンされているため、staff グループに属するユーザーのみがビューにアクセスできます。そのため、「スーパーユーザー」がデータベースまたは管理サイトにアクセスして、ユーザーをスタッフに変更する必要があります。Django 管理サイトでリモート ユーザーを事前作成/事前承認できるように、このワークフローを好転させたいと考えています。アカウントの「スタッフ」フラグ。
問題は、Django 管理サイトがすべての新規ユーザーのパスワードを入力することを期待していることです。ただし、私のデータベースでは、リモート ユーザーのパスワード フィールドは空白です。パスワード フィールドの内容はリモート認証には関係ないように見えますが、スーパー管理者がすべての人に「偽の」パスワードを設定する必要はないようにしたいと思います。 .
MySQL データベースで直接ユーザーを作成すると、パスワード フィールドを空白のままにしておくことができるため、リモート ユーザーを問題なく作成できます。ただし、他のスーパー管理者にデータベースへの直接アクセスを渡したくないです。
この SO postに従って、管理サイトからパスワード フィールドを削除しようとしました。しかし、フィールド (パスワードなど) が不足しているという検証エラーが返されます。
私のadmin.py:
質問: Django セットアップで許可されたリモート ユーザーを事前設定する最良の方法は何ですか? MySQL で 1.5.1 を実行しています。カスタムのユーザー追加ビューを作成する場合、それが最も簡単な方法ですか? または、既存の Django 管理ビューを何とか利用する方法はありますか?
ありがとう!