当前位置:首页 » 密码管理 » 访问控制的过程

访问控制的过程

发布时间: 2022-09-27 13:44:28

⑴ 简述标准和扩展访问控制列表的工作过程

摘要 标准的访问控制列表在1-99之间

⑵ 访问控制的基本原理和常见模型

访问控制的功能及原理:
访问控制的主要功能包括:保证合法用户访问受权保护的网络资源,防止非法的主体进入受保护的网络资源,或防止合法用户对受保护的网络资源进行非授权的访问。访问控制首先需要对用户身份的合法性进行验证,同时利用控制策略进行选用和管理工作。当用户身份和访问权限验证之后,还需要对越权操作进行监控。因此,访问控制的内容包括认证、控制策略实现和安全审计。
1、认证。包括主体对客体的识别及客体对主体的检验确认;
2、控制策略。通过合理地设定控制规则集合,确保用户对信息资源在授权范围内的合法使用。既要确保授权用户的合理使用,又要防止非法用户侵权进入系统,使重要信息资源泄露。同时对合法用户,也不能越权行使权限以外的功能及访问范围;
3、安全审计。系统可以自动根据用户的访问权限,对计算机网络环境下的有关活动或行为进行系统的、独立的检查验证,并做出相应评价与审计。
访问控制的模型:
主要的访问控制类型有3种模型:自主访问控制(DAC)、强制访问控制(MAC)和基于角色访问控制(RBAC)。
1、自主访问控制
自主访问控制(Discretionary Access Control,DAC)是一种接入控制服务,通过执行基于系统实体身份及其到系统资源的接入授权。包括在文件,文件夹和共享资源中设置许可。用户有权对自身所创建的文件、数据表等访问对象进行访问,并可将其访问权授予其他用户或收回其访问权限。允许访问对象的属主制定针对该对象访问的控制策略,通常,可通过访问控制列表来限定针对客体可执行的操作。
2、强制访问控制
强制访问控制(MAC)是系统强制主体服从访问控制策略。是由系统对用户所创建的对象,按照规定的规则控制用户权限及操作对象的访问。主要特征是对所有主体及其所控制的进程、文件、段、设备等客体实施强制访问控制。
3、基于角色的访问控制
角色(Role)是一定数量的权限的集合。指完成一项任务必须访问的资源及相应操作权限的集合。角色作为一个用户与权限的代理层,表示为权限和用户的关系,所有的授权应该给予角色而不是直接给用户或用户组。

⑶ ssm框架访问控制应该怎么做

这个就在在人员表了添加一个身份的字段 user_rank ,用这个来控制。用户登录到时候就会用登录信息,把这个 user_rank 字段带出来,在页面或者链接时候加上判断,哈这是简单的,看下官方的。

shiro安全框架是目前为止作为登录注册最常用的框架,因为它十分的强大简单,提供了认证、授权、加密和会话管理等功能 。

shiro能做什么?

认证:验证用户的身份

授权:对用户执行访问控制:判断用户是否被允许做某事

会话管理:在任何环境下使用 Session API,即使没有 Web 或EJB 容器。

加密:以更简洁易用的方式使用加密功能,保护或隐藏数据防止被偷窥

Realms:聚集一个或多个用户安全数据的数据源

单点登录(SSO)功能。

为没有关联到登录的用户启用 "Remember Me“ 服务

Shiro 的四大核心部分

Authentication(身份验证):简称为“登录”,即证明用户是谁。

Authorization(授权):访问控制的过程,即决定是否有权限去访问受保护的资源。

Session Management(会话管理):管理用户特定的会话,即使在非 Web 或 EJB 应用程序。

Cryptography(加密):通过使用加密算法保持数据安全

shiro的三个核心组件:

Subject:正与系统进行交互的人,或某一个第三方服务。所有 Subject 实例都被绑定到(且这是必须的)一个SecurityManager 上。

SecurityManager:Shiro 架构的心脏,用来协调内部各安全组件,管理内部组件实例,并通过它来提供安全管理的各种服务。当 Shiro 与一个 Subject 进行交互时,实质上是幕后的 SecurityManager 处理所有繁重的 Subject 安全操作。

Realms:本质上是一个特定安全的 DAO。当配置 Shiro 时,必须指定至少一个 Realm 用来进行身份验证和/或授权。Shiro 提供了多种可用的 Realms 来获取安全相关的数据。如关系数据库(JDBC),INI 及属性文件等。可以定义自己 Realm 实现来代表自定义的数据源。

shiro整合SSM框架:

1.加入 jar 包:以下jar包自行网络下载

