Maen-maen dengan C# untuk akses domain controller
Berhubung ini mau long weekend, iseng-iseng saya buka visual C# 2008 expression edition. Terus bengong dan akhirnya mulai ketak ketik dengan panduan MSDN :)
jadilah program simple dengan metode hajar blehh dan anti patern hehehe...
Program ini kelak, kalo penyakit "M" saya sudah hilang, akan saya buat untuk memanage AD dan manage HW+SW yang terinstall di komputer user.
Nah sementara ini baru bisa ngambil nama domain controller, IP Address dan status global catalognya.
using System;
using System.Security.Permissions;
using System.DirectoryServices;
using System.DirectoryServices.ActiveDirectory;
[assembly: SecurityPermission(SecurityAction.RequestMinimum, Execution = true)]
[assembly: DirectoryServicesPermission(SecurityAction.RequestMinimum)]
namespace iseng
{
public class Program
{
static DirectoryContext domainContext =
new DirectoryContext(DirectoryContextType.Domain);
static void Main(string[] args)
{
tampilkan();
}
static void tampilkan()
{
System.Console.WriteLine("");
System.Console.WriteLine("Cek domain di jaringan");
System.Console.Write("Nama Domain : ");
string namadomain = System.Console.ReadLine();
System.Console.WriteLine("");
System.Console.Write("Proses pengecekan nama domain : ");
System.Console.WriteLine(namadomain);
System.Console.WriteLine("");
System.Console.WriteLine("DOMAIN CONTROLLER INFO");
System.Console.WriteLine("");
DomainController dc;
// Carilah domain controller dalam domain jaringan
try
{
dc = DomainController.FindOne(domainContext);
Console.Write("Domain controller di domain: ");
Console.WriteLine(dc);
Console.WriteLine("Sebagai global catalog: {0}",dc.IsGlobalCatalog());
Console.WriteLine("Alamat IP: {0}", dc.IPAddress);
Console.WriteLine();
}
catch (ActiveDirectoryObjectNotFoundException gakketemu)
{
// dc kagak ketemu
Console.WriteLine(gakketemu.Message);
}
}
}
}
Silahkan dinikmati :)