和程序员打交道的过程里,完全不懂技术名词完全白痴的我,也慢慢熟悉了一些概念。因为,开发时,他们和你讨论需求时,有时会问你。很多之前,作为外行,从来没有考虑过的概念和问题,慢慢就听说了一些了。
有些时候,我会因为不懂技术,用极其外行朴素的思维方式按自己的理解,去想象技术,有时就会有些东西在想象里想不出来,受到限制,觉得困难。
虽然,一直都有人和我说,你不需要考虑技术问题,你只需要考虑运营,考虑需求。
你提出需求,其他的,技术人员就会解决的。可过去,太多的事实给我的教训是,这句话非常非常错误。作为一个项目的发起人,你没有一些基本的常识,会经常遇到的问题是,你对一些需求可能都提的是表面化的,形象化,界面化,碎片化的。
你对技术人员不太强调那些数据,那些商业逻辑,那些背后的结构。你以为背后结构上,实现的是你以为以后可以扩展的东西。而实际上,那些不是深度挖掘用户需求的一般技术人员已经把你的这种表面需求,作为技术开发需求了。
还有会经常遇到的问题是,和你一起工作的程序员们,不可能样样都熟悉,也有很多知识结构上的短板和一些能力限制,如果,你没有一些基本的常识,可能会遇到开发人员说,这个问题,没办法解决,甚至要求砍掉需求。
开发人员可能遇到的问题,你也不能及时提醒。因为,人少,有时这样的彼此提醒,是很重要的。
所以,自己一定要尽量多学习。这样的学习,对我这样的技术纯白痴来说,有时很痛苦。但我认为,这个学习,其实有时不是要自己真正学会写程序,要理解那么准确,能看懂大致的描述性文字,有个直观感性的感觉,对一些东西的判断有个结论,就可以了。具体的,可以推荐技术人员自己看。
之前,很长一段时间,完全是自己在网上搜索,现在,慢慢认识的那些做技术的朋友们,又给了我一个解惑的渠道,比很多时候,盲目地搜索,甚至不知道如何搜索到答案要好多了。
今天,那个答应帮我试着做一小块功能的哥们问了我一个问题,他说,你这个系统,角色很少吧?
我愣了一下,然后,我们就聊了一下用户,角色,权限的问题。回头我又在网上搜索了一下。
最后,关于这个问题,我得出的感性结论是:
用户,如果网站内容,可以给所有人浏览,那么是可以有注册,不注册的用户。如果不登录,就不能看到全部内容的,就只有注册用户。只能看到部分内容的,应该也是注册了才算真正用户?或者说,这时,是非注册用户的部分权限受限?
我关心的,管理员,有删除,禁止发言,去后台操作等等,都属于权限。
一个用户,只能浏览,跟帖另外一个用户的东西,不能编辑删除另外一个用户的东西,也属于权限。
我说那什么是角色? 他说,这个应该更多是OA里面的,。我后来想了想,大约那意思是,你是一个领导,他是采购,他是销售,领导部门,采购部门,销售部门,就是不同的角色。这各个部门,就是角色。这个角色里,可以有多个用户。某个用户被删除了,或者多了用户,也不影响这个角色的存在。我想,我想做的东西里,是不是管理员,和普通用户,就是2类不同的角色? 其他的不同的角色我也还没想出来。
不过,我希望的是,这个管理员,能有多个不同权限的,除了系统管理员外,还有一些能有编辑管理某部分内容的管理员。系统管理员,不参与前台的编辑,不能有直接用户身份,但那些负责部分编辑内容的,自己可能就直接是用户的一员,就如论坛的斑竹。或者,比如有些页面,有推荐的内容,是由这些内容管理员选出来的优质内容,他们有操作置顶他们放在某些地方的权限。或者,这也是不同的角色?或者是不同的权限?
不过,关于这一点,我个人喜欢的平等自由公开的那种精神,其实,在内容上,我是觉得最好不用人为干预,按先后顺序排,按点击多少,回复多少排。。。剩下的,由用户主动搜索决定。
但又觉得,有时一个网站的气质,决定于它的优质部分的内容,决定于它被显现的优质内容,如果,没有一个引导,可能会由于一些差劣内容的显示,而驱赶了优质用户。
总之,这个要再想想。毕竟,网站优质气质的体现是有很多种办法的。不一定要明显的人为的人工干预。比如,知乎的限制注册,虽然,不适合我想做的网站使用,但也说明了这一点。
最近看到的一个朋友推荐的一个旅行网站,用起来实际体验其实非常差,完全不实用,明显不是真正琢磨了产品的人做的东西,可是界面非常干净,整洁,很多帖子的内容,图片也都非常好,正常有这样内容的用户,应该是不太会用这么难用的网站,明显是网站本身工作人员的作为。
具体到自己想做的事情来说,我在吸引最初的一定数量的优质用户,应该相对有优势一点。关键就是吸引了人来后,要有好产品,人家就不会走。这样一批优质用户,也是种子用户,就足够能不断产生优质内容,应该不太需要过多人工干预。不过,这都只是预计,一切,要等产品出来了才能知道。
回头继续说角色问题,他又说,那些比如一些网站,你是黄金会员,就能有什么权利,普通会员就没有,这个也是角色。这个。。。我没听太明白,我问,那是不是有些论坛,根据积分,有不同的上传照片,下载软件的权利,这属于角色?他说不是,这个是权限。我有些糊涂。我也觉得,这个属于积分系统对不同用户的权限分配,可是,不同角色,不也是有不同权限吗?他们不就是因为权限不同才有区别?积分系统,或者以后可能的鼓励系统,我还是想过的,只是现在没有想。
算了,先不要那么复杂了。目前,这真的还不是我觉得关注的重点,难点。要迅速解决最核心的部分才是。
我得承认,我好像还就是仅仅从自己是个普通用户身份在想,根本没过多想这个问题。只是因为做过一个小论坛管理员,进过后台,有过一些后台的权限,所以,就会在现在做的时候,想起来这个。不然,我连后台还有个可以比较清楚地管理的界面,有一些常规的项目,能很简单管理都不知道。还一直琢磨,那要是改一点东西都得技术人员去改数据库,那维护,得多麻烦啊。
刚刚看了一篇文章,讲角色,用户,权限的,虽然标题写着oracle的,也觉得好像略又所悟。http://www.cnblogs.com/yuepeng/archive/2011/03/18/1984015.html
一、用户
创建用户的语句
create user 用户名
identified by 密码(不要加引号)
default tablespace 默认表空间名 quota 5M on 默认表空间名
[temporary tablespace 临时表空间名]
[profile 配置文件名] //配置文件
[default role 角色名] //默认角色
[password expire] //密码失效
[account lock] //账号锁定
修改用户
alter user 用户名 identified by 密码 quota 10M on 表空间名
alter user 用户名 account lock/unlock
删除用户
drop user 用户名 [cascade].如果要删除的用户中有模式对象,必须使用cascade.
二、概要文件
资源限制参数:对CPU时间,逻辑读,用户并发会话数,空闲时间,连接时间等数据库和系统资源进行限制。资源参数的值可以是整数,也可以是default或者unlimited。会话级限制是对用户在一个会话过程中所能使用的资源进行限制,调用级限制是对一条SQL语句在执行过程中所能使用的资源进行限制。
资源限制参数有以下几个:sessions_per_user,cpu_per_session/call, lagical_reads_per_session/call, connect_time, idle_time(会话的空闲时间), composite_limit,private_sga。
口令管理策略参数包括:failed_Login_attempts,password_lock_time, password_life_time, password_grace_time,password_reuse_time, password_reuse_max,password_verify_function.
在数据库启动之前,可以通过设置resource limit来决定资源限制的状态。默认是false,不启用。在数据库启动后,可以使用alter system来改变资源限制的状态。alter system set resource limit = true/false.
创建概要文件,可以使用create profile profilename limit [parameters]的语句。
修改概要文件,可以使用alter profile profilename limit [parameters]
删除概要文件,drop profile profilename [cascade 如果已经分配给某个用户]
下面的视图是数据库用户和配置文件信息:
DBA_USERS 所有用户,
all_users 当前用户能看到的所有用户,
user_users 描述当前用户,
dba_ts_quotas 描述用户的表空间限额,
user_ts_quotas 描述具体用户的表空间限额,
user_password_limits 当前用户的口令概要文件参数,
user_resource_limits 当前用户的资源限制,
DBA_profiles 所有的概要文件及其限制,
resource_cost 每个资源的开销,
V_$session 每个当前会话的会话信息,
v_$sesstat 用户会话的统计数据,
v_$_statname, proxy_users可以呈现其他身份的用户.
三、权限
系统权限是执行一种特殊动作或在对象类型上执行一种特殊动作的权利。这些权限可以授权给用户或者角色,不过一般只授予管理人员和应用开发人员,终端用户不需要这些相关功能。获得授权的用户可以将该权限授予其他用户或者角色,也可以从被授权的用户或者角色收回系统权限(不管是不是自己授权的,都可以收回)。
对象权限是指在指定的表、视图、序列、过程、函数或者包上执行特殊动作的权力。对于不同类型的对象,有不同的对象权限。像聚集,索引,触发器,数据库链等没有相关的对象权限,它们由系统权限控制。模式的所有者对模式中的对象具有全部对象权限。这些对象的所有者可将这些对象上的任何对象权限授予其他用户。被授权的那些用户可以将获得的权限继续授权给其他人。
四、角色
角色是相关权限的命名组,可以授权给用户或者角色,但不能出现循环授权
任何角色都可授权给任何数据库用户
一个角色可以被授予系统权限,或者对象权限
角色不包含在任何模式中,所以建立角色的用户被删除后,角色不会受到影响
创建角色的语句是 create role 角色名
grant {select on tablename} to rolename为该角色授予一些对象权限和系统权限。角色也需要认证,不过创建角色时默认是不认证的。可以用identified by子句来加上认证
oracle事先定义了五个角色。conncet具有创建表、视图、序列等权限。resource具有创建过程,触发器,表,序列等权限,dba具有全部系统权限,exp_full_database和mp_full_database具有卸出与装入数据库的权限。可以查询sys_dbs,sys_privs可以了解各种角色拥有的权限。
下面是数据库中有关权限和角色的视图:
dba col privs 描述db中所有列对象的授权,就是具体到某个字段的那些授权
all col privs 描述当前用户或者具有public权限用户的所有列对象授权
user col privs 描述列对象权限,这些权限的授予者或者被授予者,是当前用户。
all col privs made 描述列对象权限,这些权限的所有者或者授予者是当前用户
user col privs made 描述列对象权限,这些权限的授予者是当前用户,
all col privs recd 描述列对象权限,这些权限的被授予者是当前用户或者public
user col privs recd 描述列对象权限,这些权限的被授予者是当前用户
dba tab privs 数据库中所有表的授权
all tab privs 描述表权限,这些权限的授予者是当前用户或者public
user tab privs 列出当前用户是其被授予者所有对象的授权
all tab privs made 描述当前用户所做的,或者在当前用户所拥有的对象上的对象授权
user tab privs made 列出在当前用户所拥有的所有对象上的授权
all tab privs recd 描述对象授权,这些授权的被授予者是当前用户或者public
user tab privs recd 描述对象授权,这些授权的被授予者是当前用户
dba roles 数据库中存在的所有角色 //没有找到这个视图
dba role/sys privs 授予给用户或角色的角色/系统权限
user role/sys privs 授予给当前用户的角色/系统权限
role role privs 授予给其他角色的角色,只是该用户可以访问的角色信息
role sys privs 授予给角色的系统权限的信息,提供的只是该用户可以访问的信息
role tab privs 授予给角色的对象权限的信息,提供的只是该用户可以访问的信息
session privs/roles 用户当前激活的权限和角色
五、角色和权限的操作
授予权限或者角色
grant 系统权限 to 用户名 [with admin option].带上with子句,可以让该用户有权限把系统权限授予其他用户
grant 对象权限/all to 用户名[with grant option].带上with子句,可以让该用户有权限把对象权限授予其他用户
有三类对象权限可以授予表或者视图的字段,分别是insert,update,references。比如grant select, insert(字段名),update(字段名) on 表名 to 用户名 with grant option.
grant 角色名 to 用户名 [with admin/grant option]. 可以把角色授予用户。如果使用了with admin option 子句,该用户可以从任何具有该角色的用户那里收回角色,也可以删除或者修改这个角色。
在同一条grant语句中,可以同时为一个用户授予系统权限和角色,但是不能同时授予对象权限和角色。
收回权限
revoke select, update on 表名 from 用户名
也可以用all 或者all privileges将某个对象所有的对象权限都收回。
激活与禁用角色
当用户连接到数据库时,只有他的默认角色是激活的,可以用 alter user 用户名 default role 角色名 改变默认角色。还可以用set role 激活或禁用自己拥有的角色。
分享到:
相关推荐
“挑战杯”大学生创业计划竞赛作品汇编——电子信息软件类.docx“挑战杯”大学生创业计划竞赛作品汇编——电子信息软件类.docx“挑战杯”大学生创业计划竞赛作品汇编——电子信息软件类.docx“挑战杯”大学生创业...
### 创业者——互联网+、资本+、文化+ 创业箴言 #### 知识点概述 本书《创业者——互联网+、资本+、文化+ 创业箴言》由曹海涛著,旨在为正在创业、准备创业以及未来可能创业的人士提供指导和建议。书中深入探讨了...
论互联网创业公司的发展成长——以互联网金融公司JM 为例.pdf
标题中的“老板创业——从销售起步”点明了创业初期的一个常见路径,即许多企业家是从销售岗位开始他们的商业之旅的。销售是企业运营的核心环节,它不仅关乎产品销售,更涉及市场开发、客户关系管理以及个人能力的...
结果表明,单纯考虑创业次数和细分行业经验并不能准确预测创业成功概率。此外,先前成功的创业者在再次创业时更可能等待较长时间来获得第一笔投资,而先前失败的创业者则往往迅速寻求资金,这暗示了创业历史对创业者...
创业不仅仅是为了经济利益,也包括心理满足、社会交往和应对突发事件。创业可以分为工薪就业和自主创业两种形式,各有其优势和挑战。 工薪就业虽然提供了稳定的收入和福利,但限制了个人的创新能力和自我实现。而...
"重庆大学生创业计划书——火锅店计划书.zip" 这个标题表明这是一个关于重庆大学生开设火锅店的创业计划文档的压缩包。关键词“创业计划书”暗示了文档将涵盖市场调研、商业模式、经营策略、财务预算等多个方面的...
创业资料——创业价值
【高职院校创新创业活动实践探索——以工业机器人专业为例】 在当前国家大力倡导“双创”(创新和创业)教育的背景下,高职院校正积极探索并实践创新创业教育。以工业机器人专业为例,这一领域由于市场需求的旺盛,...
在创业知能讲座中,重点强调了如何做好创业准备。首先,选择正确的行业至关重要。创业者应考虑行业的盈利模式,如 Revenue vs Cost,并关注Customer Lifetime Value(顾客终身价值),确保商品组合能够集中在市场...
创业者的角色至关重要,他们不仅能够创造新的就业机会,还能推动科技进步和社会变革。 【大学生创业】 大学生创业是近年来备受关注的现象。大学生由于具备较高的教育水平、开放的思维和充足的活力,成为创业的一股...
【创业老板成功十要素——有成功意识才有成功能力】 创业是一项充满挑战的旅程,而成功并非单纯依赖于先天的能力。创业者往往需要在实践中磨炼和成长,培养出所需的各种技能。创业成功的关键在于具备获取这些能力的...
创业计划书——米线店
《企业策略创业程序之个案研究——动态能力理论》这篇研究论文主要探讨了动态能力理论在企业策略创业过程中的应用,以及如何通过该理论来理解并优化企业的创新轨迹和竞争优势。文章作者是侯嘉政和白如玲,发表于2007...
“挑战杯”第五届辽宁省大学生创业计划大赛参赛作品——“七彩螺”健康音乐耳机创业计划书
《创业计划书——赢在未来团队》是一份详尽的创业指南,旨在为创业者提供全面而深入的规划策略,帮助他们在充满挑战与机遇的商业环境中赢得未来。这份文档的核心内容涵盖了创业项目的各个方面,包括市场分析、产品或...
【高职创新创业教育改革实践研究——以重庆工商职业学院电子信息工程学院为例】 高职创新创业教育是高等教育领域中的重要组成部分,尤其在当前社会快速发展和就业压力增大的背景下,其意义尤为重要。首先,高职创新...
制度环境对绿色创业的驱动机理研究——以深圳市电动汽车发展为例 本研究基于绿色创业理论,对深圳市电动汽车发展的案例分析,旨在探索制度环境对绿色创业的驱动机理。研究发现,制度环境对绿色创业的驱动机理体现在...
【创业项目实施计划书——农家乐】是一份详细阐述在新闻16-2班级成员钱佳豪、贺正非、熊志豪、陈迪、胡良睿共同参与的农家乐创业方案的文档。农家乐作为新兴的旅游形式,是利用农村乡镇的自然风景资源、田园风光和...
创业计划书——农家乐