SharePoint Technologie

Oficiální web komunity uživatelů, administrátorů a vývojářů Microsoft SharePoint
Welcome to SharePoint Technologie Sign in | Join | Help
Home Blogs Forums Photos Files

SharePoint Blog

Intranet, web parts změna hesla? --> FrameWork 3.5

V intranetovém systému je častým požadavkem formulář na změnu uživatelského hesla. Alternativou přístupu přes COM (ActiveDs) je doinstalování FrameWorku 3.5 na frond endy, kde provozujete platformu SharePoint a využití následující funkcionality kterou „nový“ FW přináší.

Reference
System.DirectoryServices.AccountManagement.dll

Příklad použití např. ve webové části:

_oldpassword - TextBox pro staré heslo
_newpassword - TextBox pro nové heslo
_labelmsg - Label pro vypsání výsledku, popř. chyb

Příklad definice TextBoxu:

protected override void CreateChildControls()

{

base.CreateChildControls();
this.Controls.Clear();

_oldpassword = new TextBox();
_oldpassword.ID =
"OldPw";
_oldpassword.CssClass =
"ms-input";

this.Controls.Add(_oldpassword);

// obdobně pokračujeme dále

}

 

UserPrincipal - nám dokáže vrátit i jiné informace o uživateli, například poslední změna hesla, expirace účtu, stav účtu, ....

protected void _submitButton_Click(object sender, EventArgs e)

{

 

SPSecurity.RunWithElevatedPrivileges(

delegate()

{

try

{

WindowsImpersonationContext aspContext = null;

WindowsIdentity identity = WindowsIdentity.GetCurrent();

aspContext = identity.Impersonate();

ContextOptions o = ContextOptions.Negotiate;

PrincipalContext ctx = new PrincipalContext(ContextType.Domain);

UserPrincipal u = new UserPrincipal(ctx);

u = UserPrincipal.FindByIdentity(ctx, SPContext.Current.Web.CurrentUser.LoginName);

try

{

u.ChangePassword(_oldpassword.Text, _newpassword.Text);

_labelmsg.Text = "Změna hesla proběhla úspěšně";

}

catch (PasswordException ex)

{

_labelmsg.Text = ex.Message.ToString();

}

}

}

 

Filip Havlín

Published Monday, December 08, 2008 2:31 PM by Filip
Filed Under: ,

Comments

No Comments
Anonymous comments are disabled

About Filip

Office Server 2007 Project Server 2007 BizTalk 2006 R2 Portfolio Server ISA 2006 SQL 2005/2008 All Win .NET 2005/2008 XML, UML

This Blog

Post Calendar

<December 2008>
SuMoTuWeThFrSa
30123456
78910111213
14151617181920
21222324252627
28293031123
45678910

Syndication

Powered by Community Server, by Telligent Systems