日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢(xún)
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷(xiāo)解決方案
永遠(yuǎn)不要在代碼中使用“User”這個(gè)詞!

圖片來(lái)自 Pexels

成都創(chuàng)新互聯(lián)公司是一家集網(wǎng)站建設(shè),武城企業(yè)網(wǎng)站建設(shè),武城品牌網(wǎng)站建設(shè),網(wǎng)站定制,武城網(wǎng)站建設(shè)報(bào)價(jià),網(wǎng)絡(luò)營(yíng)銷(xiāo),網(wǎng)絡(luò)優(yōu)化,武城網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強(qiáng)企業(yè)競(jìng)爭(zhēng)力。可充分滿足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時(shí)我們時(shí)刻保持專(zhuān)業(yè)、時(shí)尚、前沿,時(shí)刻以成就客戶(hù)成長(zhǎng)自我,堅(jiān)持不斷學(xué)習(xí)、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實(shí)用型網(wǎng)站。

現(xiàn)在你需要解決這些問(wèn)題,才能讓這個(gè)系統(tǒng)繼續(xù)運(yùn)行下去,你發(fā)現(xiàn)你用在這個(gè)項(xiàng)目上的精力遠(yuǎn)遠(yuǎn)超出了你的預(yù)期,如果一開(kāi)始就用正確的方式來(lái)做,就不會(huì)發(fā)生這樣的事。

今天,我要告訴你的是一個(gè)經(jīng)常犯的錯(cuò)誤,一個(gè)會(huì)給你帶來(lái)無(wú)窮無(wú)盡的問(wèn)題的單詞,那就是“users”。

這個(gè)單詞有兩個(gè)最基本的錯(cuò)誤:

  • 對(duì)你的需求來(lái)說(shuō) “User” 幾乎從來(lái)都不是一個(gè)好的描述。
  • “User” 會(huì)導(dǎo)致一個(gè)基本的設(shè)計(jì)安全缺陷。

“user” 的概念是模糊不清的,使用更精準(zhǔn)的術(shù)語(yǔ)幾乎總是能起到更好的效果。

你沒(méi)有使用者

最開(kāi)始,沒(méi)有任何一個(gè)軟件系統(tǒng)真的有使用者存在。乍一看“user”是一個(gè)好的描述,但是你稍微一想就會(huì)意識(shí)到你的業(yè)務(wù)邏輯實(shí)際上比這要復(fù)雜的多。

我會(huì)使用三個(gè)例子,從一個(gè)極端的情況出發(fā)。

①機(jī)票預(yù)訂系統(tǒng)沒(méi)有“users”

我曾經(jīng)給機(jī)票預(yù)訂系統(tǒng)寫(xiě)過(guò)訪問(wèn)控制邏輯,下面只是一小部分需求:

  • 旅客可以使用預(yù)定記錄碼通過(guò)網(wǎng)站查看預(yù)定信息。
  • 購(gòu)買(mǎi)者可以通過(guò)信用卡號(hào)后四位數(shù)在網(wǎng)站上修改預(yù)訂信息。
  • 旅行社可以查看和修改他們的預(yù)訂。
  • 航空公司的值機(jī)人員可以根據(jù)角色和航空公司來(lái)查看和修改預(yù)訂信息,這需要旅客提供身份信息。

不再一一列舉。一些與人類(lèi)相關(guān)的基本概念是“旅客”,“代理”(網(wǎng)站也可是看作代理)和“購(gòu)買(mǎi)者”。

“user”這個(gè)概念根本沒(méi)用,并且在許多請(qǐng)求中我根本不會(huì)使用這個(gè)單詞,舉個(gè)例子,我們的請(qǐng)求必須包括旅客和代理人的證件,而不是使用者的證件。

②Unix 沒(méi)有 “users”

我們看一個(gè)不太一樣的例子。Unix(這些天被稱(chēng)為 POSIX)有用戶(hù),他們可以登錄并執(zhí)行代碼。這樣看起來(lái)很不錯(cuò)吧?我們深入看一下。

如果我們把所有都當(dāng)作“users”的話,我們將會(huì)有:使用終端或者圖形界面登錄的人。

  • 像郵件或者 web 服務(wù)器這種系統(tǒng)服務(wù)也會(huì)以“users”的身份運(yùn)行,例如 nginx 可以以 httpd 用戶(hù)運(yùn)行。
  • 在服務(wù)器上經(jīng)常會(huì)有多人共享一個(gè)管理員賬號(hào)用來(lái) SSH 登錄(例如,亞馬遜的 Ubuntu 虛擬機(jī)默認(rèn) SSH 賬號(hào)就是‘ubuntu’)。
  • root 身份,和上面其他身份都不同。

