2009-06-16 5 views
1

Silverlight Business Applicationを使用している場合、ログインしているユーザー(およびユーザープロファイルの任意のフィールド)のユーザーパスワードを変更する方法はありますか?ユーザーパスワードを変更するには?

+0

が質問に詳細を教えてください。どのようなメカニズムを使用してパスワードを保存および管理しますか?メンバーシップ・プロバイダーですか? –

+0

はい、既定のメンバシッププロバイダを使用します。デフォルトでは、すべてのアプリケーションの設定です。 – FFire

答えて

1

だから、私は1つの方法だけでドメインサービスを作成しました:

[EnableClientAccess()] 
public class DomainChangePassword : DomainService 
{ 
[ServiceOperation] 
public bool UserChangePassword(string userName, string oldPassword, string newPassword) 
{ 
    if (Membership.ValidateUser(userName, oldPassword)) 
    { 
    MembershipUser memUser = Membership.GetUser(userName); 
    return memUser.ChangePassword(oldPassword, newPassword); 
    } 
    return false; 
} 
} 
2

Silverlightにパスワードを変更するためのメカニズムが組み込まれていません。 そのために独自のサービスを実装する必要があります。例えば

[AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Required)] 
public class SecurityService : ISecurityService 
{ 
    public bool ChangePassword(string oldPassword, string newPassword) 
    { 
     if(!HttpContext.Current.User.Identity.IsAuthenticated) 
      return false; 

     return Membership.Provider.ChangePassword(HttpContext.Current.User.Identity.Name, oldPassword, newPassword); 
    } 
    ... 
} 

これは、あなたの質問に答える場合は、 "答えとしてマーク" してください。

関連する問題