djangosaml2パッケージを使用して、ベースラインの Django/pysaml2 と SAML アサーションの統合を正常に実装しました。ユーザーは、認証の成功に基づいて動的に作成されます。これは素晴らしいことです! ここで、カスタム属性の短いリストをDjango 1.6 の「拡張」ユーザー モデルに挿入したいと思います。
djangosaml2 のドキュメントには、提供された Django シグナルを使用する必要があると記載されています ( https://pypi.python.org/pypi/djangosaml2#user-attributesを参照)。
...これらの場合、djangosaml2 はリッスンできる Django シグナルを提供します。そのために、次のコードをアプリに追加できます。
from djangosaml2.signals import pre_user_save
def custom_update_user(sender=user, attributes=attributes, user_modified=user_modified)
...
return True # I modified the user object
ここに私の質問があります:
- 上記の信号コードはどこに配置すればよいですか?
- 拡張ユーザー モデルが次のようになっている場合、拡張ユーザー モデルに従業員 ID を設定するように指示するにはどうすればよいですか?
models.py
from django.db import models
from django.contrib.auth.models import User
class UserProfile(models.Model):
user = models.OneToOneField(User)
employee_id = models.CharField(blank=True,max_length=150)