檢視原始碼 mod_auth (inets v9.3.1)
使用文字檔案、Dets 或 Mnesia 資料庫進行使用者身份驗證。
此模組提供使用文字檔案、Dets 資料庫或 Mnesia 資料庫進行基本使用者身份驗證的功能。
另請參閱
摘要
函式
add_group_member/3
、add_group_member/4
和 add_group_member/5
各自將使用者新增至群組。如果群組不存在,則會建立該群組,並將使用者新增至該群組。成功操作後,此函式會傳回 true
。當呼叫 add_group_members/3
時,選項 Port
和 Dir
為必填。
add_user(UserName, Password, UserData, Address, Port, Dir) -> true | {error, Reason}
delete_group/2
、delete_group/3
和 delete_group/4
各自刪除指定的群組並傳回 true
。如果發生錯誤,則會傳回 {error, Reason}
。當呼叫 delete_group/2
時,選項 Port
和 Dir
為必填。
delete_group_member/3
、delete_group_member/4
和 delete_group_member/5
各自從群組中刪除使用者。如果群組或使用者不存在,此函式會傳回錯誤,否則傳回 true
。當呼叫 delete_group_member/3
時,選項 Port
和 Dir
為必填。
delete_user/2
、delete_user/3
和 delete_user/4
各自從使用者資料庫中刪除使用者。如果操作成功,此函式會傳回 true
。如果發生錯誤,則會傳回 {error, Reason}
。當呼叫 delete_user/2
時,選項 Port
和 Dir
為必填。
get_user/2
、get_user/3
和 get_user/4
各自傳回包含特定使用者使用者資料的 httpd_user/0
記錄。如果找不到使用者,則會傳回 {error, Reason}
。當呼叫 get_user/2
時,選項 Port
和 Dir
為必填。
list_group_members/2
、list_group_members/3
和 list_group_members/4
各自列出指定群組的成員。如果群組不存在或發生錯誤,則會傳回 {error, Reason}
。當呼叫 list_group_members/2
時,選項 Port
和 Dir
為必填。
list_groups/1
、list_groups/2
和 list_groups/3
各自列出所有可用的群組。如果發生錯誤,則會傳回 {error, Reason}
。當呼叫 list_groups/1
時,選項 Port
和 Dir
為必填。
list_users/1
、list_users/2
和 list_users/3
各自傳回特定 Port/Dir
的使用者資料庫中的使用者清單。當呼叫 list_users/1
時,選項 Port
和 Dir
為必填。
update_password/5
和 update_password/6
各自更新指定目錄的 AuthAccessPassword
。如果 NewPassword
等於 "NoPassword",則變更授權資料不需要密碼。如果 NewPassword
等於 "DummyPassword",則必須先變更密碼才能進行任何變更。
類型
函式
-spec add_group_member(GroupName, UserName, Options) -> true | {error, Reason} when GroupName :: string(), UserName :: string(), Options :: [{port, Port} | {addr, Address} | {dir, Directory} | {authPassword, AuthPassword}], Port :: inet:port_number(), Address :: inet:ip4_address() | inet:ip6_address() | string() | undefined, Directory :: string(), AuthPassword :: string(), Reason :: term().
等同於 add_group_member/5
。
-spec add_group_member(GroupName, UserName, Port, Directory) -> true | {error, Reason} when GroupName :: string(), UserName :: string(), Port :: inet:port_number(), Directory :: string(), Reason :: term().
等同於 add_group_member/5
。
-spec add_group_member(GroupName, UserName, Address, Port, Directory) -> true | {error, Reason} when GroupName :: string(), UserName :: string(), Port :: inet:port_number(), Address :: inet:ip4_address() | inet:ip6_address() | string() | undefined, Directory :: string(), Reason :: term().
add_group_member/3
、add_group_member/4
和 add_group_member/5
各自將使用者新增至群組。如果群組不存在,則會建立該群組,並將使用者新增至該群組。成功操作後,此函式會傳回 true
。當呼叫 add_group_members/3
時,選項 Port
和 Dir
為必填。
-spec add_user(UserName, Options) -> true | {error, Reason} when UserName :: string(), Options :: [{password, Password} | {userData, UserData} | {port, Port} | {addr, Address} | {dir, Directory} | {authPassword, AuthPassword}], Password :: string(), UserData :: term(), Port :: inet:port_number(), Address :: inet:ip4_address() | inet:ip6_address() | string() | undefined, Directory :: string(), AuthPassword :: string(), Reason :: term().
等同於 add_user/6
。
-spec add_user(UserName, Password, UserData, Port, Directory) -> true | {error, Reason} when UserName :: string(), Password :: string(), UserData :: term(), Port :: inet:port_number(), Directory :: string(), Reason :: term().
等同於 add_user/6
。
-spec add_user(UserName, Password, UserData, Address, Port, Directory) -> true | {error, Reason} when UserName :: string(), Password :: string(), UserData :: term(), Port :: inet:port_number(), Address :: inet:ip4_address() | inet:ip6_address() | string() | undefined, Directory :: string(), Reason :: term().
add_user(UserName, Password, UserData, Address, Port, Dir) -> true | {error, Reason}
add_user/2
、add_user/5
和 add_user/6
各自將使用者新增至使用者資料庫。如果操作成功,此函式會傳回 true
。如果發生錯誤,則會傳回 {error, Reason}
。當呼叫 add_user/2
時,選項 Password
、UserData
、Port
和 Dir
為必填。
-spec delete_group(GroupName, Options) -> true | {error, Reason} when GroupName :: string(), Options :: [{port, Port} | {addr, Address} | {dir, Directory} | {authPassword, AuthPassword}], Port :: inet:port_number(), Address :: inet:ip4_address() | inet:ip6_address() | string() | undefined, Directory :: string(), AuthPassword :: string(), Reason :: term().
等同於 delete_group/4
。
-spec delete_group(GroupName, Port, Directory) -> true | {error, Reason} when GroupName :: string(), Port :: inet:port_number(), Directory :: string(), Reason :: term().
-spec delete_group(GroupName, Address, Port, Directory) -> true | {error, Reason} when GroupName :: string(), Port :: inet:port_number(), Address :: inet:ip4_address() | inet:ip6_address() | string() | undefined, Directory :: string(), Reason :: term().
delete_group/2
、delete_group/3
和 delete_group/4
各自刪除指定的群組並傳回 true
。如果發生錯誤,則會傳回 {error, Reason}
。當呼叫 delete_group/2
時,選項 Port
和 Dir
為必填。
-spec delete_group_member(GroupName, UserName, Options) -> true | {error, Reason} when GroupName :: string(), UserName :: string(), Options :: [{port, Port} | {addr, Address} | {dir, Directory} | {authPassword, AuthPassword}], Port :: inet:port_number(), Address :: inet:ip4_address() | inet:ip6_address() | string() | undefined, Directory :: string(), AuthPassword :: string(), Reason :: term().
-spec delete_group_member(GroupName, UserName, Port, Directory) -> true | {error, Reason} when GroupName :: string(), UserName :: string(), Port :: inet:port_number(), Directory :: string(), Reason :: term().
-spec delete_group_member(GroupName, UserName, Address, Port, Directory) -> true | {error, Reason} when GroupName :: string(), UserName :: string(), Port :: inet:port_number(), Address :: inet:ip4_address() | inet:ip6_address() | string() | undefined, Directory :: string(), Reason :: term().
delete_group_member/3
、delete_group_member/4
和 delete_group_member/5
各自從群組中刪除使用者。如果群組或使用者不存在,此函式會傳回錯誤,否則傳回 true
。當呼叫 delete_group_member/3
時,選項 Port
和 Dir
為必填。
-spec delete_user(UserName, Options) -> true | {error, Reason} when UserName :: string(), Options :: [{port, Port} | {addr, Address} | {dir, Directory} | {authPassword, AuthPassword}], Port :: inet:port_number(), Address :: inet:ip4_address() | inet:ip6_address() | string() | undefined, Directory :: string(), AuthPassword :: string(), Reason :: term().
等同於 delete_user/4
。
-spec delete_user(UserName, Port, Directory) -> true | {error, Reason} when UserName :: string(), Port :: inet:port_number(), Directory :: string(), Reason :: term().
等同於 delete_user/4
。
-spec delete_user(UserName, Address, Port, Directory) -> true | {error, Reason} when UserName :: string(), Port :: inet:port_number(), Address :: inet:ip4_address() | inet:ip6_address() | string() | undefined, Directory :: string(), Reason :: term().
delete_user/2
、delete_user/3
和 delete_user/4
各自從使用者資料庫中刪除使用者。如果操作成功,此函式會傳回 true
。如果發生錯誤,則會傳回 {error, Reason}
。當呼叫 delete_user/2
時,選項 Port
和 Dir
為必填。
-spec get_user(UserName, Options) -> {ok, User} | {error, Reason} when UserName :: string(), Options :: [{port, Port} | {addr, Address} | {dir, Directory} | {authPassword, AuthPassword}], User :: httpd_user(), Port :: inet:port_number(), Address :: inet:ip4_address() | inet:ip6_address() | string() | undefined, Directory :: string(), AuthPassword :: string(), Reason :: term().
等同於 get_user/4
。
-spec get_user(UserName, Port, Directory) -> {ok, User} | {error, Reason} when UserName :: string(), User :: httpd_user(), Port :: inet:port_number(), Directory :: string(), Reason :: term().
等同於 get_user/4
。
-spec get_user(UserName, Address, Port, Directory) -> {ok, User} | {error, Reason} when UserName :: string(), User :: httpd_user(), Port :: inet:port_number(), Address :: inet:ip4_address() | inet:ip6_address() | string() | undefined, Directory :: string(), Reason :: term().
get_user/2
、get_user/3
和 get_user/4
各自傳回包含特定使用者使用者資料的 httpd_user/0
記錄。如果找不到使用者,則會傳回 {error, Reason}
。當呼叫 get_user/2
時,選項 Port
和 Dir
為必填。
-spec list_group_members(GroupName, Options) -> {ok, Users} | {error, Reason} when GroupName :: string(), Options :: [{port, Port} | {addr, Address} | {dir, Directory} | {authPassword, AuthPassword}], Port :: inet:port_number(), Address :: inet:ip4_address() | inet:ip6_address() | string() | undefined, Directory :: string(), Users :: [httpd_user()], AuthPassword :: string(), Reason :: term().
等同於 list_group_members/4
。
-spec list_group_members(GroupName, Port, Directory) -> {ok, Users} | {error, Reason} when GroupName :: string(), Port :: inet:port_number(), Directory :: string(), Users :: [httpd_user()], Reason :: term().
等同於 list_group_members/4
。
-spec list_group_members(GroupName, Address, Port, Directory) -> {ok, Users} | {error, Reason} when GroupName :: string(), Port :: inet:port_number(), Address :: inet:ip4_address() | inet:ip6_address() | string() | undefined, Directory :: string(), Users :: [httpd_user()], Reason :: term().
list_group_members/2
、list_group_members/3
和 list_group_members/4
各自列出指定群組的成員。如果群組不存在或發生錯誤,則會傳回 {error, Reason}
。當呼叫 list_group_members/2
時,選項 Port
和 Dir
為必填。
-spec list_groups(Options) -> {ok, Groups} | {error, Reason} when Options :: [{port, Port} | {addr, Address} | {dir, Directory} | {authPassword, AuthPassword}], Port :: inet:port_number(), Address :: inet:ip4_address() | inet:ip6_address() | string() | undefined, Directory :: string(), Groups :: [httpd_group()], AuthPassword :: string(), Reason :: term().
等同於 list_groups/3
。
-spec list_groups(Port, Directory) -> {ok, Groups} | {error, Reason} when Port :: inet:port_number(), Directory :: string(), Groups :: [httpd_group()], Reason :: term().
等同於 list_groups/3
。
-spec list_groups(Address, Port, Directory) -> {ok, Groups} | {error, Reason} when Port :: inet:port_number(), Address :: inet:ip4_address() | inet:ip6_address() | string() | undefined, Directory :: string(), Groups :: [httpd_group()], Reason :: term().
list_groups/1
、list_groups/2
和 list_groups/3
各自列出所有可用的群組。如果發生錯誤,則會傳回 {error, Reason}
。當呼叫 list_groups/1
時,選項 Port
和 Dir
為必填。
-spec list_users(Options) -> {ok, Users} | {error, Reason} when Options :: [{port, Port} | {addr, Address} | {dir, Directory} | {authPassword, AuthPassword}], Port :: inet:port_number(), Address :: inet:ip4_address() | inet:ip6_address() | string() | undefined, Directory :: string(), Users :: [httpd_user()], AuthPassword :: string(), Reason :: atom().
等同於 list_users/3
。
-spec list_users(Port, Directory) -> {ok, Users} | {error, Reason} when Port :: inet:port_number(), Directory :: string(), Users :: [httpd_user()], Reason :: atom().
等同於 list_users/3
。
-spec list_users(Address, Port, Directory) -> {ok, Users} | {error, Reason} when Port :: inet:port_number(), Address :: inet:ip4_address() | inet:ip6_address() | string() | undefined, Directory :: string(), Users :: [httpd_user()], Reason :: atom().
list_users/1
、list_users/2
和 list_users/3
各自傳回特定 Port/Dir
的使用者資料庫中的使用者清單。當呼叫 list_users/1
時,選項 Port
和 Dir
為必填。
-spec update_password(Port, Dir, OldPassword, NewPassword, NewPassword) -> ok | {error, Reason} when Port :: inet:port_number(), Dir :: string(), OldPassword :: string(), NewPassword :: string(), Reason :: term().
等同於 update_password/6
。
-spec update_password(Address, Port, Dir, OldPassword, NewPassword, NewPassword) -> ok | {error, Reason} when Address :: inet:ip4_address() | inet:ip6_address() | string() | undefined, Port :: inet:port_number(), Dir :: string(), OldPassword :: string(), NewPassword :: string(), Reason :: term().
update_password/5
和 update_password/6
各自更新指定目錄的 AuthAccessPassword
。如果 NewPassword
等於 "NoPassword",則變更授權資料不需要密碼。如果 NewPassword
等於 "DummyPassword",則必須先變更密碼才能進行任何變更。