專利名稱:對(duì)保護(hù)數(shù)據(jù)的用戶進(jìn)行識(shí)別、認(rèn)證和授權(quán)的方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種對(duì)保護(hù)數(shù)據(jù)的用戶進(jìn)行識(shí)別、認(rèn)證和授權(quán)的方法,尤其是對(duì)自動(dòng)化系統(tǒng)中保護(hù)數(shù)據(jù)的用戶。
背景技術(shù):
在很多技術(shù)領(lǐng)域,尤其是在自動(dòng)化系統(tǒng)中,只能由事先經(jīng)過(guò)識(shí)別、認(rèn)證和授權(quán)的用戶訪問(wèn)存放在保護(hù)區(qū)域內(nèi)的數(shù)據(jù)(例如系統(tǒng)數(shù)據(jù)、程序數(shù)據(jù)、系統(tǒng)函數(shù)或其它受保護(hù)的信息)變得越來(lái)越重要。
用于對(duì)用戶進(jìn)行認(rèn)證的方法現(xiàn)在已廣泛使用。例如借助由用戶在注冊(cè)區(qū)域的輸入字段中輸入的用戶密碼來(lái)進(jìn)行認(rèn)證。如果用戶輸入了有效密碼,則其得到認(rèn)證,并可以訪問(wèn)存放在保護(hù)區(qū)域內(nèi)的信息。為了將密碼從注冊(cè)區(qū)域發(fā)送到保護(hù)區(qū)域,借助相應(yīng)的算法、例如作為MD5公知的加密算法將密碼加密,并作為所謂的訪問(wèn)標(biāo)記發(fā)送到保護(hù)區(qū)域。但借助這種在訪問(wèn)標(biāo)記中發(fā)送和加密的密碼不能或很難識(shí)別用戶,并在必要時(shí)記錄該用戶的訪問(wèn)。因此,通常在保護(hù)區(qū)域很難知道究竟是誰(shuí)訪問(wèn)了存放在保護(hù)區(qū)域內(nèi)的信息和數(shù)據(jù)。
為了也能在保護(hù)區(qū)域中確定誰(shuí)以及必要時(shí)某個(gè)用戶何時(shí)訪問(wèn)了所保護(hù)的數(shù)據(jù),必須有相應(yīng)的識(shí)別該用戶的方法。這樣,例如用戶除了密碼之外還必須在注冊(cè)區(qū)域的輸入字段內(nèi)輸入屬于他的用戶標(biāo)識(shí)。然后,將該用戶標(biāo)識(shí)和密碼與用戶管理數(shù)據(jù)庫(kù)中存儲(chǔ)的用戶標(biāo)識(shí)和密碼的允許組合進(jìn)行比較。如果輸入的用戶標(biāo)識(shí)與存儲(chǔ)的用戶標(biāo)識(shí)一致,則該用戶得到識(shí)別。如果此外輸入的密碼也和一個(gè)存儲(chǔ)的組合一致,則該用戶還得到認(rèn)證。接著將用戶標(biāo)識(shí)以及必要時(shí)的加密密碼作為訪問(wèn)標(biāo)記發(fā)送到保護(hù)區(qū)域。在保護(hù)區(qū)域的數(shù)據(jù)庫(kù)中,為允許的用戶標(biāo)識(shí)和密碼存儲(chǔ)了對(duì)應(yīng)的訪問(wèn)權(quán)限。如果對(duì)發(fā)送的密碼和發(fā)送的用戶標(biāo)識(shí)在數(shù)據(jù)庫(kù)中查找到對(duì)應(yīng)的訪問(wèn)權(quán)限,則用戶可以訪問(wèn)相應(yīng)的保護(hù)數(shù)據(jù)和信息。同時(shí)還借助發(fā)送的用戶標(biāo)識(shí)在保護(hù)區(qū)域中記錄所發(fā)生的訪問(wèn)。
如果保護(hù)的是自動(dòng)化系統(tǒng)中的現(xiàn)有數(shù)據(jù),如系統(tǒng)數(shù)據(jù)、系統(tǒng)函數(shù)或其他重要信息,則在此還必須有相應(yīng)的能夠?qū)τ脩糇R(shí)別和授權(quán)的方法。如果在自動(dòng)化系統(tǒng)中采用前面所描述的只借助加密的密碼進(jìn)行認(rèn)證的方法,則不能在保護(hù)區(qū)域中記錄誰(shuí)訪問(wèn)了該保護(hù)區(qū)域。如果采用上述借助密碼和用戶標(biāo)記進(jìn)行識(shí)別的方法,則由于為此所需的用戶管理數(shù)據(jù)庫(kù)而在注冊(cè)區(qū)域和保護(hù)區(qū)域中引起較高的管理費(fèi)用。如果正好要從多個(gè)用戶區(qū)域訪問(wèn)自動(dòng)化系統(tǒng)的一個(gè)或多個(gè)保護(hù)區(qū)域,則該方法需要較高的花費(fèi),以利用包含在用戶管理數(shù)據(jù)庫(kù)中的用戶標(biāo)識(shí)、密碼以及這兩者的組合來(lái)管理用戶區(qū)域和不同的保護(hù)區(qū)域中的現(xiàn)有用戶管理數(shù)據(jù)庫(kù)。
如果除了識(shí)別和認(rèn)證自動(dòng)化系統(tǒng)的用戶之外還需要對(duì)該用戶進(jìn)行授權(quán),則必須在保護(hù)區(qū)域中相應(yīng)地?cái)U(kuò)展用戶管理數(shù)據(jù)庫(kù)。這樣,在用戶管理數(shù)據(jù)庫(kù)中另外存儲(chǔ)哪個(gè)用戶具有哪個(gè)用戶標(biāo)識(shí)和哪個(gè)密碼可以訪問(wèn)哪些保護(hù)信息或數(shù)據(jù)的關(guān)系。尤其是,如果在自動(dòng)化系統(tǒng)中具有多個(gè)不同的保護(hù)區(qū)域,則必須相應(yīng)費(fèi)事地為不同區(qū)域的所有用戶管理數(shù)據(jù)庫(kù)管理這些訪問(wèn)權(quán)限,這意味著較多的附加費(fèi)用。
發(fā)明內(nèi)容
因此,本發(fā)明要解決的技術(shù)問(wèn)題在于提供一種對(duì)保護(hù)數(shù)據(jù)的用戶進(jìn)行識(shí)別、認(rèn)證和授權(quán)的方法,該方法尤其是為自動(dòng)化系統(tǒng)避免了上述高管理費(fèi)用的缺點(diǎn)。
該技術(shù)問(wèn)題是通過(guò)具有下述特征的方法解決的,為了對(duì)保護(hù)數(shù)據(jù)的用戶、尤其是自動(dòng)化系統(tǒng)中的保護(hù)數(shù)據(jù)的用戶進(jìn)行識(shí)別、認(rèn)證和授權(quán),-通過(guò)用戶在注冊(cè)區(qū)域的輸入字段中輸入的用戶標(biāo)識(shí)來(lái)識(shí)別用戶,-將輸入的用戶標(biāo)識(shí)和由該用戶輸入的密碼進(jìn)行組合,并用單向加密函數(shù)轉(zhuǎn)換為認(rèn)證該用戶的系統(tǒng)標(biāo)識(shí),-至少將該系統(tǒng)標(biāo)識(shí)以訪問(wèn)標(biāo)記的形式從注冊(cè)區(qū)域傳輸?shù)奖Wo(hù)區(qū)域,和-通過(guò)該傳輸?shù)脑L問(wèn)標(biāo)記授權(quán)該用戶訪問(wèn)保護(hù)區(qū)域內(nèi)的保護(hù)數(shù)據(jù)。
由于根據(jù)本發(fā)明用單向加密函數(shù)將密碼和用戶標(biāo)識(shí)一起轉(zhuǎn)換為一個(gè)共同的系統(tǒng)標(biāo)識(shí),因此基于在該系統(tǒng)標(biāo)識(shí)中包含的密碼和用戶標(biāo)識(shí)為每個(gè)用戶只分配了一個(gè)系統(tǒng)標(biāo)識(shí)。因此,該系統(tǒng)標(biāo)識(shí)可以在注冊(cè)區(qū)域中用于唯一地識(shí)別和認(rèn)證該用戶。此外,還可以在保護(hù)區(qū)域中,借助以訪問(wèn)標(biāo)記形式發(fā)送的系統(tǒng)標(biāo)識(shí)授權(quán)用戶訪問(wèn)特定的保護(hù)數(shù)據(jù)和保護(hù)信息。由于該訪問(wèn)權(quán)限同時(shí)還反映了先前認(rèn)證的用戶的身份,因此在根據(jù)本發(fā)明的方法中,無(wú)需很多的管理費(fèi)用就能識(shí)別、認(rèn)證和授權(quán)用戶。尤其是在具有不同保護(hù)區(qū)域的自動(dòng)化系統(tǒng)中,例如不同的控制器;或者還具有多個(gè)注冊(cè)區(qū)域,例如不同的人機(jī)界面,不再需要費(fèi)事地管理用戶數(shù)據(jù),如密碼、用戶標(biāo)識(shí)以及這兩者的關(guān)系。由此,尤其是在自動(dòng)化系統(tǒng)中,可以避免為實(shí)現(xiàn)這種用于識(shí)別、認(rèn)證和授權(quán)的安全功能而需要的規(guī)劃費(fèi)用。
雖然本發(fā)明限制為單向加密函數(shù),但本發(fā)明還包括其它各種能唯一和不反向計(jì)算地將用戶標(biāo)識(shí)和密碼轉(zhuǎn)換為系統(tǒng)標(biāo)識(shí)的函數(shù)。
下面借助附圖詳細(xì)描述本發(fā)明的方法。
圖1示意性示出本發(fā)明所需的注冊(cè)區(qū)域和保護(hù)區(qū)域之間的區(qū)分。
具體實(shí)施例方式
圖1具有兩個(gè)區(qū)域,即注冊(cè)區(qū)域和保護(hù)區(qū)域。注冊(cè)區(qū)域應(yīng)當(dāng)包括尤其是輸入密碼和用戶標(biāo)識(shí)的所有必要措施和步驟。通常,該注冊(cè)區(qū)域捆綁在所謂的人機(jī)界面中,在該人機(jī)界面中例如顯示自動(dòng)化系統(tǒng)的用戶區(qū)域。相反,保護(hù)區(qū)域應(yīng)當(dāng)包括所有尤其是在自動(dòng)化系統(tǒng)中以特殊方式保護(hù)的數(shù)據(jù)和函數(shù)。這樣,在保護(hù)區(qū)域中尤其是有自動(dòng)化系統(tǒng)中要保護(hù)的數(shù)據(jù),如系統(tǒng)數(shù)據(jù)、程序數(shù)據(jù)、對(duì)象、系統(tǒng)函數(shù)或其它重要信息。圖1在此只示意性地示出本發(fā)明所需的注冊(cè)區(qū)域和保護(hù)區(qū)域之間的區(qū)分。但尤其是在自動(dòng)化系統(tǒng)中,這種區(qū)分并不總是可唯一識(shí)別的。這樣,保護(hù)區(qū)域可以例如包括一個(gè)或多個(gè)以硬件方式存在的自動(dòng)化系統(tǒng)組件,例如一個(gè)或多個(gè)控制器。另一方面,保護(hù)區(qū)域還可以包括一個(gè)可從維護(hù)計(jì)算機(jī)上下載的軟件模決,該軟件模塊包含要保護(hù)的信息,例如自動(dòng)化系統(tǒng)的控制數(shù)據(jù)。在這種情況下,在維護(hù)計(jì)算機(jī)上同時(shí)具有注冊(cè)區(qū)域和保護(hù)區(qū)域。另一方面,還可以由多個(gè)來(lái)自注冊(cè)區(qū)域的不同人機(jī)界面進(jìn)行調(diào)用。
圖1所示的注冊(cè)區(qū)域包括輸入字段10,用戶必須在其中輸入密碼PW和用戶標(biāo)識(shí)NAME。密碼PW和用戶標(biāo)識(shí)NAME都已經(jīng)事先為一個(gè)或多個(gè)用戶、或者整個(gè)用戶組a確定了。這樣,每個(gè)可以訪問(wèn)保護(hù)區(qū)域的用戶都對(duì)應(yīng)一個(gè)自己的密碼,例如PW=“pw1”;“pw2”;…,以及一個(gè)自己的用戶標(biāo)識(shí),例如NAME=“姓名1”;“姓名2”;…。另一方面,還可以為一個(gè)用戶組分配一個(gè)共同的密碼,例如PW=“pwG”或一個(gè)共同的用戶標(biāo)識(shí),如NAME=“姓名G”。
如果如圖1所示由用戶例如在輸入字段10中輸入用戶標(biāo)識(shí)NAME=“姓名1”和密碼PW=“pw1”,則借助輸入“姓名1”識(shí)別該用戶。根據(jù)本發(fā)明,也可以借助公知的單向加密函數(shù)20將輸入的用戶標(biāo)識(shí)“姓名1”和輸入的密碼“pw1”一起轉(zhuǎn)換為系統(tǒng)標(biāo)識(shí)token1。用于本發(fā)明的將密碼和用戶標(biāo)識(shí)轉(zhuǎn)換為相應(yīng)系統(tǒng)標(biāo)識(shí)的單向加密函數(shù)例如是公知的密碼學(xué)MD5或HMAC函數(shù)。MD5和HMAC函數(shù)在此都以所謂的RFC(提請(qǐng)?jiān)u論,Request for Comments)來(lái)定義。尤其是用于MD5(消息摘要)算法的RFC1321和用于HMAC(消息認(rèn)證的鍵入雜湊)算法的RFC2104。這樣,在本例中,借助MD5算法將用戶標(biāo)識(shí)“姓名1”和密碼“pw1”轉(zhuǎn)換為系統(tǒng)標(biāo)識(shí)token1。在能閱讀的文本中,借助MD5算法產(chǎn)生的系統(tǒng)標(biāo)識(shí)的外觀例如是token1=7071587f93a00d4b50f724ff683d1fd7。這樣產(chǎn)生的系統(tǒng)標(biāo)識(shí)token1唯一地標(biāo)識(shí)一個(gè)用戶,這意味著,借助該系統(tǒng)標(biāo)識(shí)token1可以唯一地識(shí)別和認(rèn)證具有姓名“姓名1”和密碼“pw1”的用戶。相應(yīng)的可以借助其它系統(tǒng)標(biāo)識(shí)token2、token3、…等識(shí)別和認(rèn)證其它用戶以及整個(gè)用戶組。如果借助輸入的用戶標(biāo)識(shí)識(shí)別用戶或用戶組并且其身份得到認(rèn)證,則為了授權(quán)至少將系統(tǒng)標(biāo)識(shí)token1、token2、token3等作為所謂的訪問(wèn)標(biāo)記30例如以二進(jìn)制數(shù)字串的形式從注冊(cè)區(qū)域發(fā)送到保護(hù)區(qū)域。
在本發(fā)明方法的例子中,將系統(tǒng)標(biāo)識(shí)token1與輸入的用戶標(biāo)識(shí)“姓名1”一起作為訪問(wèn)標(biāo)記30發(fā)送。其中,在訪問(wèn)標(biāo)記30中將輸入的用戶標(biāo)識(shí)“姓名1”作為可閱讀文本接收,而系統(tǒng)標(biāo)識(shí)token1本身不作為可閱讀文本存在于訪問(wèn)標(biāo)記30中。因此,可以將訪問(wèn)標(biāo)記劃分為一個(gè)包括用戶標(biāo)識(shí)NAME的公開(kāi)部分,和一個(gè)包括系統(tǒng)標(biāo)識(shí)MD5(NAME,PW)的秘密部分。然后在保護(hù)區(qū)域中,借助發(fā)送的訪問(wèn)標(biāo)記30和該訪問(wèn)標(biāo)記內(nèi)包含的系統(tǒng)標(biāo)識(shí)token1對(duì)先前已經(jīng)得到識(shí)別和認(rèn)證的用戶授權(quán)。在此,例如將在訪問(wèn)標(biāo)記30中傳輸?shù)南到y(tǒng)標(biāo)識(shí)token1與數(shù)據(jù)庫(kù)40中存儲(chǔ)的系統(tǒng)標(biāo)識(shí)和保護(hù)數(shù)據(jù)之間的對(duì)應(yīng)進(jìn)行比較,其中所述系統(tǒng)標(biāo)識(shí)token1對(duì)應(yīng)于得到認(rèn)證的、具有用戶標(biāo)識(shí)“姓名1”和密碼“pw1”的用戶的身份。如果在數(shù)據(jù)庫(kù)40中對(duì)于該系統(tǒng)標(biāo)識(shí)token1存在一個(gè)相應(yīng)的允許對(duì)應(yīng),則該用戶或用戶組就可以相應(yīng)地獲得對(duì)保護(hù)區(qū)域中相應(yīng)的保護(hù)數(shù)據(jù)(在本例中稱為函數(shù)A)的訪問(wèn)。尤其是,在此對(duì)不同的系統(tǒng)標(biāo)識(shí)可以定義不同的數(shù)據(jù)庫(kù)40中的訪問(wèn)權(quán)限。這樣,在本例中確定了,一個(gè)具有用戶標(biāo)識(shí)“姓名1”和密碼“pw1”的用戶可以訪問(wèn)標(biāo)以函數(shù)A的保護(hù)數(shù)據(jù),具有用戶標(biāo)識(shí)“姓名2”和密碼“pw2”的用戶可以訪問(wèn)標(biāo)以函數(shù)B的保護(hù)數(shù)據(jù)。此外,具有用戶標(biāo)識(shí)“姓名G”和密碼“pwG”的用戶組可以訪問(wèn)標(biāo)以函數(shù)C的保護(hù)數(shù)據(jù)。因此,利用這些(但用戶標(biāo)識(shí)和密碼的其它組合也是可以的),可以最簡(jiǎn)單的方式,無(wú)需很大的管理開(kāi)銷(xiāo)就能對(duì)用戶進(jìn)行識(shí)別、認(rèn)證和授權(quán),并由此使這些用戶能訪問(wèn)保護(hù)數(shù)據(jù)。
優(yōu)選的,還借助包含在訪問(wèn)標(biāo)記30中的用戶名,在訪問(wèn)記錄50中至少記錄下對(duì)保護(hù)數(shù)據(jù)的授權(quán)訪問(wèn)。為此,在每個(gè)發(fā)送的訪問(wèn)標(biāo)記30中,引用作為可閱讀文本存在的用戶標(biāo)識(shí),并將其與授權(quán)的訪問(wèn)權(quán)限一起,必要時(shí)還和時(shí)間戳一起記錄在訪問(wèn)記錄50中。由此,可以至少監(jiān)控已發(fā)生的對(duì)保護(hù)數(shù)據(jù)的授權(quán)訪問(wèn)。
尤其是對(duì)于自動(dòng)化系統(tǒng)中要保護(hù)的數(shù)據(jù),本發(fā)明的方法實(shí)現(xiàn)了用戶數(shù)據(jù)的很少管理費(fèi)用。這樣,通常通過(guò)不同的維護(hù)PC調(diào)用在自動(dòng)化系統(tǒng)的一個(gè)或多個(gè)控制器上存在的數(shù)據(jù)。由于根據(jù)本發(fā)明在注冊(cè)方?jīng)]有以用戶管理數(shù)據(jù)庫(kù)形式存在的開(kāi)銷(xiāo)大的管理,因此尤其可以簡(jiǎn)化自動(dòng)化系統(tǒng)的規(guī)劃,因?yàn)椴槐貙?duì)每個(gè)維護(hù)計(jì)算機(jī)都規(guī)劃一個(gè)這樣的用戶管理數(shù)據(jù)庫(kù)。
權(quán)利要求
1.一種用于對(duì)保護(hù)數(shù)據(jù)的用戶、尤其是自動(dòng)化系統(tǒng)中的保護(hù)數(shù)據(jù)的用戶進(jìn)行識(shí)別、認(rèn)證和授權(quán)的方法,其中-通過(guò)用戶在注冊(cè)區(qū)域的輸入字段(10)中輸入的用戶標(biāo)識(shí)(NAME=“姓名1”;“姓名2”;“姓名G”;...)識(shí)別該用戶,-將輸入的用戶標(biāo)識(shí)(NAME)和由該用戶輸入的密碼(PW=“pw1”;“pw2”;“pwG”;...)進(jìn)行組合,并用單向加密函數(shù)(20)轉(zhuǎn)換為認(rèn)證該用戶的系統(tǒng)標(biāo)識(shí)(token1,token2,token3...),-至少將該系統(tǒng)標(biāo)識(shí)(token1,token2,token3...)以訪問(wèn)標(biāo)記(30)的形式從注冊(cè)區(qū)域傳輸?shù)奖Wo(hù)區(qū)域,和-通過(guò)該傳輸?shù)脑L問(wèn)標(biāo)記(30)授權(quán)該用戶訪問(wèn)保護(hù)區(qū)域內(nèi)的保護(hù)數(shù)據(jù)(函數(shù)A,函數(shù)B,函數(shù)C)。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,在所述訪問(wèn)標(biāo)記(30)中除了所述系統(tǒng)標(biāo)識(shí)(token1,token2,token3...)之外還以可閱讀文本的形式傳輸由用戶輸入的用戶標(biāo)識(shí)(NAME=“姓名1”;“姓名2”;“姓名G”;...),其中至少將每次對(duì)保護(hù)數(shù)據(jù)的授權(quán)訪問(wèn)與所發(fā)送的用戶標(biāo)識(shí)(NAME)一起記錄在訪問(wèn)記錄(50)中。
3.根據(jù)權(quán)利要求1或2所述的方法,其特征在于,通過(guò)將利用所述訪問(wèn)標(biāo)記(30)傳輸?shù)南到y(tǒng)標(biāo)識(shí)(token1,token2,token3...)與數(shù)據(jù)庫(kù)(40)中存儲(chǔ)的保護(hù)數(shù)據(jù)(函數(shù)A,函數(shù)B,函數(shù)C)的訪問(wèn)權(quán)限進(jìn)行比較,對(duì)對(duì)保護(hù)數(shù)據(jù)(函數(shù)A,函數(shù)B,函數(shù)C)的訪問(wèn)進(jìn)行授權(quán)。
全文摘要
本發(fā)明涉及一種對(duì)保護(hù)數(shù)據(jù)的用戶、尤其是自動(dòng)化系統(tǒng)的保護(hù)數(shù)據(jù)的用戶進(jìn)行識(shí)別、認(rèn)證和授權(quán)的方法,其中通過(guò)用戶在注冊(cè)區(qū)域的輸入字段中輸入的用戶標(biāo)識(shí)(NAME=“姓名1”;“姓名2”;“姓名G”;…)識(shí)別該用戶;將輸入的用戶標(biāo)識(shí)(NAME)和由該用戶輸入的密碼(PW=“pw1”;“pw2”;“pwG”;…)組合,并用單向加密函數(shù)轉(zhuǎn)換為認(rèn)證該用戶的系統(tǒng)標(biāo)識(shí)(token1,token2,token3…);至少將系統(tǒng)標(biāo)識(shí)(token1,token2,token3…)以訪問(wèn)標(biāo)記的形式從注冊(cè)區(qū)域發(fā)送到保護(hù)區(qū)域;通過(guò)該發(fā)送的訪問(wèn)標(biāo)記授權(quán)該用戶訪問(wèn)保護(hù)區(qū)域內(nèi)的保護(hù)數(shù)據(jù)(函數(shù)A,函數(shù)B,函數(shù)C)。
文檔編號(hào)G06F21/62GK1612080SQ200410095998
公開(kāi)日2005年5月4日 申請(qǐng)日期2004年10月27日 優(yōu)先權(quán)日2003年10月27日
發(fā)明者哈拉爾德·赫伯思 申請(qǐng)人:西門(mén)子公司