AspNet:パスワード変更コンポーネント
ホーム
ホームページ
更新履歴
NOW!
チャット
ボイスチャット
ボイスメール
分身一覧
中継一覧
チャットメンバー

MSサポート情報検索
検索ページ
システム概要

パスワード変更
システム概要
ダウンロード

フォロー
一覧
WINTIS97

ツール、TIPS
Urlコンポーネント
Sessionモニタ
Excel作成
webinfo
きゃらメール
delold.vbs
rentoday.vbs
ASP TIPS
IRC伝言サービス
IRC計算サービス
プロファイル aspProfile
時間計測 TimeTool
MIMEマップ操作
電話番号11桁対応
ServerVariables
IPアドレス設定
Mediaモニタ
数式電卓
ファイル表示
CHOCOA URL紹介

お勧め
ソフトウェア
ハードウェア
リンク

WinNT WebRing
サイト一覧
前へ
次へ
ランダム
 
日本骨髄バンク  
PASSJ  
【楽天市場】ホビー・ペット・コレクション  
 
 
 

ブラウザからWindowsNTのパスワードを変更する機能を提供するために、開発しました。
VisaulBasic5.0で作成したコンポーネントとASPファイルからなります。
ソースファイル、インストールプログラムをあわせて公開しますので、ご利用ください。

特徴
  • Win32APIのパスワード変更APIをNetUserChangePasswordをコンポーネントにしたことによって、ASP、IE、VBなどから容易に呼び出せるようになっている。
  • NetUserChangePasswordは、管理者権限が必要ない。したがって、現在のパスワードがわかれば、一般ユーザでも変更することができる。
プログラム構成
  • AspNet.DLL コンポーネント
  • ASPファイル
稼働環境システム
  • Windows NT 4.0
  • IIS + ASP
AspNetコンポーネント
このプログラムは、VisualBasic 5.0SP2を利用してActiveX DLLとして開発しました。

コンポーネント名:
AspNet
インターフェース:
UserPassword
メソッド:
ChangePassword
引数:
Domain : ドメCン名、または、サーバ名
Username: ユーザ名
OldPassword: 現在のパスワード
NewPassword: 変更後のパスワード
戻り値
0: 正常終了
53:ドメイン名、サーバ名が見つからない
86:OldPasswordが間違っている
その他: エラー(NetUserChangePasswordの仕様を参照)
詳細
Domainには、ドメインのユーザの場合には、ドメイン名を指定します。
サーバのユーザの場合には、サーバ名を指定します。

UserPassword.clsのソースプログラム

Private Declare Function NetUserChangePassword Lib "netapi32.dll" ( _
    lpDomain As Any, bytUsername As Any, _
    bytOldPassword As Any, bytNewPassword As Any) As Long

' パスワードを変更する
Public Function ChangePassword(Domain, Username, OldPassword, NewPassword) As Long
    Dim lngResult As Long
    Dim bytDomain() As Byte
    Dim bytUsername() As Byte
    Dim bytOldPassword() As Byte
    Dim bytNewPassword() As Byte

    bytDomain = Domain & vbNullChar
    bytUsername = Username & vbNullChar
    bytOldPassword = OldPassword & vbNullChar
    bytNewPassword = NewPassword & vbNullChar
    Debug.Print bytOldPassword
    For n = 0 To UBound(bytOldPassword)
        Debug.Print Hex(bytOldPassword(n)) & " ";
    Next
    Debug.Print " = "; bytOldPassword
    ChangePassword = NetUserChangePassword(bytDomain(0), bytUsername(0), _
        bytOldPassword(0), bytNewPassword(0))
End Function
ASP処理
AspNet.UserPasswordをCreateObjectで作成し、ChangePasswordメソッドを呼び出す
ことによりパスワードを変更することができます。

Set objUserPassword = CreateObject("AspNet.UserPassword")
lngResult = objUserPassword.ChangePassword(Request("Domain"), Request("Username"), Request("OldPassword"), Request("NewPassword"))
注意
IIS の ASP としてパスワード変更を作成する場合、
パスワード変更後、10分〜15分の間、古いパスワードと新しいパスワードの
両方が使えるという現象があります。

この件については、マイクロソフトのサポート情報をごらんください。

[IIS] IIS におけるユーザー トークンのデフォルト インターバルの変更
作成:河端
Hotmail,MSN Messanger:YoshihiroKawabata
参照:
管理:/aspnet/default.asp
   管理ツール