• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
  • Lotus Domino/Notes 中的安全技術

    發表于:2007-05-25來源:作者:點擊數: 標簽:
    唉今天晚上收獲不大,先發一片意義不大的文章吧,沒有什么實用價值! Lotus Domino/Notes 中的 安全 技術 作者:馬東輝 發布時間:2001/03/16 文章摘要: Lotus Domino/Notes是一個優秀的群件系統,在辦公自動化領域有著廣泛的應用。本文論述了在Lotus Domino/No

    唉今天晚上收獲不大,先發一片意義不大的文章吧,沒有什么實用價值!

    Lotus Domino/Notes 中的安全技術 作者:馬東輝 發布時間:2001/03/16
    文章摘要:
      Lotus Domino/Notes是一個優秀的群件系統,在辦公自動化領域有著廣泛的應用。本文論述了在Lotus Domino/Notes 中采用的幾種安全技術,諸如:驗證、數字簽名、訪問控制和加密等。
      關鍵詞: Lotus, Notes, Domino,安全,辦公自動化

    1 引言

      Lotus Domino/Notes 是世界主流的企業級通訊、協同計算和Inte.net/Intranet平臺,在辦公自動化系統研究和建設以及企業信息系統集成方面處于領先地位。它之所以在商業辦公領域占據如此重要的地位。除了本身具有完善的工作流控制、強大的數據庫復制技術等因素之外,另一個重要的原因就是它提供了先進可靠的安全機制。在此著重討論一下Lotus Domino/Notes 中所采用的幾種安全技術。

    2 基本的安全概念

      為了更好的說明Notes采用的安全技術的原理,這里先介紹一下基本的安全概念。

    2.1 加密算法
      基本的加密算法有兩種,對稱密鑰加密和非對稱密鑰加密。用于保證通信中數據的保密性、完整性、真實性和非抵賴服務。
      <1> 對稱密鑰加密 在對稱密鑰加密方法中,對信息的加密和解密都使用相同的密鑰。也就是說,一把鑰匙開一把鎖。最著名的對稱密鑰加密算法是數據加密標準(DES)。DES是一種使用56個數據位的密鑰來操作64位數據塊的塊加密算法,可同時對大量數據進行快速加密。
      <2> 非對稱密鑰加密 又叫作公開密鑰加密算法。在非對稱加密體系中,密鑰被分解為一對(即一把公開密鑰或加密密鑰和一把私有密鑰或解密密鑰)。這對密鑰中的任何一把都可作為公開密鑰(加密密鑰)通過非保密方式向他人公開,而另一把則作為私有密鑰(解密密鑰)加以保存。公開密鑰用于對機密性信息的加密,私有密鑰則用于對加密信息的解密。私有密鑰只能由生成密鑰對的用戶掌握,公開密鑰可廣泛發布,但它只對應于生成該密鑰的用戶。公開密鑰加密技術解決了密鑰的發布和管理問題,是目前商業密碼的核心。使用公開密鑰技術,數據通信的雙方可以安全的確認對方的身份和公開密鑰。非對稱密鑰加密算法主要有RSA、PGP等。

    2.2 報文摘要算法
      報文摘要算法(Message Digest Algorithms)即采用單向HASH算法將需要加密的明文進行摘要,而產生具有固定長度的單向散列(HASH)值,其中散列函數是將一個不同長度的報文轉換成一個數字串(即報文摘要)的公式,該函數不需要密鑰,公式決定了報文摘要的長度。報文摘要通常和非對稱密鑰加密一起,提供了數字簽名的方法。MD5算法是一種常用的報文摘要算法,它采用單向Hash函數將需加密的明文"摘要"成一串128bit的密文,這一串密文亦稱為數字指紋,它有固定的長度,且不同的明文摘要成密文,其結果總是不同的,而同樣的明文其摘要必定一致。這樣這個摘要便可成為驗證明文是否是"真身"的"指紋"了。

    2.3 數字簽名
      通過采用數字簽名,可以確認以下兩點:a. 信息是由簽名者發送的。b. 信息在傳輸過程中未曾作過任何修改。這樣數字簽名就可用來防止冒用別人名義發送信息;或發出信件后又加以否認等情況發生。
      它的使用方式是: 報文的發送方從報文文本中生成一個128位的散列值(或報文摘要)。發送方用自己的專用密鑰對這個散列值進行加密來形成發送方的數字簽名。然后,這個數字簽名將作為報文的附件和報文一起發送給報文的接收方。報文的接收方首先從接收到的原始報文中計算出128位的散列值(或報文摘要),接著再用發送方的公開密鑰來對報文附加的數字簽名進行解密。如果兩個散列值相同,那么接收方就能確認該數字簽名是發送方的并且報文在傳送的過程中沒有被改動。通過數字簽名能夠實現對原始報文的鑒別和不可抵賴性。

    2.4 數字證書
      數字證書作為網上通信雙方真實身份證明的依據,是一個經證書授權中心(CA)數字簽名的包含證書申請者(公開密鑰的擁有者)個人信息及其公開密鑰的文件。它類似于現實生活中的身份證。Notes中的驗證字實際上就是一種Notes內部的數字證書。它包括:
      1) 提交驗證字的驗證者名稱。
      2) 驗證字被提交給的用戶或服務器的名稱。
      3) 同時存儲在"Domino目錄"和標識符文件中的公用密鑰。Notes使用公用密鑰加密發送給公用密鑰所有者的消息,并且校驗標識符所有者的數字簽名。
      4) 驗證者的數字簽名。
      5) 驗證字的過期日期。

    2.5 驗證中心
      驗證中心又稱作驗證字權威(Certificate Authority)。它負責證書的頒發與管理。數字證書的基本目的是將個人的姓名與公鑰綁定。 CA中心實現了類似于現實生活中的身份認證過程,是發放證書的權威機構,是被公眾信任的對象。證書的登記、審批、發放、廢止、查詢、管理等,由安全要求非常高的CA系統承擔。

    3 Domino/Notes中具體的安全技術

      現在,具體討論一下在Domino/Notes的安全體系中,所提供的四級安全措施:校驗與驗證、數字簽名、存取控制、字段級加密。

    3.1 校驗與驗證
      在Notes環境中每一個Domino服務器、Notes驗證者和Notes用戶都擁有標識符。當注冊用戶和服務器時,Domino自動創建他們的標識符。標識符文件包括:
      所有者的姓名。
      永久許可證號,此編號指明其所有者是合法的,并指定所有者是否具有運行Domino或Notes的北美或國際許可證。
      至少擁有一個來自驗證者標識符的Notes驗證字。
      私有密鑰。Notes使用私有密鑰來簽名其所有者發送的消息、解密發送給它的所有者的消息并且(如果標識符屬于  驗證者)為驗證字簽名。
      Internet驗證字(可選)。此驗證字用于保護SSL連接,并且加密和簽名S/MIME郵件消息。
      一個或多個加密密鑰,由用戶創建并分發,以允許其他用戶加密和解密文檔中的域(可選)。
      口令(可選)??诹顚⑸擅荑€加密ID中的私有數據。
      驗證字

      當Notes客戶機試圖與Domino服務器通訊來進行復制、郵件路由或數據庫訪問時,就有兩個安全過程使用客戶機標識符中的信息來檢查客戶機是否合法。校驗是第一個過程,它建立對客戶機公用密鑰的信任。如果校驗成功,就開始第二個過程:驗證。它將核實用戶的身份。驗證在一個請求/響應的交互過程中使用客戶機和服務器的公用和私用密鑰。
      校驗使用以下規則建立對公用密鑰的信任。Domino對試圖訪問服務器的客戶機和客戶機要訪問的服務器使用校驗。
      1) 信任服務器或客戶機在層次名稱樹中的任何祖先的公用密鑰。這是因為祖先的公用密鑰存儲在服務器或客戶機的標識符文件中。
      2) 信任任何從有效驗證字(此驗證字是由服務器或客戶機在層次名稱樹中的任何祖先所提交的)中獲取得公用密鑰。
      3) 信任由任何可信任驗證者驗證的公用密鑰以及屬于該驗證者某個后代的公用密鑰。

    下面舉例說明校驗和驗證如何共同工作來保證系統的安全性。在此例中,用戶John/Marketing/Acme(客戶機)希望訪問Server/Acme(服務器)。
      1) Server從它的標識符文件中讀取Acme的公用密鑰。根據上述第一條規則,如果驗證字有效,則Server信任指定給Acme的公用密鑰。
      2) John將其用戶標識符中的信息發送給Server。Server讀取John的用戶標識符以獲取Acme提交給Marketing的驗證字。Server使用現在信任的Acme公用密鑰來校驗Marketing的驗證字是否有效。根據上述第二條規則,Server信任指定給Marketing的公用密鑰。
      3) Server讀取John的用戶標識符以獲取由Marketing/Acme提交給John的驗證字。Server使用現在信任的Marketing/Acme的公用密鑰來校驗John的驗證字是否有效。(根據上述第三條規則,如果驗證字有效,則Server信任指定給John的公用密鑰。)
      4) Server建立對John的公用密鑰的信任之后,驗證過程就開始了。Server向John發送一個隨機數請求。
      5) John的工作站用它的私有密鑰加密此請求,并將這個剛加密的數字發送回Server。
      6) Server使用John的公用密鑰來解密此響應。如果得到的是最初的請求,則Server知道John是合法的。
      7) 然后,按相反方向執行這個過程。John的工作站通過處理Server的驗證字來校驗Server的公用密鑰,并使用所描述的請求/響應過程來驗證服務器。

    3.2 數字簽名
      數字簽名的工作原理在前面已經詳細的說明過,在此省略。

    3.3 存取控制
      每一個數據庫都有一個存取控制列表(Aclearcase/" target="_blank" >ccess Control List),它用來指定什么人可以以什么方式(例如,創建、讀、寫、刪除等)對數據庫進行訪問。要控制Notes用戶的存取權限,就要在ACL中為用戶設定適當的存取級別、用戶類型、角色等。
    ACL的存取級別共分以下7級。
      不能存取者 無法將數據庫圖標置于Notes的工作區。
      存放者 能創建文檔,但在文檔被存儲和關閉后,存放者就不能再查看文檔或數據庫中的其他任何文檔。
      讀者 只能閱讀數據庫中的文檔。
      作者 能創建文檔,閱讀文檔。如果被列為文檔作者,還能修改文檔。除此之外,他們還能刪除那些自己被列為作  者的文檔以及運行僅能修改自己是作者的那些文檔的代理程序。
      編輯者 能創建、閱讀、修改并刪除數據庫中的任何文檔,還能運行代理程序。
      設計者 能創建或修改數據庫中的設計元素;創建和運行代理程序;創建、閱讀、修改和刪除數據庫中的文檔。
      管理者 可以執行其他數據庫用戶的全部功能。另外,管理者還可改變數據庫的ACL,并可刪除數據庫。

      用戶類型表明存取控制列表中的名稱所屬的類型(個人、服務器、或群組)。它為數據庫提供了附加的安全性。例如:為名稱指定"個人"用戶類型,可以防止未經授權的用戶以相同的個人名稱創建"群組"文檔、向群組中添加自己的姓名并通過群組的名稱訪問數據庫。
      角色使分配與管理用戶的權限變得更加方便??梢韵葎摻ㄒ粋€角色并為角色分配好權限。以后當為用戶授于與此角色相同的權限的時候,不需要重新設置,只須為用戶指定此角色。

    3.4 字段級加密
      為防止對數據進行未經授權的訪問,可以對數據進行加密。Notes提供的加密技術不但可以對數據庫、文檔進行加密,還可以對文檔中的字段加密。這樣對于同一份文檔,經授權的用戶可以看到加密的信息,而未經授權的用戶就看不到這些機密的信息。以下分別討論在數據庫級、文檔級、字段級的加密。
      <1> 數據庫加密 數據庫加密使用公用密鑰算法。加密過程要隨機生成一個密鑰,使用與某個特定用戶標識符相關的公用密鑰加密該密鑰,并將生成的密鑰追加到指定數據庫中。只有當用戶的私有密鑰能夠解密該追加密鑰時才能訪問本地加密的數據庫。選擇除當前用戶外的某個用戶,并使用該用戶的公用密鑰對數據庫進行加密,那么當前用戶也不能再訪問此數據庫了。因此,在選擇另外一個用戶之前,一定要對該數據庫進行備份。使用數據庫加密使數據又多了一層安全性,因為存取控制列表(ACL)設置不能保護在本地存儲的數據庫。
      <2> 文檔加密 數據庫的設計者使用秘密密鑰或公用密鑰對文檔加密。密鑰必須在加密文檔之前創建??梢酝ㄟ^下列幾種方法使用秘密密鑰對文檔加密:
      使用表單屬性 允許數據庫設計者向表單添加一個或多個密鑰。由該表單創建的每個文檔都使用這些密鑰進行加密。
      使用數據庫/文檔屬性框 允許用戶使用存儲在其標識符文件中的密鑰加密一個或多個文檔。
      使用秘密密鑰域 允許用戶不必使用自己的密鑰加密文檔。秘密密鑰域可能包含自動用于加密文檔的密鑰名稱,或  者該域為空,允許用戶指定密鑰。
      還可以使用標識符中的公用密鑰加密文檔,這樣,僅有具備這些標識符的用戶才能讀取文檔。
      <3> 字段加密 數據庫設計者可以使用秘密密鑰加密字段。要解密這些字段,用戶必須將特定密鑰合并到其標識符文件中。如果用戶不具有要求的密鑰,則被加密的字段將顯示為空。

    4 應用實例

      某大型企業使用Lotus Domino/Notes 作為網上辦公自動化的平臺。其中的財務數據庫存儲著企業的重要數據,需要有很強的安全保護功能。系統的要求是總經理能夠查閱數據庫中的所有財務報表并根據經營情況對有關部門發出指示。另外,一些部門經理也能夠查閱數據庫中的一部分財務數據。因為總經理以及部門經理只需要查看報表數據,所以可在數據庫的ACL中授予他們讀者的權限,這樣可以防止由于誤操作修改了數據,便于管理者管理。財務部的工作人員每個人負責一部分報表的生成,可以授予他們作者的權限,這樣每個人只對自己生成的報表的負責,無權修改、刪除別人生成的報表。如果要求工作人員生成報表后無權查看數據庫中的數據,那么就授予他們存放者的權限。財務部經理需要對整個數據庫進行管理,因此授予管理者權限。其他人無權訪問數據庫,就需要把ACL中的"Default"一欄設定為不能存取者。
      為了增強安全性,還要對一些機密的數據進行加密。通過加密,總經理和普通的部門經理雖然可以看到同一份文檔,但是經過加密的某些機密的數據只有總經理才能看到。在加密的過程中,先隨機生成一個對稱密鑰,并將此密鑰追加到要加密的文檔或字段中。然后使用總經理的公用密鑰加密此對稱密鑰,通過郵件發給總經理??偨浝碓谑盏洁]件后,使用自己的私有密鑰解密,得到分發的對稱密鑰,并把它合并到自己的用戶標識符中。從而可以訪問加密后的文檔或字段。
      總經理在看過財務數據后,可能要對財務部經理作一些工作上的指示,這時,他在寫好后的郵件中加上自己的數字簽名。然后使用財務部經理的公用密鑰加密并發送出去。財務部經理在接到郵件后先用自己的私有密鑰解密此郵件,當他看完郵件后,他還需要驗證一下這封信是不是冒名頂替的或者真是總經理寫的但在傳送的過程中被人修改了。這時,他一方面取出總經理的公用密鑰解密信中的數字簽名,一方面對信件進行報文摘要。然后兩者進行對比,如果完全符合,那么就確認這封信真是總經理發出的,并且沒有被人修改。
      通過對以上實例的分析,可以看出Lotus Domino/Notes 強大的安全性。

    5 結束語

      除了上面討論的Domino/Notes的安全機制,Domino R5還集成了對以下各種安全機制的支持,包括SSL v3、X.509驗證,CDSA及S/MIME。在Domino R5中支持使用Notes驗證或X.509驗證注冊新的用戶。對S/MIME的支持確保所有類型客戶端信息的完整性。SSL v3保證了IIOP和LDAP客戶端的信息。通過可信任的第三方目錄的驗證,減少了信息的復雜性和重復性。
      對群件系統來說,既要求可靠的安全措施來保護機密的數據,同時又要求安全手段具有相當地靈活性。在這方面Notes擁有其他數據庫平臺無法比擬的優勢,從而也確立了它在辦公自動化領域的優勢地位。


    參 考 文 獻

    [1]馮錦峰 惠月編著.Lotus Domino/Notes R5 應用開發指南.北京希望電子出版社.2000
    [2]Randall A.Tamura等著.王建華 高杏生 劉孜群 侯麗坤 等譯.Lotus Notes 和Domino Server 4.6技術大全.機械工業出版社.1998
    [3]謝東青編著.計算機安全保密技術.湖南大學出版社.1998
    [4]網絡信息安全與保密.楊義先等編著.北京郵電大學出版社.1999

    原文轉自:http://www.kjueaiud.com

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>