Access > 安全和隱私
Access 2010 安全性簡介
全部顯示
全部隱藏
本文概述 Access 2010 提供的安全功能,并說明如何使用 Access 提供的工具來幫助確保數(shù)據(jù)庫的安全。本文還提供了多個(gè)指向有關(guān)各種安全功能的更多詳細(xì)內(nèi)容的鏈接。
本文不討論您在使用 Access Services 將數(shù)據(jù)庫發(fā)布到 Web 時(shí)可用的 SharePoint 安全功能。有關(guān)詳細(xì)信息,請參閱 Microsoft SharePoint Server 2010 中的“幫助”。
本文內(nèi)容
ACCESS 安全性的新增功能
使用受信任位置中的 ACCESS 數(shù)據(jù)庫
打包、簽署和分發(fā) ACCESS 數(shù)據(jù)庫
打開數(shù)據(jù)庫時(shí)啟用禁用的內(nèi)容
使用數(shù)據(jù)庫密碼加密 ACCESS 數(shù)據(jù)庫
如何對在 ACCESS 2010 中打開的由早期版本的 ACCESS 創(chuàng)建的數(shù)據(jù)庫應(yīng)用安全性
運(yùn)行不安全表達(dá)式(禁用沙盒模式)
Access 安全性的新增功能
Access 提供了經(jīng)過改進(jìn)的安全模型,該模型有助于簡化將安全性應(yīng)用于數(shù)據(jù)庫以及打開已啟用安全性的數(shù)據(jù)庫的過程。
注釋 盡管本文討論的模型和技術(shù)可以提高安全性,但可幫助保護(hù) Access 數(shù)據(jù)最安全的方式是將表存儲(chǔ)在服務(wù)器(例如運(yùn)行 Windows SharePoint Services 3.0 或 的計(jì)算機(jī))上。
以下是 Access 安全性的新增功能:
2010 中的新增功能
✍ | 新的加密技術(shù) Office 2010 提供了新的加密技術(shù),此加密技術(shù)比 Office 2007 提供的加密技術(shù)更加強(qiáng)大。 |
✍ | 對第三方加密產(chǎn)品的支持 在 Access 2010 中,您可以根據(jù)自己的意愿使用第三方加密技術(shù)。本文不討論如何使用第三方產(chǎn)品。 |
2007 中的新增功能
✍ | 即使在您不想啟用數(shù)據(jù)庫內(nèi)容時(shí)也能查看數(shù)據(jù)的功能 在 Microsoft Office Access 2003 中,如果將安全級(jí)別設(shè)置為“高”,則必須先對數(shù)據(jù)庫進(jìn)行代碼簽名并信任數(shù)據(jù)庫,然后才能查看數(shù)據(jù)?,F(xiàn)在您可以查看數(shù)據(jù),而無需決定是否信任數(shù)據(jù)庫。 |
✍ | 更高的易用性 如果將數(shù)據(jù)庫文件(新的 Access 文件格式或早期文件格式)放在受信任位置(例如,您指定為安全位置的文件夾或網(wǎng)絡(luò)共享),那么這些文件將直接打開并運(yùn)行,而不會(huì)顯示警告消息或要求您啟用任何禁用的內(nèi)容。此外,如果在 Access 2010 中打開由早期版本的 Access 創(chuàng)建的數(shù)據(jù)庫(例如,.mdb 或 .mde 文件),并且這些數(shù)據(jù)庫已進(jìn)行了數(shù)字簽名,而且您已選擇信任發(fā)布者,那么系統(tǒng)將運(yùn)行這些文件而不需要您決定是否信任它們。但請記住,簽名數(shù)據(jù)庫中的 VBA 代碼只有在您信任發(fā)布者后才能運(yùn)行,并且,如果數(shù)字簽名無效,代碼也不會(huì)運(yùn)行。如果簽名者以外的其他人篡改了數(shù)據(jù)庫內(nèi)容,簽名將變得無效。有關(guān)對數(shù)據(jù)庫進(jìn)行簽名的詳細(xì)信息,請參閱如何對在 ACCESS 2010 中打開的由早期版本的 ACCESS 創(chuàng)建的數(shù)據(jù)庫應(yīng)用安全性一節(jié)。 |
如果您不確定是否信任證書,如何判斷數(shù)字簽名是否可信一文中提供了關(guān)于檢查證書中的日期和其他項(xiàng)目以確保其有效的一般信息。
✍ | 信任中心 信任中心是一個(gè)對話框,它為設(shè)置和更改 Access 的安全設(shè)置提供了一個(gè)集中的位置。使用信任中心可以為 Access 創(chuàng)建或更改受信任位置并設(shè)置安全選項(xiàng)。在 Access 實(shí)例中打開新的和現(xiàn)有的數(shù)據(jù)庫時(shí),這些設(shè)置將影響它們的行為。信任中心包含的邏輯還可以評估數(shù)據(jù)庫中的組件,確定打開數(shù)據(jù)庫是否安全,或者信任中心是否應(yīng)禁用數(shù)據(jù)庫,并讓您判斷是否啟用它。有關(guān)在 Access 中使用信任中心的信息,請參閱本文后面的使用受信任位置中的 ACCESS 數(shù)據(jù)庫。 |
有關(guān)使用信任中心的一般信息,請參閱在信任中心查看我的安全和隱私設(shè)置一文。
✍ | 更少的警告消息 早期版本的 Access 強(qiáng)制您處理各種警報(bào)消息,宏安全性和沙盒模式就是其中的兩個(gè)例子。默認(rèn)情況下,如果打開一個(gè)非信任的 .accdb 文件,您將看到一個(gè)稱為“消息欄”的工具。 |
當(dāng)打開的數(shù)據(jù)庫中包含一個(gè)或多個(gè)禁用的數(shù)據(jù)庫內(nèi)容(例如,動(dòng)作查詢(添加、刪除或更改數(shù)據(jù)的查詢)、宏、ActiveX 控件、表達(dá)式(計(jì)算結(jié)果為單個(gè)值的函數(shù))以及 VBA 代碼)時(shí),若要信任該數(shù)據(jù)庫,可以使用消息欄來啟用任何這樣的數(shù)據(jù)庫內(nèi)容。
✍ | 用于簽名和分發(fā)數(shù)據(jù)庫文件的新方法 在 Access 2007 之前的 Access 版本中,使用 Visual Basic 編輯器將安全證書應(yīng)用于各個(gè)數(shù)據(jù)庫組件。現(xiàn)在您可以將數(shù)據(jù)庫打包,然后簽名并分發(fā)該包。 |
如果將數(shù)據(jù)庫從簽名的包中解壓縮到受信任位置,則數(shù)據(jù)庫將打開而不會(huì)顯示消息欄。如果將數(shù)據(jù)庫從簽名的包中解壓縮到不受信任位置,但您信任包證書并且簽名有效,則數(shù)據(jù)庫將打開而不會(huì)顯示消息欄。
注釋 當(dāng)您打包并簽名不受信任或包含無效數(shù)字簽名的數(shù)據(jù)庫時(shí),如果沒有將它放在受信任的位置,則必須在每次打開它時(shí)使用消息欄來表示信任該數(shù)據(jù)庫。
✍ | 使用更強(qiáng)的算法來加密那些使用數(shù)據(jù)庫密碼功能的 .accdb 文件格式的數(shù)據(jù)庫 加密數(shù)據(jù)庫將打亂表中的數(shù)據(jù),有助于防止不請自來的用戶讀取數(shù)據(jù)。 |
注釋 當(dāng)使用密碼對數(shù)據(jù)庫進(jìn)行加密時(shí),加密的數(shù)據(jù)庫將使用頁面級(jí)鎖定,而不管您的應(yīng)用程序設(shè)置如何。這會(huì)影響數(shù)據(jù)在共享環(huán)境中的可用性。
✍ | 新增了一個(gè)在禁用數(shù)據(jù)庫時(shí)運(yùn)行的宏操作子類 這些更安全的宏還包含錯(cuò)誤處理功能。您還可以直接將宏(即使宏中包含 Access 禁止的操作)嵌入任何窗體、報(bào)表或控件屬性(它們以邏輯方式配合來自早期版本的 Access 的 VBA 代碼模塊或宏工作)。 |
注釋 有關(guān)宏的詳細(xì)信息,請參閱宏簡介一文。
最后,請?jiān)诶^續(xù)閱讀時(shí)記住下列規(guī)則:
✍ | 如果打開受信任位置的數(shù)據(jù)庫,則會(huì)運(yùn)行所有組件,而不需要您做出信任決定。 |
✍ | 在打包、簽名和部署使用舊文件格式(.mdb 或 .mde 文件)的數(shù)據(jù)庫時(shí),如果該數(shù)據(jù)庫包含來自受信任發(fā)布者的有效數(shù)字簽名,并且您信任該證書,那么所有組件都將直接運(yùn)行,而不需要您決定是否信任它們。 |
✍ | 如果對不受信任的數(shù)據(jù)庫進(jìn)行簽名,并將其部署到不受信任位置,則默認(rèn)情況下信任中心將禁用該數(shù)據(jù)庫,并且您必須在每次打開它時(shí)選擇是否啟用數(shù)據(jù)庫。有關(guān)詳細(xì)信息,請參閱打開數(shù)據(jù)庫時(shí)啟用禁用的內(nèi)容一節(jié)。 |
ACCESS 和用戶級(jí)安全
對于以新文件格式(.accdb 和 .accde 文件)創(chuàng)建的數(shù)據(jù)庫,Access 不提供用戶級(jí)安全。但是,如果在 Access 2010 中打開由早期版本的 Access 創(chuàng)建的數(shù)據(jù)庫,并且該數(shù)據(jù)庫應(yīng)用了用戶級(jí)安全,那么這些設(shè)置仍然有效。
要點(diǎn) 使用用戶級(jí)安全功能創(chuàng)建的權(quán)限不會(huì)阻止具有惡意的用戶訪問數(shù)據(jù)庫,因此不應(yīng)用作安全屏障。此功能適用于提高受信任用戶對數(shù)據(jù)庫的使用。若要保護(hù)數(shù)據(jù)安全,請使用 Windows 文件系統(tǒng)權(quán)限僅允許受信任用戶訪問數(shù)據(jù)庫文件或關(guān)聯(lián)的用戶級(jí)安全文件。
如果將具有用戶級(jí)安全的早期版本 Access 數(shù)據(jù)庫轉(zhuǎn)換為新的文件格式,則 Access 將自動(dòng)剔除所有安全設(shè)置,并應(yīng)用保護(hù) .accdb 或 .accde 文件的規(guī)則。
最后需記住的一點(diǎn)是,在打開具有新文件格式的數(shù)據(jù)庫時(shí),所有用戶始終可以看到所有數(shù)據(jù)庫對象。
ACCESS 安全體系結(jié)構(gòu)
若要理解 Access 安全體系結(jié)構(gòu),需要記住的是,Access 數(shù)據(jù)庫與 Excel 工作簿或 Word 文檔是不同意義上的文件。Access 數(shù)據(jù)庫是一組對象(表、窗體、查詢、宏、報(bào)表等等),這些對象通常必須相互配合才能發(fā)揮功用。例如,當(dāng)您創(chuàng)建數(shù)據(jù)輸入窗體時(shí),如果不將窗體中的控件綁定(鏈接)到表,就無法用該窗體輸入或存儲(chǔ)數(shù)據(jù)。
有幾個(gè) Access 組件會(huì)造成安全風(fēng)險(xiǎn),因此不受信任的數(shù)據(jù)庫中將禁用這些組件:
✍ | 動(dòng)作查詢(用于插入、刪除或更改數(shù)據(jù)的查詢) |
✍ | 一些表達(dá)式(返回單個(gè)值的函數(shù)) |
為了幫助確保您的數(shù)據(jù)更加安全,每當(dāng)您打開數(shù)據(jù)庫時(shí),Access 和信任中心都將執(zhí)行一組安全檢查。此過程如下:
✍ | 在打開 .accdb 或 .accde 文件時(shí),Access 會(huì)將數(shù)據(jù)庫的位置提交到信任中心。如果信任中心確定該位置受信任,則數(shù)據(jù)庫將以完整功能運(yùn)行。如果打開具有早期版本的文件格式的數(shù)據(jù)庫,則 Access 會(huì)將文件位置和有關(guān)文件的數(shù)字簽名(如果有)的詳細(xì)信息提交到信任中心。 |
信任中心將審核“證據(jù)”,評估該數(shù)據(jù)庫是否值得信任,然后通知 Access 如何打開數(shù)據(jù)庫。Access 或者禁用數(shù)據(jù)庫,或者打開具有完整功能的數(shù)據(jù)庫。
注釋 請記住,您或系統(tǒng)管理員在信任中心選擇的設(shè)置將控制 Access 在打開數(shù)據(jù)庫時(shí)做出的信任決定。
有關(guān)如何使用信任中心的詳細(xì)信息,請參閱“請參閱”部分。
✍ | 如果信任中心禁用數(shù)據(jù)庫內(nèi)容,則在打開數(shù)據(jù)庫時(shí)將出現(xiàn)消息欄。 |
若要啟用數(shù)據(jù)庫內(nèi)容,請單擊“選項(xiàng)”,然后在出現(xiàn)的對話框中選擇相應(yīng)的選項(xiàng)。Access 將啟用已禁用的內(nèi)容,并重新打開具有完整功能的數(shù)據(jù)庫。否則,禁用的組件將不工作。
✍ | 如果打開的數(shù)據(jù)庫是以早期版本的文件格式(.mdb 或 .mde 文件)創(chuàng)建的,并且該數(shù)據(jù)庫未簽名且未受信任,則默認(rèn)情況下,Access 將禁用任何可執(zhí)行內(nèi)容。 |
禁用模式
如果信任中心將數(shù)據(jù)庫評估為不受信任,則 Access 將在禁用模式(即關(guān)閉所有可執(zhí)行內(nèi)容)下打開該數(shù)據(jù)庫,而不管數(shù)據(jù)庫文件格式如何。
在禁用模式下,Access 會(huì)禁用下列組件:
✍ | VBA 代碼和 VBA 代碼中的任何引用,以及任何不安全的表達(dá)式。 |
✍ | 所有宏中的不安全操作?!安话踩辈僮魇侵缚赡茉试S用戶修改數(shù)據(jù)庫或?qū)?shù)據(jù)庫以外的資源獲得訪問權(quán)限的任何操作。但是,Access 禁用的操作有時(shí)可以被視為是“安全”的。例如,如果您信任數(shù)據(jù)庫的創(chuàng)建者,則可以信任任何不安全的宏操作。 |
✍ | 動(dòng)作查詢 這些查詢用于添加、更新和刪除數(shù)據(jù)。 |
✍ | 數(shù)據(jù)定義語言 (DDL) 查詢 用于創(chuàng)建或更改數(shù)據(jù)庫中的對象,例如,表和過程。 |
✍ | SQL 傳遞查詢 用于直接向支持開放式數(shù)據(jù)庫連接 (ODBC) 標(biāo)準(zhǔn)的數(shù)據(jù)庫服務(wù)器發(fā)送命令。傳遞查詢在不涉及 Access 數(shù)據(jù)庫引擎的情況下處理服務(wù)器上的表。 |
數(shù)據(jù)庫打開時(shí),Access 可能會(huì)嘗試載入加載項(xiàng)(用于擴(kuò)展 Access 或打開的數(shù)據(jù)庫的功能的程序)。您可能還要運(yùn)行向?qū)?,以便在打開的數(shù)據(jù)庫中創(chuàng)建對象。在載入加載項(xiàng)或啟動(dòng)向?qū)r(shí),Access 會(huì)將證據(jù)傳遞到信任中心,信任中心將做出其他信任決定,并啟用或禁用對象或操作。如果信任中心禁用數(shù)據(jù)庫,而您不同意該決定,那么幾乎總是可以使用消息欄來啟用相應(yīng)的內(nèi)容。加載項(xiàng)是該規(guī)則的一個(gè)例外。如果在信任中心的“加載項(xiàng)”窗格中選中“要求受信任發(fā)行者簽署應(yīng)用程序擴(kuò)展”復(fù)選框,則 Access 將提示您啟用加載項(xiàng),但該過程不涉及消息欄。有關(guān)使用信任中心的信息,請參閱本文后面的使用受信任位置中的 OFFICE ACCESS 2007 數(shù)據(jù)庫。
返回頁首
使用受信任位置中的 Access 數(shù)據(jù)庫
將 Access 數(shù)據(jù)庫放在受信任位置時(shí),所有 VBA 代碼、宏和安全表達(dá)式都會(huì)在數(shù)據(jù)庫打開時(shí)運(yùn)行。您不必在數(shù)據(jù)庫打開時(shí)做出信任決定。
使用受信任位置中的 Access 數(shù)據(jù)庫的過程大致分為下面幾個(gè)步驟:
1. | 使用信任中心查找或創(chuàng)建受信任位置。 |
2. | 將 Access 數(shù)據(jù)庫保存、移動(dòng)或復(fù)制到受信任位置。 |
以下幾組步驟介紹了如何查找或創(chuàng)建受信任位置,然后將數(shù)據(jù)庫添加到該位置。
打開信任中心
1. | 在“文件”選項(xiàng)卡上,單擊“選項(xiàng)”。 |
此時(shí)顯示“Access 選項(xiàng)”對話框。
2. | 單擊“信任中心”,然后在“Microsoft Office Access 信任中心”下,單擊“信任中心設(shè)置”。 |
3. | 單擊“受信任位置”,然后執(zhí)行下列某項(xiàng)操作: |
✍ | 記錄一個(gè)或多個(gè)受信任位置的路徑。 |
✍ | 創(chuàng)建新的受信任位置。為此,請單擊“添加新位置”,然后完成“Microsoft Office 受信任位置”對話框中的選項(xiàng)。 |
將數(shù)據(jù)庫放在受信任位置
✍ | 使用您喜歡的方法將數(shù)據(jù)庫文件移動(dòng)或復(fù)制到受信任位置。例如,可以使用 Windows 資源管理器復(fù)制或移動(dòng)文件,也可以在 Access 中打開文件,然后將它保存到受信任位置。 |
在受信任位置打開數(shù)據(jù)庫
✍ | 使用您喜歡的方法打開文件。例如,可以在 Windows 資源管理器中雙擊數(shù)據(jù)庫文件,或者可以在 Access 運(yùn)行時(shí)單擊“文件”選項(xiàng)卡上的“打開”以找到并打開文件。 |
返回頁首
打包、簽名和分發(fā) Office Access 2007 數(shù)據(jù)庫
使用 Access 可以輕松而快速地對數(shù)據(jù)庫進(jìn)行簽名和分發(fā)。在創(chuàng)建 .accdb 文件或 .accde 文件后,可以將該文件打包,對該包應(yīng)用數(shù)字簽名,然后將簽名包分發(fā)給其他用戶?!按虬⒑炇稹惫ぞ邥?huì)將該數(shù)據(jù)庫放置在 Access 部署 (.accdc) 文件中,對其進(jìn)行簽名,然后將簽名包放在您確定的位置。隨后,其他用戶可以從該包中提取數(shù)據(jù)庫,并直接在該數(shù)據(jù)庫中工作,而不是在包文件中工作。
在操作過程中,請記住下列事實(shí):
✍ | 將數(shù)據(jù)庫打包并對包進(jìn)行簽名是一種傳達(dá)信任的方式。在對數(shù)據(jù)庫打包并簽名后,數(shù)字簽名會(huì)確認(rèn)在創(chuàng)建該包之后數(shù)據(jù)庫未進(jìn)行過更改。 |
✍ | 從包中提取數(shù)據(jù)庫后,簽名包與提取的數(shù)據(jù)庫之間將不再有關(guān)系。 |
✍ | 僅可以在以 .accdb、.accdc 或 .accde 文件格式保存的數(shù)據(jù)庫中使用“打包并簽署”工具。Access 還提供了用于對以早期版本的文件格式創(chuàng)建的數(shù)據(jù)庫進(jìn)行簽名和分發(fā)的工具。所使用的數(shù)字簽名工具必須適合于所使用的數(shù)據(jù)庫文件格式。 |
✍ | 一個(gè)包中只能添加一個(gè)數(shù)據(jù)庫。 |
✍ | 該過程將對包含整個(gè)數(shù)據(jù)庫的包(而不僅僅是宏或模塊)進(jìn)行簽名。 |
✍ | 該過程將壓縮包文件,以便縮短下載時(shí)間。 |
✍ | 可以從位于 Windows SharePoint Services 3.0 服務(wù)器上的包文件中提取數(shù)據(jù)庫。 |
下面各部分中的步驟將解釋如何創(chuàng)建簽名包文件以及如何從簽名包文件中提取和使用數(shù)據(jù)庫。
創(chuàng)建簽名包
2. | 在“文件”選項(xiàng)卡上,單擊“保存并發(fā)布”,然后在“高級(jí)”下單擊“打包并簽署”。 |
將出現(xiàn)“選擇證書”對話框。
出現(xiàn)“創(chuàng)建 Microsoft Office Access 簽名包”對話框。
4. | 在“保存位置”列表中,為簽名的數(shù)據(jù)庫包選擇一個(gè)位置。 |
5. | 在“文件名”框中為簽名包輸入名稱,然后單擊“創(chuàng)建”。 |
Access 將創(chuàng)建 .accdc 文件并將其放置在您選擇的位置。
提取并使用簽名包
1. | 在“文件”選項(xiàng)卡上,單擊“打開”。 |
將出現(xiàn)“打開”對話框。
2. | 選擇“Microsoft Office Access 簽名包(*.accdc)”作為文件類型。 |
3. | 使用“查找范圍”列表找到包含 .accdc 文件的文件夾,選擇該文件,然后單擊“打開”。 |
✍ | 如果選擇了信任用于對部署包進(jìn)行簽名的安全證書,則會(huì)出現(xiàn)“將數(shù)據(jù)庫提取到”對話框。此時(shí),請轉(zhuǎn)到下一步。 |
✍ | 如果尚未選擇信任安全證書,則會(huì)出現(xiàn)下面一條消息。 |
如果您信任該數(shù)據(jù)庫,請單擊“打開”。如果您信任來自提供者的任何證書,請單擊“信任來自發(fā)布者的所有內(nèi)容”。將出現(xiàn)“將數(shù)據(jù)庫提取到”對話框。
注釋 如果使用自簽名證書對數(shù)據(jù)庫包進(jìn)行簽名,然后在打開該包時(shí)單擊了“信任來自發(fā)布者的所有內(nèi)容”,則將始終信任使用自簽名證書進(jìn)行簽名的包。
5. | 另外,還可以在“保存位置”列表中為提取的數(shù)據(jù)庫選擇一個(gè)位置,然后在“文件名”框中為提取的數(shù)據(jù)庫輸入其他名稱。 |
提示 如果將數(shù)據(jù)庫提取到一個(gè)受信任位置,則每當(dāng)打開該數(shù)據(jù)庫時(shí)其內(nèi)容都會(huì)自動(dòng)啟用。但如果選擇了一個(gè)不受信任的位置,則默認(rèn)情況下該數(shù)據(jù)庫的某些內(nèi)容將被禁用。
如果不能確定是否信任證書,請參閱如何判斷數(shù)字簽名是否可信,其中提供了有關(guān)檢查日期和證書中的其他項(xiàng)以幫助確保該證書有效的常規(guī)信息。
返回頁首
打開數(shù)據(jù)庫時(shí)啟用禁用的內(nèi)容
默認(rèn)情況下,如果您不信任數(shù)據(jù)庫且沒有將數(shù)據(jù)庫放在受信任位置,Access 將禁用數(shù)據(jù)庫中所有可執(zhí)行內(nèi)容。打開數(shù)據(jù)庫時(shí),Access 將禁用該內(nèi)容,并顯示消息欄。
此外,與 Access 2003 不同,在默認(rèn)情況下,當(dāng)打開數(shù)據(jù)庫時(shí),Access 不再顯示一組模式對話框(需要您先做出選擇然后才能執(zhí)行其他操作的對話框)。如果您愿意顯示一組模式對話框,則可以添加注冊表項(xiàng)并顯示舊的模式對話框。
信任數(shù)據(jù)庫
不管 Access 在打開數(shù)據(jù)庫時(shí)的行為如何,如果數(shù)據(jù)庫來自可靠的發(fā)布者,您就可以選擇啟用文件中的可執(zhí)行組件以信任數(shù)據(jù)庫。
要點(diǎn) 單擊“啟用內(nèi)容”時(shí),Access 將啟用所有禁用的內(nèi)容(包括潛在的惡意代碼)。如果惡意代碼損壞了數(shù)據(jù)或計(jì)算機(jī),Access 無法彌補(bǔ)該損失。
隱藏消息欄
✍ | 單擊“消息欄”右上角的“關(guān)閉”按鈕 (X)。 |
“消息欄”即會(huì)關(guān)閉。除非將數(shù)據(jù)庫移到受信任位置,否則在下次打開數(shù)據(jù)庫時(shí)仍會(huì)重新顯示消息欄。
添加注冊表項(xiàng)以顯示模式對話框
1. | 在 Microsoft Windows 中,單擊“開始”按鈕,然后單擊“運(yùn)行”。 |
2. | 在“打開”框中,鍵入 regedit,然后按 Enter。 |
即會(huì)啟動(dòng)注冊表編輯器。
3. | 展開 HKEY_CURRENT_USER 文件夾,導(dǎo)航到以下注冊表項(xiàng): |
Software\Microsoft\Office\14.0\Access\Security
4. | 在注冊表編輯器的右窗格中,右鍵單擊空白區(qū)域,指向“新建”,并單擊“DWORD 值”。此時(shí)會(huì)出現(xiàn)一個(gè)新的空白 DWORD 值。 |
5. | 為該值鍵入以下名稱:ModalTrustDecisionOnly。 |
即會(huì)出現(xiàn)“編輯 DWORD 值”對話框。
7. | 在“數(shù)值數(shù)據(jù)”字段中,將“0”值更改為“1”,然后單擊“確定”。 |
現(xiàn)在,當(dāng)打開包含不安全內(nèi)容的數(shù)據(jù)庫時(shí),您將看到一系列對話框而不是“消息欄”。若要恢復(fù)到原來的行為,請重復(fù)上述步驟,將值 “1”更改為“0”。
返回頁首
使用數(shù)據(jù)庫密碼加密 Access 數(shù)據(jù)庫
Access 中的加密工具合并了兩個(gè)舊工具(編碼和數(shù)據(jù)庫密碼),并加以改進(jìn)。使用數(shù)據(jù)庫密碼來加密數(shù)據(jù)庫時(shí),所有其他工具都無法讀取數(shù)據(jù),并強(qiáng)制用戶必須輸入密碼才能使用數(shù)據(jù)庫。在 Access 2010 中應(yīng)用的加密所使用的算法比早期版本的 Access 使用的算法更強(qiáng)。
注釋 如果在 Access 2007 中使用了數(shù)據(jù)庫密碼來加密數(shù)據(jù)庫,則可能需要切換到新的加密技術(shù),這有助于提供更高的安全性。
將加密的 ACCESS 2007 數(shù)據(jù)庫切換到新的加密技術(shù)
若要切換到新的加密技術(shù),請刪除當(dāng)前的數(shù)據(jù)庫密碼,然后重新添加此密碼。
通過使用數(shù)據(jù)庫密碼進(jìn)行加密
1. | 在獨(dú)占模式下打開要加密的數(shù)據(jù)庫。 |
在獨(dú)占模式下打開數(shù)據(jù)庫
1. | 在“文件”選項(xiàng)卡上,單擊“打開”。 |
2. | 在“打開”對話框中,通過瀏覽找到要打開的文件,然后選擇文件。 |
3. | 單擊“打開”按鈕旁邊的箭頭,然后單擊“以獨(dú)占方式打開”。 |
2. | 在“文件”選項(xiàng)卡上,單擊“信息”,再單擊“用密碼進(jìn)行加密”。 |
隨即出現(xiàn)“設(shè)置數(shù)據(jù)庫密碼”對話框。
3. | 在“密碼”框中鍵入密碼,然后在“驗(yàn)證”字段中再次鍵入該密碼。 |
注釋
解密并打開數(shù)據(jù)庫
1. | 以通常打開其他任何數(shù)據(jù)庫的方式打開加密的數(shù)據(jù)庫。 |
隨即出現(xiàn)“要求輸入密碼”對話框。
2. | 在“輸入數(shù)據(jù)庫密碼”框中鍵入密碼,然后單擊“確定”。 |
去掉密碼
1. | 在“文件”選項(xiàng)卡上,單擊“信息”,再單擊“解密數(shù)據(jù)庫”。 |
將出現(xiàn)“撤消數(shù)據(jù)庫密碼”對話框。
返回頁首
如何對在 Access 2010 中打開的由早期版本的 Access 創(chuàng)建的數(shù)據(jù)庫應(yīng)用安全性
打開在早期版本的 Access 中創(chuàng)建的數(shù)據(jù)庫時(shí),任何應(yīng)用于該數(shù)據(jù)庫的安全功能仍然有效。例如,如果已將用戶級(jí)安全應(yīng)用于數(shù)據(jù)庫,則該功能在 Access 2010 中仍然有效。
默認(rèn)情況下,Access 在禁用模式下打開所有低版本的不受信任數(shù)據(jù)庫,并使它們保持該狀態(tài)。您可以選擇在每次打開低版本數(shù)據(jù)庫時(shí)啟用任何禁用內(nèi)容,或可以使用來自受信任發(fā)布者的證書來應(yīng)用數(shù)字簽名,也可以將數(shù)據(jù)庫放在受信任的位置。
要點(diǎn) 此部分中的步驟不適用于使用任何一種新文件格式 (*.accd?) 的數(shù)據(jù)庫。
對于使用舊文件格式的數(shù)據(jù)庫,可以向該數(shù)據(jù)庫中的組件應(yīng)用數(shù)字簽名 (數(shù)字簽名:宏或文檔上電子的、基于加密的安全驗(yàn)證戳。此簽名確認(rèn)該宏或文檔來自簽發(fā)者且沒有被篡改。)。通過數(shù)字簽名,可以確認(rèn)數(shù)據(jù)庫中的所有宏、代碼模塊及其他可執(zhí)行組件都源自該簽署者,并且自數(shù)據(jù)庫被簽名以來沒有人對它進(jìn)行過更改。
若要將簽名應(yīng)用于數(shù)據(jù)庫,首先需要一個(gè)數(shù)字證書。如果您是出于商業(yè)分發(fā)目的而創(chuàng)建數(shù)據(jù)庫,則必須從商業(yè)證書頒發(fā)機(jī)構(gòu) (CA) 獲取證書。這些證書頒發(fā)機(jī)構(gòu)會(huì)進(jìn)行背景調(diào)查,確保內(nèi)容(如數(shù)據(jù)庫)的創(chuàng)建者是值得信任的。
若要了解有關(guān)為 Microsoft 產(chǎn)品提供服務(wù)的證書頒發(fā)機(jī)構(gòu)的更多信息,請參閱請參閱部分。
如果要將數(shù)據(jù)庫用于個(gè)人目的或有限的工作組場合,可以使用 Microsoft Office Professional 2007 提供的工具創(chuàng)建自簽名證書。下面各部分中的步驟將解釋如何安裝并使用名為 SelfCert.exe 的工具創(chuàng)建自簽名證書。
創(chuàng)建自簽名證書
1. | 通過瀏覽找到包含 Office 2010 程序文件的文件夾。默認(rèn)文件夾為驅(qū)動(dòng)器:\Program Files\Microsoft Office\Office14。在該文件夾中,找到并雙擊“SelfCert.exe”。 |
將出現(xiàn)“創(chuàng)建數(shù)字證書”對話框。
2. | 在“您的證書名稱”框中,鍵入新測試證書的名稱。 |
注釋 如果您未看到“VBA 項(xiàng)目的數(shù)字證書”命令或找不到 SelfCert.exe,則可能需要安裝 SELFCERT。
對數(shù)據(jù)庫進(jìn)行代碼簽名
注釋 請記住,僅當(dāng)所用數(shù)據(jù)庫使用的是舊數(shù)據(jù)庫文件格式(如 .mdb 文件)時(shí),這些步驟才適用。若要對更新的數(shù)據(jù)庫進(jìn)行簽名,請參閱打包、簽署和分發(fā) ACCESS 數(shù)據(jù)庫一節(jié)。
2. | 在“數(shù)據(jù)庫工具”選項(xiàng)卡上的“宏”組中,單擊“Visual Basic”以啟動(dòng) Visual Basic 編輯器。 |
鍵盤快捷方式 按 Alt+F11。
3. | 在“項(xiàng)目資源管理器”窗口中,選擇要簽名的數(shù)據(jù)庫或 Visual Basic for Applications (VBA) 項(xiàng)目。 |
4. | 在“工具”菜單上,單擊“數(shù)字簽名”。 |
出現(xiàn)“數(shù)字簽名”對話框。
將出現(xiàn)“選擇證書”對話框。
如果您是按照前一部分中的步驟操作的,請選擇使用 SelfCert 創(chuàng)建的證書。
7. | 單擊“確定”以關(guān)閉“自我證書”對話框,然后再次單擊“確定”以關(guān)閉“數(shù)字簽名”對話框。 |
有關(guān)對早期版本數(shù)據(jù)庫進(jìn)行簽名的提示
✍ | 若要避免您的解決方案用戶因無意中修改 VBA 項(xiàng)目而使簽名無效,請先鎖定 VBA 項(xiàng)目,然后再對其進(jìn)行簽名。 |
注釋 鎖定 VBA 項(xiàng)目并不會(huì)防止其他用戶將您的數(shù)字簽名替換為其他簽名。企業(yè)管理員可能對模板 (模板:是指一個(gè)或多個(gè)文件,其中所包含的結(jié)構(gòu)和工具構(gòu)成了已完成文件的樣式和頁面布局等元素。例如,WORD 模板能夠生成單個(gè)文檔,而 FRONTPAGE 模板可以形成整個(gè)網(wǎng)站。)和加載項(xiàng) (加載項(xiàng):為 MICROSOFT OFFICE 提供自定義命令或自定義功能的補(bǔ)充程序。)重新簽名,以便精確地控制哪些用戶可以在相應(yīng)的計(jì)算機(jī)上運(yùn)行模板和加載項(xiàng)。
✍ | 在對 VBA 項(xiàng)目進(jìn)行數(shù)字簽名時(shí),請考慮獲取一個(gè)時(shí)間戳,這樣即使用于簽名的證書已過期,其他人仍可對該簽名進(jìn)行驗(yàn)證。請參閱 Microsoft Office Online 以了解有關(guān) VBA 安全性和時(shí)間戳的更多信息。 |
注釋 請記住,僅當(dāng)在 Access 2010 中使用具有舊文件格式的數(shù)據(jù)庫時(shí),這些步驟才適用。若要對更新的數(shù)據(jù)庫進(jìn)行簽名,請參閱打包、簽署和分發(fā) ACCESS 數(shù)據(jù)庫一節(jié)。
安裝 SelfCert.exe
1. | 啟動(dòng) Office 2010 安裝 CD 或其他安裝媒體。 |
2. | 在安裝程序中,單擊“添加或刪除功能”,然后單擊“繼續(xù)”。 |
注釋 如果您工作環(huán)境中的 Microsoft Office 是由 IT 管理員(而不是通過 CD)安裝在各個(gè)計(jì)算機(jī)上的,請按以下步驟執(zhí)行操作:
1. | 在 Microsoft Windows 中,打開“控制面板”。 |
3. | 選擇“Microsoft Office 2010”,然后單擊“更改”。 |
安裝程序啟動(dòng)。
4. | 單擊“添加或刪除功能”,然后單擊“繼續(xù)”。 |
3. | 單擊“Microsoft Office”和“Office 共享功能”節(jié)點(diǎn)旁邊的加號(hào) (+) 將它們展開。 |
4. | 單擊“VBA 項(xiàng)目的數(shù)字證書”。 |
7. | 安裝完成之后單擊“關(guān)閉”,然后返回本部分的第一組步驟。 |
返回頁首
運(yùn)行不安全的表達(dá)式(禁用沙盒模式)
在向數(shù)據(jù)庫添加表達(dá)式,然后信任該數(shù)據(jù)庫或?qū)⑺旁谑苄湃挝恢脮r(shí),Access 將在稱為“沙盒模式”的操作環(huán)境中運(yùn)行此表達(dá)式。Access 將對以 Access 或更早的 Access 文件格式創(chuàng)建的數(shù)據(jù)庫執(zhí)行此操作。默認(rèn)情況下,Access 啟用沙盒模式,該模式始終禁用不安全的表達(dá)式(甚至在您信任數(shù)據(jù)庫之后)。有關(guān)沙盒模式禁用的表達(dá)式的詳細(xì)信息,請參閱 Microsoft Office.com 的關(guān)于 Microsoft Jet Expression Service 沙盒模式一文。
如果您信任數(shù)據(jù)庫并且要運(yùn)行沙盒模式所禁用的表達(dá)式,可以通過更改注冊表項(xiàng)并禁用沙盒模式來運(yùn)行該表達(dá)式。記住,必須先信任數(shù)據(jù)庫,然后才能執(zhí)行這些步驟。
下圖顯示了運(yùn)行不安全表達(dá)式時(shí)的決策過程。
如果您不熟悉注冊表,或者對于更改注冊表項(xiàng)沒有把握,請與能勝任這項(xiàng)工作的人聯(lián)系,或考慮將由早期版本的 Access 創(chuàng)建的數(shù)據(jù)庫轉(zhuǎn)換為更新的文件格式。此外,您還必須擁有計(jì)算機(jī)上的管理員權(quán)限才能更改注冊表值。
更改注冊表項(xiàng)
要點(diǎn) 按照下列步驟進(jìn)行操作可以允許計(jì)算機(jī)上的所有用戶在所有 Access 實(shí)例中運(yùn)行不安全的表達(dá)式。
1. | 在 Microsoft Windows 中,單擊“開始”按鈕,然后單擊“運(yùn)行”。 |
2. | 在“打開”框中,鍵入 regedit,然后按 Enter。 |
即會(huì)啟動(dòng)注冊表編輯器。
3. | 展開 HKEY_LOCAL_MACHINE 文件夾,導(dǎo)航到以下注冊表項(xiàng): |
\Software\Microsoft\Office\14.0\Access Connectivity Engine\Engines
4. | 在注冊表編輯器的右窗格中,雙擊“SandboxMode”值。 |
即會(huì)出現(xiàn)“編輯 DWORD 值”對話框。
5. | 在“數(shù)值數(shù)據(jù)”字段中,將值從“3”更改為“2”,然后單擊“確定”。 |
重要提示 請記住,如果不先信任數(shù)據(jù)庫,那么,不管您是否更改此注冊表設(shè)置,Access 都將禁用任何不安全的表達(dá)式。
返回頁首