回覆列表
  • 1 # 使用者9231804048218

    當資料被儲存時候被加密,它們被使用的時候就會自動加密。在其他的情況下,你可以選擇資料是否要被加密。SQL Server資料庫可以加密下列這些元件:密碼儲存過程,檢視,觸發器,使用者自定義函式,預設值,和規則。

    在伺服器和使用者之間傳輸的資料密碼加密SQL Server自動將你分配給登陸和應用角色的密碼加密。儘管當你可以從主資料庫中直接察看系統表格而不需要密碼。你不能給對這種情況作出任何修改,事實上,你根本不能破壞它。

    定義加密在有些時候,如果對物件進行加密是防止將一些資訊分享給他人。例如,一個儲存程序可能包含所有者的商業資訊,但是這個資訊不能和讓其他的人看到,即使他們公開的系統表格並可以看到物件的定義。這就是為什麼SQL Server資料庫允許你在建立一個物件的時候進行加密。為了加密一個儲存程序,使用下面形式的CREAT PROCEDURE 語句:

    CREATEPROCEDUREprocedurename[;number]

    [@parameterdatatype

    [VARYING][=defaultvalue][OUTPUT]]

    [,]

    [WITHRECOMPILE|ENCRYPTION|RECOMPILE,ENCRYPTION]

    我們關心的僅僅是可選的WITH引數。你可以詳細說明ARECOMPILE或者ENCRYPTION,或者你可以同時說明它們。ENCRYPTION關鍵字保護SQL Server資料庫它不被公開在程序中。結果,如果ENCRYPTION在啟用的時候系統儲存程序sp_helptext就會被忽視,這個儲存程序將被儲存在使用者建立程序的文字中。

    如果你不想要加密,你可以使用ALTER PROCEDURE,忽略WITH ENCRYPTION子句來重新建立一個程序。

    為了能夠使用加密。使用者和伺服器都應該使用TCP/IP NetworkLibraries用來連線。執行適當的Network Utility和檢查Force protocol encryption,看下錶,使用者和伺服器之間的連線將不會被加密。

    加密也不能完全自由。當連線確定後原始碼天空

    ,要繼續其他的構造,並且使用者和伺服器必須執行程式碼來解釋加密和解釋的包裹。這裡將需要一些開銷並且當在編譯碼的時候會使程序慢下來。

  • 中秋節和大豐收的關聯?
  • 最近吳秀波為什麼這麼火?大家怎麼看?