實際用戶:表示你是誰,誰運行起來,用于標識信息eg:×××,邀請函身份,非會員
創(chuàng)新互聯(lián)建站2013年至今,是專業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項目成都做網(wǎng)站、成都網(wǎng)站建設(shè)、成都外貿(mào)網(wǎng)站建設(shè)網(wǎng)站策劃,項目實施與項目整合能力。我們以讓每一個夢想脫穎而出為使命,1280元邗江做網(wǎng)站,已為上家服務(wù),為邗江各地企業(yè)和個人服務(wù),聯(lián)系電話:028-86922220
有效用戶:對某種資源是否具有某種權(quán)限,進程可能訪問某些資源,普通用戶不忍,身份變更才可訪問資源
例如:在Linux系統(tǒng)下,root用戶或普通用戶都可以使用passwd命令來修改密碼,修改密碼主要通過修改etc文件來實現(xiàn),而shadow文件權(quán)限全空,只有root有權(quán)限修改此文件。故當(dāng)普通用戶執(zhí)行passwd命令時,它的權(quán)限在一瞬間得到提升,運行時以擁有者權(quán)限運行。
//創(chuàng)建文件test.c #include<stdio.h> int main() { printf("hello\n"); return 0; }
在root權(quán)限下,修改test4.c的權(quán)限為066,此時運行test4.c
運行結(jié)果:
現(xiàn)在添加進程實際用戶和有效用戶等信息。
#include<stdio.h> #include<stdlib.h> #include<unistd.h> int main() { printf("hello\n"); pid_t id=fork(); if(id<0) { perror("fork"); exit(1); } else if(id==0) { printf("pid: %d,ppid: %d,uid: %d,euid: %d,gid: %d,egid: %d\n",getpid(),getppid(),getuid(),geteuid(),getgid(),getegid()); } else { printf("pid: %d,ppid: %d,uid: %d,euid: %d,gid: %d,egid: %d\n",getpid(),getppid(),getuid(),geteuid(),getgid(),getegid()); } return 0; }
運行結(jié)果為:
注意:test4一直是000權(quán)限
現(xiàn)在回到普通用戶:運行./test4
現(xiàn)在就要回到root權(quán)限給test4加s權(quán)限啦
輸入chmod u+s test4,只用給可執(zhí)行文件加,再回到普通用戶試試
此時euid變?yōu)?,為root權(quán)限的euid.set設(shè)置完成后,任意一個可運行命令的用戶(設(shè)置SUID位),以該文件擁有者權(quán)限運行-----SUID作用
同理,gid和egid的設(shè)置也一樣。
網(wǎng)站標題:實際用戶和有效用戶的
鏈接地址:http://jinyejixie.com/article32/gpecsc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站制作、App設(shè)計、靜態(tài)網(wǎng)站、網(wǎng)站制作、網(wǎng)站策劃、小程序開發(fā)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)