Forefront Identity Manager 2010 (FIM 2010) yazılımı anlayabilmek için önce terminolojiyi bilmek gerekir. Kullanılan tüm bileşenlerin ne anlama geldikleri ve neyi içerdiklerini bilmek yazılımın yeteneklerini anlamak için yeterli.

Connected Data Sources

FIM 2010′ un en önemli yeteneklerinden biri bir çok veritabanı üzerinde bulunan kimlik bilgilerini okuyabilmesi ve bu kimlik bilgilerini kendi veritabanına çekebilmesidir. Connected Data Source bu kimlik bilgilerinin bulunduğu kaynak veritabanı anlamına gelir. Aşağıda FIM 2010′un desteklediği kimlik veritabanı ve dizin yapıları bulunmaktadır.

  • Active Directory Domain Services 2000, 2003, 2003 R2, 2008
  • Active Directory Lightweight Directory Services (ADLDS)
  • Active Directory global address list (GAL)
  • Attribute-value pair text files
  • FIM Certificate Management
  • Delimited text files
  • Directory Services Markup Language (DSML) 2.0
  • Microsoft Exchange Server 2007 and 2010 (use the management agent for Active Directory)
  • Microsoft SQL Server 2000, SQL Server 2005, SQL Server 2008
  • Fixed-width text files
  • IBM DB2 Universal Database 9.1 or 9.5
  • IBM Directory Server 6.0 or 6.2
  • LDAP Data Interchange Format (LDIF)
  • Lotus Notes release 6.5 or 7.0
  • Novell eDirectory 8.7.3 or 8.8
  • Oracle10g Database
  • AP R/3 Enterprise (4.7), mySAP 2004 (ECC 5.0)
  • Sun ONE and Netscape Directory Server 5.1 and 5.2

Management Agents

Management Agents (MA) veri kaynağı ve metaverse (FIM 2010 verisi) arasında ki veri akışını düzenler. Her kaynak veritabanı için bir MA bulunmaktadır. MA ları yapılandırmak için, verilerin kaynak veritabanı ve metaverse arasında nasıl senkron edileceği belirtilir.MA ların yapılandırmaları birbirinden farklıdır ancak hepsinin gerçekleştirdiği ortak görevler bulunmaktadır.

Schema Discovery Kaynak Veritabanı üzerinde ki nesne ve bu nesnenin özelliklerinden bir şema oluşturur.
Connector Filter Connector Filter, Connector space de (FIM 2010 Geçici Veri Bölgesi), bulunan verilerin hangisinin MA tarafından işleneceğini belirlemede kullanılır. A Harfi ile başlayan kullanıcılar gibi. Bunun dışında kalan veriler Metaverse’ e kaydedilmez.
Join ve Projection Connector Space de bulunan verilerin metaverse ile nasıl senkron edileceğini belirler. Eğer nesne mükerrer durumda ise belirlenen kriter doğrultusunda birleştirilebilir ve ya bağlanabilir. Eğer Connector Space’ deki veri metaverse de yoksa (yani mükerrer bir durum yoksa) bu durumda veri metaverse’ e yeni veri olarak işlenir.
Attribute Flow Connector Space (CS) nesnesinin özelliklerini ve Metaverse nesne tipinin özellikleri ile eşler ve bu sayede veri aktarımı gerçekleşebilir. Örn: ID = EmployeeID, UserName = LoginName gibi.
Deprovisioning Bir nesnenin Metaverse’ dan silindikten sonra CS’ de nasıl bir işleme tabi tutulacağını belirlemek için kullanılır. (silinebilir, bağlantısı kesilebilir)
Rules Extensions senkron hatalarının yakalanması ya da özel bir değerin aranması gibi işlemleri gerçekleştirebilmek için Rules Extensions kullanılabilir.

Management Agents Tipleri

Kaynak veritabanına bağlanıp buradan gerekli verileri import ve export eden daha sonra da bu verileri yorumlayan ajanlardır. 2 tip ajan bulunmaktadır:

  • Call-Based: Kaynak veritabanına direkt olarak bağlanır ve verileri import ya da export eder.
  • File-Based: verileri bir text dosyasından okur ya da yazar.
Call-based management agents File-based management agents
Active Directory

Active Directory Lightweight Directory Services (ADLDS)

Active Directory global address list (GAL

FIM Certificate Management

IBM DB2 Universal Database

IBM Directory Server

Lotus Notes

Microsoft SQL Server

Novell eDirectory

Oracle Database

Sun and Netscape directory servers

Attribute-value pair text files

Delimited text files

Directory Services Markup Language (DSML)

Extensible connectivity

Fixed-width text files

LDAP Data Interchange Format (LDIF)

Run Profiles

MA’ nın nasıl çalışacağını belirler. Import / Export edilmesi, kaç nesnenin senkron edileceği gibi bilgiler doğrultusunda çalışır.

Şifreleme ve Güvenlik

MA, yapılan tüm veri taşıma işlemlerini güvenli bir şekilde yürütür. kimlik bilgileri, parola gibi bilgiler SetPassword çağrısı ile şifrelenir. Kimlik bilgilerini içeren tüm veriler Windows Crypto API anahtarı ile şifrelenir. Bu veriler FIM SQL Server veritabanında tutulur. Aşağıda her bir MA nın bağlantı tipi ve şifreleme özellikeri listelenmiştir.

Management Agent Bind Bağlantı SetPassword
Active Directory Negotiate Kerberos Sign & Seal, plaintext Kerberos
Active Directory Lightweight Directory Services (ADLDS) Negotiate SSL, Kerberos Sign & Seal, plaintext SSL, Kerberos Sign & Seal, plaintext
IBM Directory Server Simple Authentication and Security Layer (SASL) SSL SSL
Lotus Notes Lotus Notes client proprietary Lotus Notes client proprietary Lotus Notes client encryption
Novell eDirectory Digest, simple SSL, plaintext SSL, plaintext
Sun and Netscape directory servers Digest, simple SSL, plaintext SSL, plaintext

MA çalıştığında süreç aşağıdaki gibi ilerler.

  1. Veri filitrelenir. sadece filitreye uyan veri işlemeye tabi tutulur. Filitreye uyan veri yoksa süreç durdurulur.
  2. Nesnenin connector/disconnector durumuna bakılır. disconnector ise veri join kurallarına tabi tutulur. connector durumunda ise adım 4′ e gidilir.
  3. Nesne join kuralına takılmazsa Projection kurallarına tabi tutulur.  Eğer projection kuralına takılmazsa süreç durdurulur.
  4. Yukarıdaki adımları geçen nesnenin attributleri (özellikleri) işlenmeye başlar.
  5. Provisioning kuralları kapsamında veri veritabanına eklenmeye başlar.