sql如何加密碼
1、首先我們電腦上要安裝有SQL Server,然後要准備一個MDF資料庫文件。打開SQL Server。
❷ SQL資料庫安裝後怎樣設置密碼
1、進入企業管理器-->點擊伺服器--〉安全性--〉登錄--〉sa屬性--〉輸入新密碼即可。
2、設置登陸企業管理器密碼:
右擊伺服器--〉編輯SQL Sever 注冊屬性--〉使用SQL Sever 身份驗證,總是提示輸入名和密碼。
❸ 請問SQL怎麼對數據進行加密
--以下代碼包括創建密鑰,加密,解密和刪除密鑰
/*
1.利用對稱密鑰
搭配EncryptByKey進行數據加密
使用DecryptByKey函數進行解密
這種方式比較適合大數據量
*/
='XIAOMA'
='ZXCCERTIFICATE',EXPIRY_DATE='2015/01/01'
CREATESYMMETRICKEYSYM_TOMWITHALGORITHM=
OPENSYMMETRICKEYSYM_
SELECTCONVERT(NVARCHAR(10),Decryptbykey((Encryptbykey(Key_guid('SYM_TOM'),N'TOM3'))))
CLOSESYMMETRICKEYSYM_TOM
DROPSYMMETRICKEYSYM_TOM
DROPCERTIFICATETOMCERT;
DROPMASTERKEY;
--或--
=AES_256ENCRYPTIONBYPASSWORD='ZXC123456'
='ZXC123456'
SELECTCONVERT(VARCHAR(10),Decryptbykey(Encryptbykey(Key_guid('ZXC'),'YHDH_C')))
CLOSESYMMETRICKEYZXC;
DROPSYMMETRICKEYZXC;
/*
2.利用非對稱密鑰
搭配EncryptByAsymKey進行數據加密
使用DecryptByAsymKey函數進行解密
用於更高安全級別的加解密數據
*/
='XIAOMA'
=RSA_2048ENCRYPTIONBYPASSWORD='ZXC123456'
(DECRYPTIONBYPASSWORD='ZXC123456')
SELECTCONVERT(VARCHAR(100),Decryptbyasymkey(Asymkey_id('ABC'),Encryptbyasymkey(Asymkey_id('ABC'),'ZXC123456')))
DROPASYMMETRICKEYABC;
DROPMASTERKEY
/*
3.利用憑證的方式
搭配EncryptByCert進行加密
DecryptByCert函數進行解密
比較類似非對稱密鑰
*/
='XIAOMA'
='ZXCCERTIFICATE',EXPIRY_DATE='2015/01/01'
SELECTCONVERT(VARCHAR(20),Decryptbycert(Cert_id('ZXC'),Encryptbycert(Cert_id('ZXC'),'123456')))
DROPCERTIFICATEZXC;
DROPMASTERKEY
--或--
='Mary5',
SECRET='123456';
ALTERLOGINUser1
ADDCREDENTIALAlterEgo
DropCREDENTIALAlterEgo
DROPCREDENTIALAlterEgo
/*
4.利用密碼短語方式
搭配EncryptBypassPhrase進行加密
使用DecryptByPassPhrase函數來解密
比較適合一般的數據加解密
*/
SELECTCONVERT(VARCHAR(100),Decryptbypassphrase('xiaoma',Encryptbypassphrase('xiaoma','123456')))
❹ sql server 2008 怎麼設置資料庫密碼
1、先用Window身份驗證方式登陸進去,選擇資料庫實例,右鍵選擇屬性——安全性:把伺服器身份驗證選項從「Window身份驗證模式」改為「SQLServer和Window身份驗證模式」。點擊確定,關閉當前對象資源管理器。
注意:
1、如果忘記了sa的登錄密碼,可以先用windows身份認證登錄進去,然後新建查詢,輸入命令:
EXECUTEsp_passwordNULL,'輸入新密碼','sa'
2、設置sa新的密碼,然後就可以用sa用戶名進行SQL Server登錄了。
3、另外,在獲得管理員許可權的情況下,可以用命令行添加SQL用戶
先建立一個c: est.qry文件,內容如下:
exec master.dbo.sp_addlogin test,123
EXEC sp_addsrvrolemember test, sysadmin
4、然後在DOS下執行:cmd.exe /c isql -E /U alma /P /i c: est.qry
❺ 如何設置sql server資料庫的用戶名和密碼
1.大多數
Windows
用戶都需要一個
SQL
Server
登錄名以便連接到
SQL
Server。本主題說明了如何創建
SQL
Server
登錄名。
2.創建使用
Windows
身份驗證
(SQL
Server
Management
Studio)
的
SQL
Server
登錄名
3.在
SQL
Server
Management
Studio
中,打開對象資源管理器並展開要在其中創建新登錄名的伺服器實例的文件夾。
4.右鍵單擊「安全性」文件夾,指向「新建」,然後單擊「登錄名」。
5.在「常規」頁上的「登錄名」框中輸入一個
Windows
用戶名。
6.選擇「Windows
身份驗證」。
7.單擊「確定」。
8.創建使用
SQL
Server
身份驗證
(SQL
Server
Management
Studio)
的
SQL
Server
登錄名
9.在
SQL
Server
Management
Studio
中,打開對象資源管理器並展開要在其中創建新登錄名的伺服器實例的文件夾。
10.右鍵單擊「安全性」文件夾,指向「新建」,然後單擊「登錄名」。
11.在「常規」頁上的「登錄名」框中輸入一個新登錄名的名稱。
12.選擇「SQL
Server
身份驗證」。Windows
身份驗證是更安全的選擇。
輸入登錄名的密碼。
13.選擇應當應用於新登錄名的密碼策略選項。通常,強制密碼策略是更安全的選擇。
單擊「確定」。
14.通過
Transact-SQL
創建使用
Windows
身份驗證的
SQL
Server
登錄名
在查詢編輯器中,輸入以下
Transact-SQL
命令:CREATE
LOGIN
<name
of
Windows
User>
FROM
WINDOWS;
GO
15.通過
Transact-SQL
創建使用
SQL
Server
身份驗證的
SQL
Server
登錄名
在查詢編輯器中,輸入以下
Transact-SQL
命令:CREATE
LOGIN
<login
name>
WITH
PASSWORD
=
'<password>'
;
GO
❻ 如何用sql語句添加資料庫用戶/密碼
sp_addlogin [ @loginame = ] 'login'
[ , [ @passwd = ] 'password' ]
[ , [ @defdb = ] 'database' ]
[ , [ @deflanguage = ] 'language' ]
[ , [ @sid = ] sid ]
[ , [ @encryptopt = ] 'encryption_option' ]
參數
[@loginame =] 'login'
登錄的名稱。login 的數據類型為 sysname,沒有默認設置。
[@passwd =] 'password'
登錄密碼。password 的數據類型為 sysname,默認設置為 NULL。sp_addlogin 執行後,password 被加密並存儲在系統表中。
[@defdb =] 'database'
登錄的默認資料庫(登錄後登錄所連接到的資料庫)。database 的數據類型為 sysname,默認設置為 master。
[@deflanguage =] 'language'
用戶登錄到 SQL Server 時系統指派的默認語言。language 的數據類型為 sysname,默認設置為 NULL。如果沒有指定 language,那麼 language 被設置為伺服器當前的默認語言(由 sp_configure 配置變數 default language 定義)。更改伺服器的默認語言不會更改現有登錄的默認語言。language 保持與添加登錄時所使用的默認語言相同。
[@sid =] sid
安全標識號 (SID)。sid 的數據類型為 varbinary(16),默認設置為 NULL。如果 sid 為 NULL,則系統為新登錄生成 SID。盡管使用 varbinary 數據類型,非 NULL 的值也必須正好為 16 個位元組長度,且不能事先存在。SID 很有用,例如,如果要編寫 SQL Server 登錄腳本,或要將 SQL Server 登錄從一台伺服器移動到另一台,並且希望登錄在伺服器間具有相同的 SID 時。
[@encryptopt =] 'encryption_option'
指定當密碼存儲在系統表中時,密碼是否要加密。encryption_option 的數據類型為 varchar(20),可以是下列值之一。
值 描述
NULL 加密密碼。這是默認設置。
skip_encryption 密碼已加密。SQL Server 應該存儲值而且不用重新對其加密。
skip_encryption_old 已提供的密碼由 SQL Server 較早版本加密。SQL Server 應該存儲值而且不用重新對其加密。此選項只供升級使用。
返回代碼值
0(成功)或 1(失敗)
❼ SQL如何加密
對MSSQL的用戶信息有興趣的,可能會發現master.dbo.sysxlogins裡面存放著用戶的口令,可是呢,password欄位如果不是null就是一堆看不懂的binary,這個口令是怎麼加密的呢?
其實只要仔細看看master.dbo.sp_addlogin就知道了,MSSQL的sp都可以看到代碼,真是不錯。
讓我們來看看它是怎麼做的,注意這一行select @passwd = pwdencrypt(@passwd),這個時後@passwd就被加密了,讓我們也來試一下
DECLARE @ClearPWD varchar(255)
DECLARE @EncryptedPWD varbinary(255)
SELECT @ClearPWD = 'test'
SELECT @EncryptedPWD = CONVERT(varbinary(255), pwdencrypt(@ClearPWD))
SELECT @EncryptedPWD
看上去不錯,確實被加密了,可是我怎麼還原呢?
呵呵,這就沒戲了,口令加密都是單向的,用加密後的密文來比較就可以了。
繼續看看其它用戶相關的sp,可以發現master.dbo.sp_password裡面有口令比較的內容。
pwdcompare(@old, password, (CASE WHEN xstatus&2048 = 2048 THEN 1 ELSE 0 END))
不用去理會xstatus,這是一個狀態掩碼,一般我們用的時候就直接用0就可以了
DECLARE @ClearPWD varchar(255)
DECLARE @EncryptedPWD varbinary(255)
SELECT @ClearPWD = 'test'
SELECT @EncryptedPWD = CONVERT(varbinary(255), pwdencrypt(@ClearPWD))
SELECT pwdcompare(@ClearPWD, @EncryptedPWD, 0)
SELECT pwdcompare('ErrorPassword', @EncryptedPWD, 0)
這樣我們就可以使用這兩個函數來加密自己的密碼了