准备好了,接下来要写Realm方法了,新建shiro包,在包下新建MyRealm.java文件继承AuthorizingRealm

package shiro;import org.apache.shiro.authc.AuthenticationException;import org.apache.shiro.authc.AuthenticationInfo;import org.apache.shiro.authc.AuthenticationToken;import org.apache.shiro.authc.SimpleAuthenticationInfo;import org.apache.shiro.authc.credential.HashedCredentialsMatcher;import org.apache.shiro.authz.AuthorizationInfo;import org.apache.shiro.authz.SimpleAuthorizationInfo;import org.apache.shiro.crypto.hash.Md5Hash;import org.apache.shiro.crypto.hash.SimpleHash;import org.apache.shiro.realm.AuthorizingRealm;import org.apache.shiro.subject.PrincipalCollection;import org.apache.shiro.util.ByteSource;import org.springframework.beans.factory.annotation.Autowired;import bean.user;import .user;public class MyRealm extends AuthorizingRealm {
@Autowired private user user;
String pass; /**
* 授权:
*
*/
@Override protected AuthorizationInfo doGetAuthorizationInfo(PrincipalCollection principalCollection) {
SimpleAuthorizationInfo info = new SimpleAuthorizationInfo();
Object principal = principalCollection.getPrimaryPrincipal();//获取登录的用户名
if("admin".equals(principal)){ //两个if根据判断赋予登录用户权限
info.addRole("admin");
} if("user".equals(principal)){
info.addRole("list");
}

info.addRole("user");
return info;
} /*
* 用户验证
*
*/
@Override protected AuthenticationInfo doGetAuthenticationInfo(AuthenticationToken token) throws AuthenticationException {
//1. token 中获取登录的 username! 注意不需要获取password.
Object principal = token.getPrincipal();
//2. 利用 username 查询数据库得到用户的信息.
user user=user.findbyname((String) principal); if(user!=null){
pass=user.getPass();
}
String credentials = pass; //3.设置盐值 ,(加密的调料,让加密出来的东西更具安全性,一般是通过数据库查询出来的。 简单的说,就是把密码根据特定的东西而进行动态加密,如果别人不知道你的盐值,就解不出你的密码)
String source = "abcdefg";
ByteSource credentialsSalt = new Md5Hash(source);

//当前 Realm 的name
String realmName = getName(); //返回值实例化
SimpleAuthenticationInfo info =
new SimpleAuthenticationInfo(principal, credentials,
credentialsSalt, realmName);
return info;
} //init-method 配置.
public void setCredentialMatcher(){
HashedCredentialsMatcher credentialsMatcher = new HashedCredentialsMatcher();
credentialsMatcher.setHashAlgorithmName("MD5");//MD5算法加密
credentialsMatcher.setHashIterations(1024);//1024次循环加密
setCredentialsMatcher(credentialsMatcher);
}

//用来测试的算出密码password盐值加密后的结果,下面方法用于新增用户添加到数据库操作的,我这里就直接用main获得,直接数据库添加了,省时间
public static void main(String[] args) {
String saltSource = "abcdef";
String hashAlgorithmName = "MD5";
String credentials = "passwor";
Object salt = new Md5Hash(saltSource); int hashIterations = 1024;
Object result = new SimpleHash(hashAlgorithmName, credentials, salt, hashIterations);
System.out.println(result);
}

}

好了,接下来我们写一个简单的action来通过shiro登录验证。

//登录认证
@RequestMapping("/shiro-login") public String login(@RequestParam("username") String username,
@RequestParam("password") String password){
Subject subject = SecurityUtils.getSubject();
UsernamePasswordToken token = new UsernamePasswordToken(username, password);
try { //执行认证操作. subject.login(token);
}catch (AuthenticationException ae) {
System.out.println("登陆失败: " + ae.getMessage()); return "/index";
}
return "/shiro-success";
}

//温馨提示:记得在注册中密码存入数据库前也记得加密哦,提供一个utils方法//进行shiro加密,返回加密后的结果public static String md5(String pass){
String saltSource = "blog";
String hashAlgorithmName = "MD5";
Object salt = new Md5Hash(saltSource);int hashIterations = 1024;
Object result = new SimpleHash(hashAlgorithmName, pass, salt, hashIterations);
String password = result.toString();return password;
}

好了,shiro登录验证到这里完了

⑷ Windows访问控制过程 是怎么样的

是访问控制项+访问控制表,有点像路由器或防火墙的ACL语句,输入要受限制的帐户,然后在下面选择权限,权限有完全控制-修改-只读等等不过硬盘要NTFS格式才行,FAT没有这功能,在linux只有RWX这三种权限,就是文件文件属主,文件属组,也可以用421的形式,不过在win里面,在分区下新建的文件或文件夹会继承上一级的权限,还有一点那就是文件所有权具体的可在网络搜一下大把文章

