嗨,我无法弄清楚如何使用java 7 nio库在Linux操作系统下验证用户是否属于一个或多个组。
有人可以帮我解决这个问题吗?
您可以尝试读取文件/etc/group
。
我开发了一个类来轻松查询此文件:
public class UserInfo {
public UserInfo() throws FileNotFoundException, IOException {
this.group2users = new HashMap<>();
FileReader fileReader = new FileReader(groupsFilePath);
BufferedReader groupsReader = new BufferedReader(fileReader);
while(groupsReader.ready())
{
try
{
String line = groupsReader.readLine();
String [] tokens = line.split(":");
String groupName = tokens[0];
Set<String> users = group2users.get(groupName);
if(users == null)
{
users = new HashSet<String>();
group2users.put(groupName, users);
}
if(tokens.length>3)
{
for(String uStr: tokens[3].split(","))
users.add(uStr);
}
} catch (Exception e) { continue; }
}
groupsReader.close();
fileReader.close();
}
public boolean belongs2group(String user, String group)
{
Set<String> groupRef = group2users.get(group);
if(groupRef == null) return false;
return groupRef.contains(user);
}
private String groupsFilePath = "/etc/group";
private Map<String, Set<String>> group2users;
}
此代码映射/etc/group
文件并保留其用户设置的组映射。我仅开发了一种查询方法(belongs2group
),但是添加方法以列出所有组和/或所有用户非常容易。
这段代码是使用老式主流java io-api编写的,但我认为它可以轻松地适应nio。让我知道您是否需要我完成此步骤。
所以,我正在尝试检查用户是否在某个消息中被@过。这就是我目前拥有的: (它包装在客户端中。当检测到消息发送时) 我在这里做错了什么?
我尝试使用GitHub API和endpoint检索GitHub用户的成员身份详细信息。 我是多个组织的成员,但我得到的回应是: 所以没有为我的用户显示会员信息。我有一个范围为的访问令牌。我错过什么了吗?我在官方API文档https://developer.github.com/v3/orgs/members/#list-your-organization-memberships中也找不到任何相关
主要内容:Linux用户和组的关系Linux 是多用户多任务操作系统,换句话说,Linux 系统支持多个用户在同一时间内登陆,不同用户可以执行不同的任务,并且互不影响。 例如,某台 Linux 服务器上有 4 个用户,分别是 root、www、ftp 和 mysql,在同一时间内,root 用户可能在查看系统日志、管理维护系统;www 用户可能在修改自己的网页程序;ftp 用户可能在上传软件到服务器;mysql 用户可能在执行自己
问题内容: 这个问题是我先前的问题的后续。我需要检索复杂类的列表。 我需要找到一个特定组的学生列表,这些学生位于特定的位置,其电话号码位于其地址中。我还需要显示每个学生到特定坐标的距离。 下面的代码工作正常,唯一的问题是我无法检索对象列表,例如电子邮件列表,组列表和每个学生的电话列表。 问题答案: hibernate的默认类不会传输嵌套对象,如果您遇到性能问题,应尝试以下代码。 看看这个链接和这一
有什么办法可以让我在Protege做到这一点吗?如果这在Protege是不可能的,有没有替代方案?
问题内容: 我一直在忙于在GlassFish 3.1上设置身份验证,尤其是JDBC领域。我一直在假设以下条件下进行操作: “用户”表包含登录名(“电子邮件地址”)和密码(“密码”) “组”表包含组名称(“名称”)的列表 “ User_Group”表匹配用户和组。 但是,我无法在任何地方配置“ User_Group”表,因此我想知道服务器如何将用户按组进行匹配。不用说它没有用。但仔细检查后发现: “