UserHelper

授权帮助程序类,提供静态方法来执行与 Joomla 用户和授权类相关的各种任务。

抽象

此类受 Horde Auth 包的影响,并包含一些方法逻辑。

自从

1.7.0

Joomla CMS

方法

activateUser

激活用户的方法

activateUser( activation) : 
静态
自从

1.7.0

参数

activation

string激活字符串

响应

bool成功时为真

addUserToGroup

将用户添加到组的方法。

addUserToGroup( userId,  groupId) : 
静态
自从

1.7.0

抛出

RuntimeException

参数

userId

int用户的 ID。

groupId

int组的 ID。

响应

bool成功时为真

checkSuperUserInUsers

检查用户 ID 中是否存在超级用户。

checkSuperUserInUsers(mixed||string|int userIds) : 
静态
自从

3.6.5

参数

userIds

array<string|int, mixed>要操作的用户 ID 数组

响应

bool成功时为真,失败时为假

destroyUserSessions

销毁给定用户 ID 的所有活动会话

destroyUserSessions( userId,  keepCurrent = false,  clientId = null) : 
静态
自从

3.9.28

参数

userId

int用户的 ID

keepCurrent

bool保留当前执行用户的会话

clientId

int应用程序客户端 ID

响应

bool

genRandomPassword

生成随机密码

genRandomPassword( length = 8) : 
静态
自从

1.7.0

参数

length

int要生成的密码长度

响应

string随机密码

getProfile

获取用户个人资料信息

getProfile( userId) : 
静态
自从

1.7.0

参数

userId

int用户的 ID。

响应

对象

getShortHashedUserAgent

获取散列用户代理字符串的方法,该字符串不包含浏览器版本。

getShortHashedUserAgent() : 
静态

在频繁的版本更改导致问题时使用。

自从

3.2

响应

string散列用户代理字符串,其中版本被替换为 'abcd'

getUserGroups

获取用户所属组列表的方法。

getUserGroups( userId) : mixed||string|int
静态
自从

1.7.0

参数

userId

int用户的 ID。

响应

array<string|int, mixed>组列表

getUserId

如果用户存在,则返回用户 ID

getUserId( username) : 
静态
自从

1.7.0

参数

username

string要搜索的用户名。

响应

int用户 ID,如果未找到则为 0。

hashPassword

使用当前加密方法散列密码。

hashPassword( password, string|int algorithm = self::HASH_BCRYPT, mixed||string|int options = []) : 
静态
自从

3.2.1

抛出

InvalidArgumentException如果算法不受支持

参数

password

string要加密的明文密码。

algorithm

string|int要使用的散列算法,由 HASH_* 类常量表示,或容器服务 ID。

options

array<string|int, mixed>要使用的算法选项。

响应

string加密后的密码。

removeUserFromGroup

从组中删除用户的方法。

removeUserFromGroup( userId,  groupId) : 
静态
自从

1.7.0

参数

userId

int用户的 ID。

groupId

int组的 ID。

响应

bool成功时为真

setUserGroups

设置用户组的方法。

setUserGroups( userId, mixed||string|int groups) : 
静态
自从

1.7.0

参数

userId

int用户的 ID。

groups

array<string|int, mixed>要将用户放入的组 ID 数组。

响应

bool成功时为真

verifyPassword

使用当前加密方法格式化密码。如果给出了用户 ID,并且散列不符合当前散列算法,它会自动更新散列。

verifyPassword( password,  hash,  userId) : 
静态
自从

3.2.1

参数

password

string要检查的明文密码。

hash

string要验证的散列。

userId

int如果应更新密码散列,则为用户的 ID

响应

bool如果密码和散列匹配,则为真,否则为假

常量

HASH_ARGON2I

定义 Argon2i 密码算法的常量,用于密码散列

注意:PHP 的原生 PASSWORD_ARGON2I 常量不用于 PHP 可能会在没有此常量的情况下编译

'argon2i'
自从

4.0.0

类型

string

HASH_ARGON2I_BC

B/C 常量 PASSWORD_ARGON2I 用于 PHP < 7.4(使用整数)

已弃用

注意:PHP 的原生 PASSWORD_ARGON2I 常量不用于 PHP 可能会在没有此常量的情况下编译

2
自从

4.0.0

已弃用

4.0 将在 6.0 中删除。请使用 UserHelper::HASH_ARGON2I 代替

类型

int

HASH_ARGON2ID

定义 Argon2id 密码算法的常量,用于密码散列

注意:PHP 的原生 PASSWORD_ARGON2ID 常量不用于 PHP 可能会在没有此常量的情况下编译

'argon2id'
自从

4.0.0

类型

string

HASH_ARGON2ID_BC

B/C 常量 PASSWORD_ARGON2ID 用于 PHP < 7.4(使用整数)

已弃用

注意:PHP 的原生 PASSWORD_ARGON2ID 常量不用于 PHP 可能会在没有此常量的情况下编译

3
自从

4.0.0

已弃用

4.0 将在 6.0 中删除。请使用 UserHelper::HASH_ARGON2ID 代替

类型

int

HASH_BCRYPT

定义 BCrypt 密码算法的常量,用于密码散列

'2y'
自从

4.0.0

类型

string

HASH_BCRYPT_BC

B/C 常量 PASSWORD_BCRYPT 用于 PHP < 7.4(使用整数)

已弃用
1
自从

4.0.0

已弃用

4.0 将在 6.0 中删除。请使用 UserHelper::HASH_BCRYPT 代替

类型

int

HASH_MD5

定义 MD5 密码算法的常量,用于密码散列

已弃用
'md5'
自从

4.0.0

已弃用

4.0 将在 6.0 中删除。MD5 散列密码的支持将被删除,请使用任何其他散列方法

类型

string

HASH_PHPASS

定义 PHPass 密码算法的常量,用于密码散列

已弃用
'phpass'
自从

4.0.0

已弃用

4.0 将在 6.0 中删除。PHPass 散列密码的支持将被删除,请使用任何其他散列方法

类型

string

HASH_ALGORITHMS

算法处理程序的映射数组

[self::HASH_ARGON2I => \Joomla\Authentication\Password\Argon2iHandler::class, self::HASH_ARGON2I_BC => \Joomla\Authentication\Password\Argon2iHandler::class, self::HASH_ARGON2ID => \Joomla\Authentication\Password\Argon2idHandler::class, self::HASH_ARGON2ID_BC => \Joomla\Authentication\Password\Argon2idHandler::class, self::HASH_BCRYPT => \Joomla\Authentication\Password\BCryptHandler::class, self::HASH_BCRYPT_BC => \Joomla\Authentication\Password\BCryptHandler::class, self::HASH_MD5 => \Joomla\CMS\Authentication\Password\MD5Handler::class, self::HASH_PHPASS => \Joomla\CMS\Authentication\Password\PHPassHandler::class]
自从

4.0.0

类型

array<string|int, mixed>