quinta-feira, 15 de abril de 2010

Trabalhando com o atributo accountExpires do Active Directory

No FIM2010, o formato padrão de data/hora é yyyy-MM-ddTHH:mm:ss.fff. Este é um formato ISO8601 com três dígitos de precisão fracional.

O atributo accountExpires no Active Directory é um atributo do tipo Integer8, um número de 64-bit representando data/hora (em UTC) como o número de intervalos de 100-nanosecondos desde 01/01/1601 12:00 AM.

Para trabalhar com o atributo accountExpires, seja importando ou exportando ele no FIM2010, você precisará desenvolver uma “Rule Extension” para usar no seu Active Directory Managente Agent.

Abaixo alguns exemplos de como fazer isso utilizando a linguagem C#. Trabalharemos com o accountExpires (AD) e EmployeeEndDate (FIM2010):

accountExpires –> EmployeeEndDate

if (csentry["accountExpires"].IsPresent)
{
  
DateTime dtFileTimeUTC = DateTime.FromFileTimeUtc(csentry["accountExpires"].IntegerValue);
   mventry[
"employeeEndDate"].Value = dtFileTimeUTC.ToUniversalTime().ToString("yyyy'-'MM'-'dd'T'HH':'mm':'ss'.000'");
}
   

accountExpires <- EmployeeEndDate

if (mventry["employeeEndDate"].IsPresent)
{

   FormatProvider
culture = new CultureInfo("en-US", true);
   DateTime
EndDate;
   EndDate =
DateTime.Parse(mventry["employeeEndDate"
].ToString(), culture);
   csentry[
"accountExpires"].Value = EndDate.ToFileTimeUtc().ToString();
}

Marcar uma conta que está sendo provisionada para expirar daqui a 180 dias

csentry["accountExpires"].Value = DateTime.Now.AddDays(180).ToFileTimeUtc().ToString();

Até Breve!

Nenhum comentário:

Postar um comentário