مرجع تخصصی برنامه نویسان

انجمن تخصصی برنامه نویسان فارسی زبان

کاربر سایت

computersaba

عضویت از 1395/04/03

رمز نگاری در sqlserver

  • پنجشنبه 11 آذر 1395
  • 12:58
تشکر میکنم

سلام اقای مدائنی 

من توسط اسکریپت زیر فیلد رمز عبور از جدول کابران رو جهت امنیت رمزنگاری کردم همه چیز اوکی هستش 

اما از همین کلید میخوام استفاده کنم و فیلد دیگری رو از جدول دیگر داخل همون دیتا بیس رمز کنم .اما کارش رو بدرستی انجام نمیده .یعنی فیلد مربوطه رمز میشه اما در هنگام select  کردن از حالت رمز نمیتونه خارج شه .لطفا یه چک بفرمایید مشکل رو بهم بگید

ممنون

ساخت کلید با certificate

create master key Encryption By password='mobcol'

create certificate mobtake
with subject='Dastmozd';
create symmetric key passwordcolumn
with algorithm =triple_des
encryption By certificate mobtak;

هنگام ورود اطلاعات فیلد مورد نظر کد میشود

INSERT INTO [dbo].[user]
           ([name]
           ,[username]
           ,[password]
           ,[email])
     VALUES
           (@name
           ,@username
           ,@password
           ,@email)
          open symmetric key passwordcolumn
decryption by certificate mobtak
update newuser set password=ENCRYPTBYKEY(KEY_guid('passwordcolumn'),password);
close symmetric key passwordcolumn;

در هنگام select  کردن از دستور زیر استفاده میکنم .

open symmetric key passwordcolumn
decryption by certificate mobtak
select newuser.*, CONVERT(nvarchar(max),DECRYPTBYKEY(password)) as Depassword from newuser
where username=@n
close symmetric key passwordcolumn;
با این تفسیر این کدها روی جدول یوزرها درست کار میکنه اما همینکه همین ها رو روی جدول دسترسی ها میخوام ست کنم کار نمیکنه
لطفا چک بفرمایید

پاسخ های این پرسش

تعداد پاسخ ها : 0 پاسخ
در حال حاضر هیچ پاسخی ارسال نشده است
کاربرانی که از این پست تشکر کرده اند

هیچ کاربری تا کنون از این پست تشکر نکرده است

اگر نیاز به یک مشاور در زمینه طراحی سایت ، برنامه نویسی و بازاریابی الکترونیکی دارید

با ما تماس بگیرید تا در این مسیر همراهتان باشیم :)