Bạn có thể thử đoạn trích sau:
$user = \Drupal::currentUser();
$user_roles = $user->getRoles();
$roles_permissions = user_role_permissions($user_roles);
Điều này sẽ cung cấp cho bạn quyền được nhóm theo vai trò. Nhưng rất có thể bạn muốn chúng trong một mảng.
Vì vậy, bạn có thể sử dụng này
$final_array = array();
foreach ($roles_permissions as $role_key => $permissions) {
foreach ($permissions as $permission) {
$final_array[] = $permission;
}
}
Trong trường hợp bạn muốn tải người dùng khác với người dùng hiện đang đăng nhập, bạn có thể sử dụng
$some_user = \Drupal\user\Entity\User::load(123);
Trong đó 123 là viết tắt của id người dùng. Để biết thêm thông tin:
https://api.drupal.org/api/drupal/core%21lib%21Drupal%21Core%21Entity%21Entity.php/feft/Entity%3A%3Aload/8.2.x
Trân trọng,
Oleg