上面四個(gè)是幾乎不同的概念,但是在 POSIX 上他們都是 “users”。一會(huì)兒我們就會(huì)看到,把這些概念都稱(chēng)為‘user’會(huì)導(dǎo)致很多安全問(wèn)題。

在操作上,因?yàn)?POSIX 的用戶(hù)模型邊界存在,我們甚至不能找到一種方式說(shuō)“只能讓 Alice 和 Bob 通過(guò)這個(gè)賬號(hào)登錄”。

③SaaS 服務(wù)提供商沒(méi)有 “users”

Jeremy Green 最近就用戶(hù)模型在 SaaS 中的應(yīng)用在推特上發(fā)文,它第一次提醒了我寫(xiě)下這篇文章。

他的基本觀點(diǎn)是 SaaS 服務(wù)幾乎總是:

  • 某個(gè)組織中的一個(gè)人支付服務(wù)費(fèi)用。
  • 一個(gè)或多個(gè)人共同使用這個(gè)服務(wù)。

如果你一開(kāi)始就把這些人作為一個(gè)用戶(hù),你將會(huì)陷入一個(gè)痛苦的世界。你無(wú)法建立團(tuán)隊(duì)模型,你無(wú)法組建同時(shí)為多人支付的模型,然后你就會(huì)開(kāi)始改造你的系統(tǒng)?,F(xiàn)在你在 SaaS 案例中學(xué)到了一課,我們來(lái)看一看你的生活。

但是這只是眾多例子中的一個(gè):“users”的概念太模糊了。如果你開(kāi)始懷疑“user”這個(gè)詞,最終你可能發(fā)現(xiàn)最終你其實(shí)只需要兩個(gè)概念:團(tuán)隊(duì)(用來(lái)組織關(guān)系和支付)和成員(實(shí)際使用服務(wù)的人)。

“Users” 是一個(gè)安全問(wèn)題

“user”這個(gè)單詞不僅是業(yè)務(wù)邏輯的問(wèn)題,它也導(dǎo)致了一系列安全問(wèn)題。

“user” 這個(gè)單詞如此的模糊以至于從根本上將兩個(gè)概念合并了:

  • 一個(gè)人。
  • 他們?cè)谲浖械拇硇浴?/li>

為了說(shuō)明這個(gè)問(wèn)題,假設(shè)你正在訪問(wèn)一個(gè)居心不良的網(wǎng)站,在它服務(wù)器上的圖片導(dǎo)致了你的瀏覽器內(nèi)存溢出。

遠(yuǎn)程網(wǎng)站控制著你的瀏覽器,并且開(kāi)始將你的文件上傳到他的服務(wù)上。為什么它能這樣做?

因?yàn)闉g覽器是以系統(tǒng)用戶(hù)的身份運(yùn)行的,它被認(rèn)為與人類(lèi)身份的你相同,實(shí)際上你們是不同的。

你作為’user’,不想上傳文件。但是系統(tǒng)的賬號(hào)也是‘user’,能夠上傳文件,如果瀏覽器運(yùn)行在你的賬號(hào)之下,他所有的行為會(huì)被當(dāng)作是你的意圖,也就是說(shuō)是你讓它這么做的,實(shí)際上不是。

這就是被稱(chēng)為 Confused Deputy 的問(wèn)題。如果你使用“用戶(hù)”這個(gè)詞來(lái)描述兩個(gè)根本不同的東西,那么這個(gè)問(wèn)題就更有可能成為你設(shè)計(jì)的一部分。

前期設(shè)計(jì)的價(jià)值

花更少的功夫處理相同的問(wèn)題是成為高產(chǎn)程序員的關(guān)鍵。使用模糊不清的概念比如“用戶(hù)”來(lái)組織你的軟件,將會(huì)話費(fèi)大量時(shí)間和精力來(lái)解決未來(lái)發(fā)生的問(wèn)題。一上來(lái)就開(kāi)始編碼看起來(lái)是高產(chǎn)的,事實(shí)恰好相反。

下次你開(kāi)始一個(gè)新的軟件項(xiàng)目時(shí),花幾個(gè)小時(shí)預(yù)先確定你的術(shù)語(yǔ)和概念:你仍然不會(huì)完全正確,但你會(huì)做得更好。未來(lái)的你將感謝你所做的所有預(yù)防浪費(fèi)的工作。

作者:有馬·譯

編輯:陶家龍

出處:http://suo.im/4umFxa


網(wǎng)站標(biāo)題:永遠(yuǎn)不要在代碼中使用“User”這個(gè)詞!
網(wǎng)頁(yè)鏈接:http://www.5511xx.com/article/ccchhip.html