⑸ 局域网的访问控制有哪几种,分别适用于哪些网络

1、冲突检测的载波侦听多路访问法:适用于所有局域网。

2、令牌环访问控制法:只适用于环形拓扑结构的局域网。

3、令牌总线访问控制法:主要用于总线形或树形网络结构中。


(5)访问控制的过程扩展阅读

令牌总线访问控制方式类似于令牌环,但把总线形或树形网络中的各个工作站按一定顺序如按接口地址大小排列形成一个逻辑环。只有令牌持有者才能控制总线,才有发送信息的权力。信息是双向传送,每个站都可检测到站点发出的信息。

CSMA/CD要解决的另一主要问题是如何检测冲突。当网络处于空闲的某一瞬间,有两个或两 个以上工作站要同时发送信息,同步发送的信号就会引起冲突。

⑹ 访问控制是指确定什么以及实施访问权限的过程

访问控制是一套身份验证和权限管理机制,用于保证用户是其所声称的身份,以及授予用户访问公司数据的恰当权限。
没有身份验证与授权,就没有数据安全。每一起数据泄露事件中,访问控制总是最先被调查的策略。
无论是敏感数据意外暴露而被终端用户不当获取,还是敏感数据经由公开服务器上软件漏洞而暴露的Equifax数据泄露事件,访问控制都是其中的关键部分。
只要没有恰当实现或维护好访问控制,其结果都有可能是灾难性的。

⑺ 简述标准和扩展访问控制列表的工作过程

咨询记录 · 回答于2021-07-19

⑻ 什么事访问控制访问控制包括哪几个要素

访问控制是几乎所有系统(包括计算机系统和非计算机系统)都需要用到的一种技术。访问控制是按用户身份及其所归属的某项定义组来限制用户对某些信息项的访问,或限制对某些控制功能的使用的一种技术。

访问控制包括服务器、目录、文件等。访问控制是给出一套方法,将系统中的所有功能标识出来,组织起来,托管起来,将所有的数据组织起来标识出来托管起来, 然后提供一个简单的唯一的接口,这个接口的一端是应用系统一端是权限引擎。

(8)访问控制的过程扩展阅读

实现机制:访问控制的实现机制建立访问控制模型和实现访问控制都是抽象和复杂的行为,实现访问的控制不仅要保证授权用户使用的权限与其所拥有的权限对应,制止非授权用户的非授权行为;还要保证敏感信息的交叉感染。

为了便于讨论这一问题,我们以文件的访问控制为例对访问控制的实现做具体说明。通常用户访问信息资源(文件或是数据库),可能的行为有读、写和管理。为方便起见,我们用Read或是R表示读操作,Write或是W表示写操作,Own或是O表示管理操作。

⑼ 如何使用访问控制

操作如下:
首先,启用访问控制。把“打开访问控制”前面的复选框打上钩,点击“应用”。
选择“允许所有新设备连接”,点击“应用”,此时所有新加入的设备连接上无线网络后,可以访问因特网。如需要阻止某些设备访问本地网关与因特网,请在设备清单中选中该设备,然后点击“阻止”按钮,点击“确定”,等待网页刷新完毕,该设备的状态会变成“已阻止”,此时,该设备可以正常连接至无线路由器,但无法访问本地网关,也无法访问因特网,一旦访问本地网关与因特网,网页就会提示“此设备已被路由器访问控制功能阻止”。
如需要阻止某个没有连入网络同时也不在非许可设备清单列表下的设备访问本地网关与因特网,可在“没有连入网络的非许可设备清单”下添加该设备。点击“添加”,把该设备的“MAC地址”与“设备名称”添加到对应的文本框中。

热点内容
手机怎么配置内存大 发布:2025-05-16 15:18:06 浏览:166
xpshop源码 发布:2025-05-16 15:17:25 浏览:403
android弹出通知 发布:2025-05-16 14:59:20 浏览:510
数据库EST 发布:2025-05-16 14:59:15 浏览:197
android版本号修改 发布:2025-05-16 14:53:48 浏览:173
android相机闪光灯 发布:2025-05-16 14:35:49 浏览:259
服务器无法通过ip访问 发布:2025-05-16 14:26:13 浏览:541
网吧u盘拒绝访问 发布:2025-05-16 14:13:50 浏览:260
无线网检查网络配置是怎么回事 发布:2025-05-16 14:04:03 浏览:220
网络爬虫python代码 发布:2025-05-16 14:03:26 浏览:517