C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[1]: DirectoryEntryでユーザの追加時に有効期限を指定


(過去ログ 65 を表示中)

[トピック内 4 記事 (1 - 4 表示)]  << 0 >>

■37309 / inTopicNo.1)  DirectoryEntryでユーザの追加時に有効期限を指定
  
□投稿者/ 匿名希望 (1回)-(2009/06/16(Tue) 23:25:55)

分類:[ASP.NET (C#)] 

開発はVisualstudio2008 ASP.NET(C#)で対象サーバはWindows Server 2003 です。
DirectoryEntry でユーザの作成、バスワードの作成はできたのですが、作成したユーザの有効期限を付加したいのですが、
InvokeSetかInvokeメソッドでの引数が判りません、ご教授ください。

以下抜粋:

private DirectoryEntry priv_User;
        private string SetADUser()
        {
	        try
	        {
                DateTime TheDay;
                DateTime TheTime;
                string ExpireDT;
                TheDay = DateTime.Today;
                TheTime = DateTime.Now;
                ExpireDT = TheDay.AddDays(3).ToString() + TheTime.ToString();

		        priv_User = priv_AD.Children.Add(priv_strUserName, "user");
		        priv_User.Invoke("SetPassword", new object[] { priv_strUserPWD });
		        priv_User.Invoke("Put", new object[] { "Description", "Web追加" });
                priv_User.Invoke("Put", new object[] { "Accountexpires", ExpireDT });//ここで例外
		        priv_User.CommitChanges();
	        }
	        catch
	        {
		        return "SetADUserError";
	        }
            return "SetADUserOK";
        }

引用返信 編集キー/
■37311 / inTopicNo.2)  Re[1]: DirectoryEntryでユーザの追加時に有効期限を指定
□投稿者/ オショウ (235回)-(2009/06/17(Wed) 00:02:49)
No37309 (匿名希望 さん) に返信
> 開発はVisualstudio2008 ASP.NET(C#)で対象サーバはWindows Server 2003 です。
> DirectoryEntry でユーザの作成、バスワードの作成はできたのですが、作成したユーザの有効期限を付加したいのですが、
> InvokeSetかInvokeメソッドでの引数が判りません、ご教授ください。

  検索したらヒットしましたが・・・

  http://msdn.microsoft.com/ja-jp/library/ms180914.aspx

  これですか?

以上。参考まで・・・

引用返信 編集キー/
■37314 / inTopicNo.3)  Re[1]: DirectoryEntryでユーザの追加時に有効期限を指定
□投稿者/ mitchin (4回)-(2009/06/17(Wed) 04:22:58)
mitchin さんの Web サイト
No37309 (匿名希望 さん) に返信
> 開発はVisualstudio2008 ASP.NET(C#)で対象サーバはWindows Server 2003 です。
> DirectoryEntry でユーザの作成、バスワードの作成はできたのですが、作成したユーザの有効期限を付加したいのですが、
> InvokeSetかInvokeメソッドでの引数が判りません、ご教授ください。

ADSI(Active DS Type Library)使ったほうが楽なので参考までに。
VBですが。

Dim User As ActiveDs.IADsUser = DirectCast(priv_User.NativeObject, ActiveDs.IADsUser)
User.AccountExpirationDate = New Date(2009, 12, 31)
User.SetInfo()

対象アカウントのプロパティで有効期限を見るとなぜか 2009年12月30日になっています。
引用返信 編集キー/
■37384 / inTopicNo.4)  Re[2]: DirectoryEntryでユーザの追加時に有効期限を指定
□投稿者/ 匿名希望 (2回)-(2009/06/18(Thu) 14:12:01)
2009/06/18(Thu) 14:12:48 編集(投稿者)
2009/06/18(Thu) 14:12:39 編集(投稿者)

<pre><pre>■No37311 (オショウ さん) に返信
>>InvokeSetかInvokeメソッドでの引数が判りません、ご教授ください。
> 
>   検索したらヒットしましたが・・・
> 
>   http://msdn.microsoft.com/ja-jp/library/ms180914.aspx
> 
>   これですか?
あれ?MSDNで載っていましたか・・・探したんですがね(汗
しかし、SSLでの通信は失敗するんですよね・・・
//ユーザの追加 null以外が返ってくるとエラー
private string SetADUser()
{
	try
	{
		DateTime TheDay;

		TheDay = DateTime.Today;
		TheDay = TheDay.AddDays(3);

		priv_User = priv_AD.Children.Add(priv_strUserName, "user");
		priv_User.Invoke("SetPassword", new object[] { priv_strUserPWD });
		priv_User.Invoke("Put", new object[] { "Description", "-Web追加" });
		priv_User.InvokeSet("AccountExpirationDate", new object[] { TheDay });
		priv_User.CommitChanges();
	}
	catch (System.Exception ex)
	{
		return ex.Message;
	}
	return null;
}
でhttpでは解決しました。
ありがとうございます</pre></pre>

解決済み
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -