أنت غير متصل حاليًا، وفي انتظار الإنترنت الخاص بك ليقوم بإعادة الاتصال

إن المستعرض الذي تستخدمه غير معتمد

إنك تحتاج إلى تحديث المستعرض لاستخدام الموقع.

التحديث إلى أحدث إصدار من Internet Explorer

كيفية تغيير كلمة المرور اسم مستخدم Windows 2000 عبر LDAP

هام: تمت ترجمة هذا المقال باستخدام برنامج ترجمة آلية لشركة مايكروسوفت بدلاً من الاستعانة بمترجم بشري. تقدم شركة مايكروسوفت كلاً من المقالات المترجمة بواسطة المترجمين البشر والمقالات المترجمة آليًا وبالتالي ستتمكن من الوصول إلى كل المقالات الموجودة في قاعدة المعرفة الخاصة بنا وباللغة الخاصة بك. بالرغم من ذلك، فإن المقالة المترجمة آليًا لا تكون دقيقة دائمًا وقد تحتوي على أخطاء إملائية أو لغوية أو نحوية، مثل تلك الأخطاء الصادرة عن متحدث أجنبي عندما يتحدث بلغتك. لا تتحمل شركة مايكروسوفت مسئولية عدم الدقة أو الأخطاء أو الضرر الناتج عن أية أخطاء في ترجمة المحتوى أو استخدامه من قبل عملائنا. تعمل شركة مايكروسوفت باستمرار على ترقية برنامج الترجمة الآلية

اضغط هنا لرابط المقالة باللغة الانجليزية269190
ملاحظة
تنطبق هذه المقالة على Windows 2000. الدعم لـ Windows 2000 تنتهي في 13 يوليو 2010.Windows 2000 End-of-Support Solution Center نقطة بداية لتخطيط استراتيجية الترحيل الخاص بك من نظام التشغيل Windows 2000. لمزيد من المعلومات راجع Microsoft Support Lifecycle Policy.
الموجز
يمكنك تعيين كلمة مرور المستخدم في Windows 2000 خلال الخفيف لتغيير بيانات الدليل بروتوكول (LDAP) إعطاء بعض القيود. توضح هذه المقالة كيفية تعيين أو تغيير السمة كلمة المرور.
معلومات أخرى
يتم تخزين كلمة المرور في "Active Directory" على كائن مستخدم في السمة unicodePwd. لا يمكن كتابة هذه السمة ظروف مقيدة ولكن لا يمكن قراءته. يمكن تعديل السمة فقط; لا يمكن إضافة على إنشاء كائن أو الاستعلام عنها بواسطة إجراء بحث. لتعديل هذه السمة يجب أن يكون لدى العميل اتصال طبقة مآخذ توصيل آمنة (SSL) 128 بت إلى الملقم. لهذا الاتصال يكون ممكناً، يجب على الملقم معالجة شهادة ملقم لاتصال RSA 128-بت العميل يجب أن تثق في المرجع المصدق (CA) الذي أنشأ شهادة الملقم و العميل والملقم يجب أن تكون قادرة على تشفير 128-بت.

سلسلة ثماني بتات بناء جملة السمة unicodePwd; مع ذلك، خدمة دليل يتوقع أن سلسلة ثماني بتات سوف تحتوي على سلسلة UNICODE (كما يشير إلى اسم السمة). يجب أن يكون هذا يعني أن أية قيم الخاص بهذه السمة تمريره LDAP سلاسل UNICODE يتم ترميز BER (أساسي ترميز قواعد) بأنه سلسلة ثماني بتات. بالإضافة إلى ذلك، سلسلة UNICODE يجب أن تبدأ وتنتهي بعلامات اقتباس ليست جزءاً من كلمة المرور المطلوبة.

هناك طريقتان يمكن تعديل السمة unicodePwd. يشبه الأول عادي "المستخدم تغيير كلمة المرور" العملية. في هذه الحالة، يجب أن يحتوي الطلب على تعديل كل حذف و عملية وظيفة. عملية الحذف يجب أن تحتوي كلمة المرور الحالية مع علامات الاقتباس حوله. يجب أن تتضمن عملية إضافة المطلوب كلمة المرور الجديدة مع علامات الاقتباس حوله.

الطريقة الثانية لتعديل هذه السمة يماثل مسؤول إعادة تعيين كلمة مرور مستخدم. للقيام بذلك، عليك ربط العميل كمستخدم لديه الأذونات الكافية لتعديل كلمة المرور الخاصة بمستخدم آخر. يجب أن يحتوي على هذا الطلب تعديل عملية استبدال مفرد بكلمة المرور المطلوبة محاطاً علامات الاقتباس. إذا كان العميل الأذونات الكافية تصبح كلمة المرور هذه كلمة المرور الجديدة بغض النظر عن ما كانت كلمة المرور القديمة.

توفر الوظائف جهازي التالية أمثلة هذه العمليات:
ULONG ChangeUserPassword(WCHAR* pszUserDN, WCHAR* pszOldPassword,WCHAR* pszNewPassword){	ULONG err = 1;	LDAPMod modNewPassword;	LDAPMod modOldPassword;	LDAPMod *modEntry[3];	BERVAL newPwdBerVal;	BERVAL oldPwdBerVal;	BERVAL *newPwd_attr[2];	BERVAL *oldPwd_attr[2];	WCHAR pszNewPasswordWithQuotes[1024];	WCHAR pszOldPasswordWithQuotes[1024];	// Build an array of LDAPMod.	// For setting unicodePwd, this MUST be a double op.	modEntry[0] = &modOldPassword;	modEntry[1] = &modNewPassword;	modEntry[2] = NULL;	// Build mod struct for unicodePwd Add.	modNewPassword.mod_op = LDAP_MOD_ADD | LDAP_MOD_BVALUES;	modNewPassword.mod_type =	L"unicodePwd";	modNewPassword.mod_vals.modv_bvals = newPwd_attr;	// Build mod struct for unicodePwd Delete.	modOldPassword.mod_op = LDAP_MOD_DELETE | LDAP_MOD_BVALUES;	modOldPassword.mod_type =	L"unicodePwd";	modOldPassword.mod_vals.modv_bvals = oldPwd_attr;	// Password will be single valued, so we only have one element.	newPwd_attr[0] = &newPwdBerVal;	newPwd_attr[1]= NULL;	oldPwd_attr[0] = &oldPwdBerVal;	oldPwd_attr[1]= NULL;	// Surround the passwords in quotes.	wsprintf(pszNewPasswordWithQuotes,L"\"%s\"",pszNewPassword);	wsprintf(pszOldPasswordWithQuotes,L"\"%s\"",pszOldPassword);	// Build the BER structures with the UNICODE passwords w/quotes.	newPwdBerVal.bv_len = wcslen(pszNewPasswordWithQuotes) * sizeof(WCHAR);	newPwdBerVal.bv_val = (char*)pszNewPasswordWithQuotes;	oldPwdBerVal.bv_len = wcslen(pszOldPasswordWithQuotes) * sizeof(WCHAR);	oldPwdBerVal.bv_val = (char*)pszOldPasswordWithQuotes;	// Perform single modify.	err = ldap_modify_s(ldapConnection,				pszUserDN,				modEntry				);	if (err == LDAP_SUCCESS )		wprintf(L"\nPassword succesfully changed!\n");	else		wprintf(L"\nPassword change failed!\n");	return err;}ULONG SetUserPassword(WCHAR* pszUserDN, WCHAR* pszPassword){	ULONG err = 1;	LDAPMod modPassword;	LDAPMod *modEntry[2];	BERVAL pwdBerVal;	BERVAL *pwd_attr[2];	WCHAR pszPasswordWithQuotes[1024];	// Build an array of LDAPMod.	// For setting unicodePwd, this MUST be a single op.	modEntry[0] = &modPassword;	modEntry[1] = NULL;	// Build mod struct for unicodePwd. 	modPassword.mod_op = LDAP_MOD_REPLACE | LDAP_MOD_BVALUES;	modPassword.mod_type =	L"unicodePwd";	modPassword.mod_vals.modv_bvals = pwd_attr;	// Password will be single valued, so we only have one element.	pwd_attr[0] = &pwdBerVal;	pwd_attr[1]= NULL;	// Surround the password in quotes.	wsprintf(pszPasswordWithQuotes,L"\"%s\"",pszPassword);	// Build the BER structure with the UNICODE password.	pwdBerVal.bv_len = wcslen(pszPasswordWithQuotes) * sizeof(WCHAR);	pwdBerVal.bv_val = (char*)pszPasswordWithQuotes;	// Perform single modify.	err = ldap_modify_s(ldapConnection,				pszUserDN,				modEntry				);	if (err == LDAP_SUCCESS )		wprintf(L"\nPassword succesfully set!\n");	else		wprintf(L"\nPassword set failed!\n");	return err;}				

تحذير: تمت ترجمة هذه المقالة تلقائيًا

خصائص

رقم الموضوع: 269190 - آخر مراجعة: 06/29/2004 22:47:36 - المراجعة: 3.7

  • Microsoft Windows 2000 Server
  • Microsoft Windows 2000 Advanced Server
  • Microsoft Windows 2000 Professional Edition
  • Microsoft Windows 2000 Datacenter Server
  • kbmt kbhowto kbmsg KB269190 KbMtar
تعليقات
> + (window.location.protocol) + "//c.microsoft.com/ms.js'><\/script>");