نمایش نتایج 1 تا 15 از 15

نام تاپیک: مشخص کردن اینکه کدام user در حال اجرای دستورات است

  1. #1

    مشخص کردن اینکه کدام user در حال اجرای دستورات است

    سلام دوستان
    من می خوام از طریق برنامه نویسی مشخص کنم که کدام کاربر هست که در حال اجرای query میباشد.
    چون کاربران مختلف دسترسی های مختلفی دارن و می خوام مطمئن شوم که کاربر x اجازه ی دسترسی به فلان table را دارد و کاربر y اجاره ی این دسترسی را ندارد.در محیط sql این کدو بلدم.execute as user
    که که جلوی user یک علامت = سپس اسم user را مینویسیم اما در برنامه نویسی بلد نیستم.در ضمن درست کردن user,grant,deny هم میدونم.

  2. #2

    نقل قول: مشخص کردن اینکه کدام user در حال اجرای دستورات است

    کسی نبود؟اگه کسی بخواهد user تعریف کنه وبعدش مشخص کنه که کدام user داره دستوراتو اجرا میکنه باید چه کار کرد؟

  3. #3
    کاربر دائمی آواتار fjm11100
    تاریخ عضویت
    خرداد 1387
    محل زندگی
    تهران
    سن
    43
    پست
    658

    نقل قول: مشخص کردن اینکه کدام user در حال اجرای دستورات است

    سوالت برای من واضح نبود اما اگر میخوای توی کدت بدونی که کدام کاربرت داره کوئری اجرا میکنه میتونی همون جایی که داری کانکشن استرینگ را پاس میکنی اسم کاربر را ببینی!!!
    اگه مشکلت را واضحتر بگی بهتر میتونم کمکت کنم

  4. #4

    نقل قول: مشخص کردن اینکه کدام user در حال اجرای دستورات است

    نقل قول نوشته شده توسط fjm11100 مشاهده تاپیک
    سوالت برای من واضح نبود اما اگر میخوای توی کدت بدونی که کدام کاربرت داره کوئری اجرا میکنه میتونی همون جایی که داری کانکشن استرینگ را پاس میکنی اسم کاربر را ببینی!!!
    اگه مشکلت را واضحتر بگی بهتر میتونم کمکت کنم
    راستش منظور من اینه که به sqlserver بفهمونم که کسی که مثلا درخواست خواندن فلان table را داره کی هست که sqlserver ببینه که اون user آیا اجازه ی select آن table را دارد یا نه.(فرض کنید تعداد خیلی زیادی کامپیوتر داخل شبکه هست و باید مشخص بشه درخواستها از کدام کامپیوتر می آیند)
    در ضمن من تو ساختن connection فقط میتونم نام login را مشخص کنم.(در sql هم ساخت login داریم هم ساخت user ) اگه میشد که مثلا تو connection یا هر جای دیگه نام user را مشخص میکردیم خیلی خوب میشد.در ضمن ممنون که به سوال من رسیدگی میکنی.

  5. #5
    کاربر دائمی آواتار AliRezaPro
    تاریخ عضویت
    شهریور 1386
    محل زندگی
    PE Header
    پست
    1,054

    نقل قول: مشخص کردن اینکه کدام user در حال اجرای دستورات است

    یوزر شما قبل از استفاده از برنامه لاگین میکنه؟

  6. #6

    نقل قول: مشخص کردن اینکه کدام user در حال اجرای دستورات است

    نقل قول نوشته شده توسط man7tomani مشاهده تاپیک
    یوزر شما قبل از استفاده از برنامه لاگین میکنه؟
    بله.کامل وصل میشم.و هر کاری بخوام میتونم انجام بدم.ولی همه که نباید دسترسی کامل را داشته باشند.

  7. #7

    نقل قول: مشخص کردن اینکه کدام user در حال اجرای دستورات است

    سلام
    آیا عکس زیر میتواند به شما کمک کند
    عکس های ضمیمه عکس های ضمیمه

  8. #8

    نقل قول: مشخص کردن اینکه کدام user در حال اجرای دستورات است

    نقل قول نوشته شده توسط ab_ba مشاهده تاپیک
    سلام
    آیا عکس زیر میتواند به شما کمک کند
    این عکس نشان میدهد که چگونه می شود permission های مختلف به کاربر داد ولی من می خوام بعد از این مرحله که شما نشان دادید از طریق ado یا کدنویسی مشخص کنم کدام user در حال اجرای query هست.مثلا.
    select * from table
    ما می خواهیم حالا مشخص کنیم بعد از اجرای این دستور توسط sqlcommand یا هر چیز دیگر چگونه sqlserver میفهمه که کدام user درخواست همچین query را داده که بعدش معلوم بشه آیا این user حق اجرای چنین دستوری داره یا نه.
    در ضمن ما یک loginid داریم و یک userid که loginid برخی دسترسی ها مثل اجازه ی backup گرفتن واجازه ی درست کردن database و... رامشخص می کند ولی userid برخی دسترسی ها مثل اجازه ی select,insert,delete کردن یک table مشخص را معلوم میکند.در ضمن در دستور زیر ما loginid را مشخص میکنیم.
    sqlconnection conn=new sqlconnection("server=(local);user='x';password='y ';database=z")x

  9. #9

    نقل قول: مشخص کردن اینکه کدام user در حال اجرای دستورات است

    سلام
    من حتما جوابتون را پيدا ميکنم فقط تو اين 72ساعت برام ميل بزنيد که يادم باشه جواب را تو اين تايپيک بزارم.
    آخه من يه کم!!! فراموش ميکنم جوابا رو تو کدوم سايت بايد بزارم.

  10. #10
    کاربر دائمی آواتار AliRezaPro
    تاریخ عضویت
    شهریور 1386
    محل زندگی
    PE Header
    پست
    1,054

    نقل قول: مشخص کردن اینکه کدام user در حال اجرای دستورات است

    شما برای هر یوزری که تعریف میکنید در اسکیول سرور یک فیلد هم برای پرمیژن در نظر بگیرید مثلا مدیر ،مسول ،کاربر عادی یا....
    هنگام لاگین هم هر کدون ار اینایی که لاگین کردند براشون تو برنامه پرمیژن بزار مثلا فرم ها یا دکمه ها رو disable کن
    وقتی طرف داره لاگین میکنه(سلکت میزنی)مقدار اخرین فیلد (پرمیژن)رو چک کن و نسبت به هر کدوم تو برنامه حق دسترسی بده

  11. #11

    نقل قول: مشخص کردن اینکه کدام user در حال اجرای دستورات است

    دوستان از راهنمای هایتان ممنون.فکر کنم راهش را پیدا کردم.
    اول یه login درست میکنیم.
    CREATE LOGIN user87 WITH PASSWORD = 'pa$$word'x
    بعد یک user درست می کنیم و به login نسبت میدهیم
    CREATE USER user87 FOR LOGIN user87
    حالا به user می توانیم دسترسی مختلف بدهیم.
    grant select,inser on table to user87
    حالا می توانیم با login بالا به database وصل بشیم.
    sqlconnection conn=new sqlconnecton("server =(local);uid='user87';pwd='pa$$word';database=x)x
    فقط نمی دونم راه بهتری هست یا نه؟یعنی اگه 100 تا user داریم باید 100 تا login هم داشته باشیم؟

  12. #12

    نقل قول: مشخص کردن اینکه کدام user در حال اجرای دستورات است

    خب گروه بسازید. مثلا گروه کاربران محدود (فقط برای Select ) و گروه کاربران ارشد (برای Select,Insert,Update) و ... و کاربرانی که میخواهید را عضو این گروه ها بکنید
    آن لحظه که تنها اعتبار کسی که مساله ای را مطرح کرده است، شما را در اشتباه بودن ایده هایتان قانع کرد،
    آن لحظه،
    لحظه وداع شما با دنیای خلاقیت و پیشرفت خواهد بود. . .

    برنولی

  13. #13

    نقل قول: مشخص کردن اینکه کدام user در حال اجرای دستورات است

    نقل قول نوشته شده توسط razavi_university مشاهده تاپیک
    خب گروه بسازید. مثلا گروه کاربران محدود (فقط برای Select ) و گروه کاربران ارشد (برای Select,Insert,Update) و ... و کاربرانی که میخواهید را عضو این گروه ها بکنید
    برای user میشه login تعریف کرد ولی برای role نمیشه.role برای این خوبه که با کمکش میشه چند تا user با یک دسترسی خاص تعیین کرد.

  14. #14

    نقل قول: مشخص کردن اینکه کدام user در حال اجرای دستورات است

    نقل قول نوشته شده توسط ehsan153 مشاهده تاپیک
    دوستان از راهنمای هایتان ممنون.فکر کنم راهش را پیدا کردم.
    اول یه login درست میکنیم.

    CREATE LOGIN user87 WITH PASSWORD = 'pa$$word'x

    بعد یک user درست می کنیم و به login نسبت میدهیم

    CREATE USER user87 FOR LOGIN user87


    حالا به user می توانیم دسترسی مختلف بدهیم.


    grant select,inser on table to user87



    حالا می توانیم با login بالا به database وصل بشیم.


    sqlconnection conn=new sqlconnecton("server =(local);uid='user87';pwd='pa$$word';database=x)x



    فقط نمی دونم راه بهتری هست یا نه؟یعنی اگه 100 تا user داریم باید 100 تا login هم داشته باشیم؟











    دوست گرامی آیا تونستی به نتیجه ای برسی . منم مشکلم همینه اگر به جایی رسیدی برای من هم بگو

  15. #15
    کاربر دائمی آواتار اَرژنگ
    تاریخ عضویت
    آبان 1384
    محل زندگی
    arjang8000@gmail.com
    پست
    2,736

    نقل قول: مشخص کردن اینکه کدام user در حال اجرای دستورات است

    نقل قول نوشته شده توسط mnasrin مشاهده تاپیک
    دوست گرامی آیا تونستی به نتیجه ای برسی . منم مشکلم همینه اگر به جایی رسیدی برای من هم بگو
    جناب razavi_university جواب درست و اصولی را دادند.
    برایه ادامه در مورد جوابشان تحقیق کنید، روشهایه دیگر که اراعه شد من درآوردی و غیره اصولی هستند که برایه سرهم آوردن ممکنه کافی باشند ولی اصلاً اعتبار ندارند.

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •