twat

//<SafeControl Assembly="Microsoft.WebAdmin.ADManager, Version=1.0.0.0, Culture=neutral, PublicKeyToken=5a2384f38d4f13f5" Namespace="Microsoft.WebAdmin.ADManager" TypeName="*" Safe="True" />


Sharepoint 中只有确保受信任的控件才能在系统中使用。SharePoint将只加载在web.config文件中的SafeControl元素定义的控件。

Trust level

我们开发Sharepoint,会把*.dll文件放在web应用程序的bin目录,或则放在GAC。如果你是放在BIN下面的话,会有一个安全信任的问题。我们需要把信任级别设置为Full即可。

<trust level="WSS_Minimal" originUrl="" />

改成

<trust level="Full" originUrl="" />


protected override void CreateChildControls()
{
VisualWebPart1UserControl control = Page.LoadControl(_ascxPath) as VisualWebPart1UserControl;
control.adminName = adminName;
control.adminPassword = adminPassword;
control.Domain = domain;
Controls.Add(control);
}

 

private string _adminName;
[Personalizable(true)]
[Category("Beifeng")]
[WebBrowsable(true)]
[WebDisplayName("administrator name")]
public string adminName
{
set { _adminName = value; }
get
{
return _adminName;
}
}
private string _adminPassword;
[Personalizable(true)]
[Category("Beifeng")]
[WebBrowsable(true)]
[WebDisplayName("administrator password")]
public string adminPassword
{
set { _adminPassword = value; }
get
{
return _adminPassword;
}
}
private string _domain;
[Personalizable(true)]
[Category("Beifeng")]
[WebBrowsable(true)]
[WebDisplayName("domain")]
public string domain
{
set { _domain = value; }
get
{
return _domain;
}
}

 

 

 

 

protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
labUserName.Text = SPContext.Current.Web.CurrentUser.LoginName;
}
}

public string adminName { get; set; }
public string adminPassword { get; set; }
public string Domain { get; set; }

protected void BtnSubmit_Click(object sender, EventArgs e)
{
string password = txtNewPwd.Text;
string passwordConfirm = txtNewPwdConfirm.Text;
if (password!=passwordConfirm)
{
labmsg.Text = "两次输入的密码不相同.";
}
else
{
Utility.ADAdmin = adminName;
Utility.ADDomainName = Domain;
Utility.ADPasword = adminPassword;
Utility.ADUser = Domain + "\\" + adminName;

ADUser user = ADManager.LoadUser(labUserName.Text);
try
{
user.SetPassword(password);
labmsg.Text = "修改密码成功.";
}
catch (Exception ee)
{
labmsg.Text = "修改密码失败.Exception:"+ee.Message;
}
}
}

 

 //net 3.5

PrincipalContext principalContext = new PrincipalContext(ContextType.Domain, domain, container, adminUser, adminPassword);
UserPrincipal user = UserPrincipal.FindByIdentity(principalContext, userName);
if (user == null)
{
return "用户不存在";
}

user.SetPassword(newPassword);

posted @ 2013-01-27 20:30  小师傅  阅读(1583)  评论(0编辑  收藏  举报