kahua.user

English page

Kahua Release

kahua-web Release

Security Advisory

Event Log

Documentation

For developers

Site info

Related Site

[module] kahua.user

Kahuaアプリケーションのログインセッションにおいて、認証に使用するユーザ 情報を扱うためのモジュールです。

[class] <kahua-user>

一人のユーザの情報を保持するクラスです。<kahua-persistent-base>を継承し ています (kahua.persistence参照)。

[slot] login-name

ユーザのログイン名。これが<kahua-user>永続クラスのキーとして使用されます。

[slot] password-hash

パスワードのハッシュ値(salt含む)。ハッシュには今のところmd5を使っています。

[slot] role-alist

このユーザのroleを表現するリスト。今のところ、role-alistは単なる シンボルのリストです。 roleの定義はアプリケーションサーバによって行われます。

[procedure] kahua-user? obj

objがこのアプリケーション内で認証に使用されている <kahua-user> もしくは そのサブクラスのインスタンスであれば #t を、そうでなければ #f を返します。

[procedure] kahua-add-user login-name password

このメソッドはデータベースがアクティブな時に呼ばれなければなりません。

新たなユーザを登録します。passwordには生のパスワードテキストを渡します。 それは内部でハッシュされ、実際にユーザオブジェクトに保存されるのは ハッシュ値のみです。

既に同じlogin-nameを持つユーザがいない場合は、登録は成功し、 新たに作られた<kahua-user>オブジェクトが返されます。 同じlogin-nameを持つユーザがいた場合は、新たなユーザは登録されず、 #fが返ります。

[procedure] kahua-check-user login-name password

このメソッドはデータベースがアクティブな時に呼ばれなければなりません。

与えられたlogin-nameとpasswordを持つユーザが見つかればその<kahua-user> オブジェクトを、見つからなければ#fを返します。

[procedure] kahua-find-user login-name

このメソッドはデータベースがアクティブな時に呼ばれなければなりません。

与えられたlogin-nameを持つユーザが見つかればその<kahua-user>オブジェク トを、見つからなければ#fを返します。

[procedure] kahua-user-password-change user old-password new-password

ユーザuserのパスワードをnew-passwordに変更します。ユーザの現在 のパスワードがold-passwordにマッチしないときは変更されません。

変更が成功したときは#tが、失敗したときは#fが返されます。

[procedure] kahua-user-password-change-force user new-password

ユーザuserのパスワードを強制的にnew-passwordに変更します。

変更が成功したときは#tが、失敗したときは#fが返されます。

[procedure] kahua-user-has-role? user roles

このメソッドはデータベースがアクティブな時に呼ばれなければなりません。

ユーザuserが、rolesに挙げられているroleのいずれかを持っている時 に#tを、そうでなければ#fを返します。

userには、<kahua-user>のインスタンスか、#fを渡します。#fを渡した場 合は常に#fが返ります。これは、kahua-current-user (kahua.server 参 照) の戻り値をそのまま渡すのに便利です。

rolesはroleを表すシンボルのリストです。将来は、より複雑な条件 を指定できるように拡張されるかもしれません。

[procedure] kahua-user-add-role! user role

ユーザuserにシンボルroleで表されるロールを追加します。

[procedure] kahua-user-drop-role! user role

ユーザuserからシンボルroleで表されるロールを削除します。

Copyright (c) 2003-2007 Kahua Project Contact | About Us