در توسینسو تدریس کنید

و

با دانش خود درآمد کسب کنید

آیا SID کاربران و کامپیوترهای اکتیودایرکتوری را می توان عوض کرد؟

ممکن است این سئوال برای شما هم پیش آمده باشد که آیا این امکان وجود دارد که SID کاربران یا Computer Account ها را عوض کنیم یا خیر ؟ ما این مسئله را به دو قسمت تقسیم می کنیم ، قسمت اول این مورد است که شما یک کامپیوتر بصورت Stand alone دارید و این کامپیوتر بر روی خود چندین User دارد ، در چنین حالتی از نظر تئوری و فنی امکان تغییر دادن SID وجود دارد به گونه ای که در فایل SAM سیستم می توانید تعییراتی اعمال کنید .

البته منظور از فایل SAM همان کلیدهای رجیستری مربوط به آن است که در مسیر HKEY__LOCAL__MACHINE\Security قرار دارد. اما انجام اینکار و اعمال تغییرات در کلیدهای رجیستری Security نیازمند این است که شما درکی از اعداد باینری و قالب کاری آنها داشته باشید ، اما در کنار اینها ابزارهایی هستند که می توانند همینکار را انجام دهند که از جمله آنها می توانید به ابزار NewSID اشاره کنیم.

این ابزار می تواند SID های کاربران و Computer های Local را عوض کند که در حقیقت بیشتر برای مواردی که می خواهیم در شبکه SID های تکراری نداشته باشیم و Duplication در آنها به وجود نیاید از این ابزار استفاده می کنیم. توجه کنید که این ابزار کار خاصی انجام نمی دهد ، این ابزار هیچ کاری به SID قبلی شما ندارد و فقط SID جدید را تولید و به کاربر یا Computer میچسباند و به هیچ منبع خاص شبکه و سیستم دسترسی نمی دهد.

با توجه به اینکه در ساختار Local سیستم همه منابع را خودش مدیریت می کند شاید مشکل خاصی در عوض کردن SID ها پیش نیاید زیرا منابع زیادی وجود ندارد ، اما در اکتیودایرکتوری قضیه کاملا متفاوت هست ، تمامی SID ها در قالب Database ای به نام NTDS.DIT قرار گرفته اند و همه آنها بر اساس یک الگو تعریف و تعیین می شوند که این الگو توسط RID Master تعریف می شود .

اگر شما SID را تغییر دهید باید تابع قوانین RID Master باشد ، در کنار همه این مسائل با عوض شدن SID کاربر تمامی دسترسی های کاربر مورد نظر نیز در شبکه نیز تحت تاثیر قرار می گیرد زیرا مبنای اعمال دسترسی ها در شبکه SID است . بنابراین نتیجه میگیرم که منطقی نیست که ما بتوانیم SID های کاربران در شبکه دامین را تغییر دهیم و اینکار با توجه به جستجوهایی که بنده انجام داده ام تقریبا غیر ممکن است . اما همین عمل برای کاربران Local سیستم به وسیله ابزاری به نام NewSID از شرکت Sysinternals قابل انجام است. البته باز هم منتظر نظرات شما دوستان هستیم. ITPRO باشید.

نویسنده : محمد نصیری

منبع : جزیره امنیت اطلاعات و ارتباطات وب سایت توسینسو

هرگونه نشر و کپی برداری بدون ذکر منبع و نام نویسنده دارای اشکال اخلاقی می باشد

9 نظر
سعید خلیفی

فقط یک نکته محمد جان، شرکت Wininternls در سال 2006 توسط مایکروسافت خریداری شد و بسته Sysinternals زمانی ارائه شد که تحت نام مایکروسافت کار میکردن. البته مارک رازینوویچ هم که جزء قدیمی های مایکروسافت هستش.

امید رستمی

سلام استاد مرسی بابت مقاله خوبتون

یه سوال خود کامپیوتر هم sid داره؟

محمد نصیری

بله داره

امید رستمی

زماني كه ما بوسيله ي sysprep ميايم sid رو عوض مي كنيم در اصل sid كامپيوتر عوض مي كنيم؟؟؟؟

davood_59

سلام آقای مهندس نصیری

دست گلتون درد نکنه

محمد جان فقط یه ابهام برای من وجود داره اینه که:

فرض کنید تو یه کامپیوتر که هنوز join به Domain نشده ما 2 تا یوزر داریم. یکی administrator و یکی هم mohammad . وقتی که به domian میایم و join میکنیم این دستگاه رو این یوزرها هم SID هاشون عوض میشه یعنی؟

اونوقت یه کامپیوتر هم به تنهایی دارای SID هستش؟ البته آقا امید هم پرسیده بودن ولی اگه بخوایم SID یه کامپیوتر رو ببینیم کدوم خط از دستورات whoami/all رو باید نگاه کنیم؟ منظورم اینه که یه کامپیوتر بطور مستقل و جدا از هر گونه نام کاربری SIDش رو میشه ببینیم؟

متشکرم.

محمد نصیری

سلام ، خیر به هیچ عنوان این کاربرها SID هاشون عوض نمیشه چون کاربر Local هستند ... بله کامپیوتر به تنهایی یک SID داره ، شما از طریق دومین می تونید با دستور زیر SID رو بدست بیارید :

dsquery * -Filter "(name=MyComputer)" -attr objectSID
davood_59

سلام ؛ ممنونم محمد جان. دستت درد نکنه.

ولی استاد دستور شما اجرا نمیشد انگاری و پاسخ رو نمیداد. با اجازه تون یه جستجو کردم و این دستور کار می کرد:

dsquery computer -name Computername | dsget computer -sid

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

حالا اکه کامپیوتری عضو دامین نبود و Activedirectory نداشت چی؟ چجوری باید این رو پیدا کنیم؟

محمد نصیری

در Domain Controller باید بزنید ... در Local دستوری فعلا پیدا نکردم یعنی هنوز نگشتم.

davood_59

ممنونم استاد.

آره این رو میدونم که باید تو Domain بزنم چون این دستور تا active directory نصب نباشه پاسخی بهت نمیده. متشکرم.

دستور شما هم درست بود استاد. دوباره امتحان کردم و جواب داد. فقط اسم سرور رو باید تنها بنویسیم و در ادامه نیازی به نوشتن دامین کاملش نیست.

ولی در زمانی که join به دامین نباشه منم دستوری پیدا نکردم علیرغم اینکه جستجو هم کردم. حالا فردا باز اگه پیدا کنم همینجا براتون میذارم.

نظر شما
برای ارسال نظر باید وارد شوید.
از سرتاسر توسینسو
تنظیمات حریم خصوصی
تائید صرفنظر
×

تو می تونی بهترین نتیجه رو تضمینی با بهترین های ایران بدست بیاری ، پس مقایسه کن و بعد خرید کن : فقط توی جشنواره تابستانه می تونی امروز ارزونتر از فردا خرید کنی ....