Sdílet prostřednictvím


Podrobný postup pro obecný konektor SQL

Toto téma je podrobný průvodce. Vytvoří jednoduchou ukázkovou databázi lidských zdrojů a použije ji k importu některých uživatelů a jejich členství ve skupinách.

Poznámka

Microsoft Entra ID teď poskytuje jednoduché řešení založené na agentech pro zřizování uživatelů do databáze SQL, aniž by bylo potřeba nasazení synchronizace MIM. Doporučujeme ho použít pro zřizování odchozích uživatelů. Další informace.

Příprava ukázkové databáze

Na serveru se spuštěným SQL Server spusťte skript SQL, který najdete v příloze A. Tento skript vytvoří ukázkovou databázi s názvem GSQLDEMO. Objektový model pro vytvořenou databázi vypadá jako na tomto obrázku:
Objektový model

Také vytvořte uživatele, kterého chcete použít pro připojení k databázi. V tomto návodu se uživatel nazývá FABRIKAM\SQLUser a nachází se v doméně.

Vytvoření souboru připojení ODBC

Obecný konektor SQL používá rozhraní ODBC pro připojení ke vzdálenému serveru. Nejprve musíme vytvořit soubor s informacemi o připojení ODBC.

  1. Spusťte na serveru nástroj pro správu ODBC:
    Snímek obrazovky znázorňující vyhledávací pole se zadaným O D B C
  2. Vyberte kartu Soubor DSN. Klikněte na Přidat....
    Snímek obrazovky nástroje pro správu O D B C s vybranou kartou Soubor D S N
  3. Předefinovaný ovladač funguje správně, proto ho vyberte a klikněte na Další>.
    Snímek obrazovky s možnostmi ovladače pro nový zdroj dat
  4. Pojmenujte soubor, například GenericSQL.
    Snímek obrazovky znázorňující příklad nového názvu souboru zadaného v poli a tlačítka Další
  5. Klikněte na Finish (Dokončit).
    Snímek obrazovky s podrobnostmi o novém zdroji dat a tlačítkem Dokončit
  6. Čas konfigurace připojení. Zadejte dobrý popis zdroje dat a název serveru, na kterém běží SQL Server.
    Snímek obrazovky znázorňující průvodce konfigurací s ukázkovým popisem, názvem serveru a tlačítkem Další
  7. Vyberte způsob ověřování pomocí SQL. V tomto případě používáme ověřování systému Windows.
    Snímek obrazovky znázorňující krok ověřování s vybranou možností integrovaného ověřování systému Windows a tlačítkem Další
  8. Zadejte název ukázkové databáze GSQLDEMO.
    Snímek obrazovky s názvem databáze zadaným do pole databáze a tlačítkem Další
  9. Na této obrazovce ponechte všechno jako výchozí. Klikněte na Finish (Dokončit).
    Snímek obrazovky znázorňující výchozí nastavení v posledním kroku průvodce a tlačítko Dokončit
  10. Pokud chcete ověřit, že vše funguje podle očekávání, klikněte na Testovat zdroj dat.
    Snímek obrazovky zobrazující podrobnosti konfigurace nového zdroje dat O D B C a tlačítko Testovat zdroj dat
  11. Ujistěte se, že test proběhl úspěšně.
    Snímek obrazovky s výsledky testu a tlačítkem O K
  12. Konfigurační soubor ODBC by teď měl být viditelný v názvu DSN souboru.
    Snímek obrazovky nástroje pro správu O D B C s vybranou kartou Soubor D S N a novým konfiguračním souborem O D B C

Teď máme soubor, který potřebujeme, a můžeme začít vytvářet konektor.

Vytvoření obecného konektoru SQL

  1. V uživatelském rozhraní synchronizace Service Manager vyberte Konektory a Vytvořit. Vyberte Generic SQL (Microsoft) a zadejte popisný název.
    Snímek obrazovky znázorňující průvodce Vytvořením konektoru s vybraným konektorem a tlačítkem Další
  2. Vyhledejte soubor DSN, který jste vytvořili v předchozí části, a nahrajte ho na server. Zadejte přihlašovací údaje pro připojení k databázi.
    Snímek obrazovky zobrazující soubor D S N se zadanými přihlašovacími údaji a tlačítkem Další
  3. V tomto návodu to pro nás usnadňujeme a říkáme, že existují dva typy objektů : Uživatel a Skupina. Snímek obrazovky znázorňující dva typy objektů zadané v poli se seznamem pevných hodnot a tlačítko Další
  4. Abychom našli atributy, chceme, aby konektor tyto atributy rozpoznal tak, že se podívá na samotnou tabulku. Vzhledem k tomu , že uživatelé jsou v SQL vyhrazené slovo, musíme ho zadat v hranatých závorkách [ ].
    Snímek obrazovky zobrazující hodnotu detekce atributů pro uživatele v tabulce a tabulce a tlačítko Další
  5. Je čas definovat atribut ukotvení a atribut DN. Pro uživatele používáme kombinaci dvou atributů uživatelské jméno a EmployeeID. Pro skupinu používáme GroupName (v reálném životě to není reálné, ale pro tento názorný postup to funguje). Snímek obrazovky s uživatelským jménem, id zaměstnance a názvem skupiny s tlačítkem Další
  6. V databázi SQL se nedají rozpoznat všechny typy atributů. Nelze použít zejména typ atributu odkazu. Pro typ objektu skupiny musíme změnit ID vlastníka a ID člena, aby odkazy.
    Snímek obrazovky s aktualizovanými poli ID vlastníka a ID člena a tlačítkem Další
  7. Atributy, které jsme vybrali jako referenční atributy v předchozím kroku, vyžadují typ objektu, na který tyto hodnoty odkazují. V našem případě typ objektu User.
    Snímek obrazovky s vybraným typem objektu a tlačítkem Další
  8. Na stránce Globální parametry jako rozdílovou strategii vyberte Vodoznak . Zadejte také formát data a času rrrr-MM-dd HH:mm:ss. Snímek obrazovky zobrazující pole pro rozdílovou strategii, formát data a času a tlačítko Další
  9. Na stránce Konfigurace oddílů a hierarchií vyberte oba typy objektů. Snímek obrazovky s vybranými typy objektů a tlačítkem Další
  10. V možnostech Vybrat typy objektů a Vybrat atributy vyberte objektové typy a všechny atributy. Na stránce Konfigurace ukotvení klikněte na Dokončit.

Vytvoření profilů spuštění

  1. V uživatelském rozhraní synchronizace Service Manager vyberte Konektory a Konfigurovat profily spuštění. Klikněte na Nový profil. Začneme úplným importem.
    Snímek obrazovky znázorňující průvodce Konfigurací profilu spuštění s úplným importem zadaným do pole Název a tlačítkem Další
  2. Vyberte typ Úplný import (pouze fáze).
    Snímek obrazovky s vybraným typem a tlačítkem Další
  3. Vyberte oddíl OBJECT=User.
    Snímek obrazovky s vybraným oddílem a tlačítkem Další
  4. Vyberte Tabulka a zadejte [USERS]. Posuňte se dolů k části typu objektu s více hodnotami a zadejte data jako na následujícím obrázku. Výběrem možnosti Dokončit krok uložte.
    Snímek obrazovky znázorňující metodu operace Vybraná tabulka a uživatelé v poli tabulky
    Snímek obrazovky znázorňující hodnoty typu objektu s více hodnotami zadanými jako název a podmínku spojení
  5. Vyberte Nový krok. Tentokrát vyberte OBJECT=Seskupovat. Na poslední stránce použijte konfiguraci jako na následujícím obrázku. Klikněte na Finish (Dokončit).
    Snímek obrazovky znázorňující metodu operace Vybraná tabulka a skupina v poli tabulky
    Snímek obrazovky s hodnotami typu objektu zadanými pro název tabulky a podmínky spojení
  6. Volitelné: Pokud chcete, můžete nakonfigurovat další profily spuštění. V tomto návodu se používá pouze úplný import.
  7. Kliknutím na OK dokončete změnu profilů spuštění.

Přidání testovacích dat a otestování importu

Vyplňte některá testovací data v ukázkové databázi. Až budete připraveni, vyberte Spustit a Úplný import.

Tady je uživatel se dvěma telefonními čísly a skupinou s některými členy.
Snímek obrazovky s daty zobrazující uživatele se dvěma telefonními čísly
Snímek obrazovky s daty zobrazující skupinu s některými členy

Příloha A

Skript SQL pro vytvoření ukázkové databáze

---Creating the Database---------
Create Database GSQLDEMO
Go
-------Using the Database-----------
Use [GSQLDEMO]
Go
-------------------------------------
USE [GSQLDEMO]
GO
/****** Object:  Table [dbo].[GroupMembers]   ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[GroupMembers](
    [MemberID] [int] NOT NULL,
    [Group_ID] [int] NOT NULL
) ON [PRIMARY]

GO
/****** Object:  Table [dbo].[GROUPS]   ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[GROUPS](
    [GroupID] [int] NOT NULL,
    [GROUPNAME] [nvarchar](200) NOT NULL,
    [DESCRIPTION] [nvarchar](200) NULL,
    [WATERMARK] [datetime] NULL,
    [OwnerID] [int] NULL,
PRIMARY KEY CLUSTERED
(
    [GroupID] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]

GO
/****** Object:  Table [dbo].[USERPHONE]   ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
SET ANSI_PADDING ON
GO
CREATE TABLE [dbo].[USERPHONE](
    [USER_ID] [int] NULL,
    [Phone] [varchar](20) NULL
) ON [PRIMARY]

GO
SET ANSI_PADDING OFF
GO
/****** Object:  Table [dbo].[USERS]   ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[USERS](
    [USERID] [int] NOT NULL,
    [USERNAME] [nvarchar](200) NOT NULL,
    [FirstName] [nvarchar](100) NULL,
    [LastName] [nvarchar](100) NULL,
    [DisplayName] [nvarchar](100) NULL,
    [ACCOUNTDISABLED] [bit] NULL,
    [EMPLOYEEID] [int] NOT NULL,
    [WATERMARK] [datetime] NULL,
PRIMARY KEY CLUSTERED
(
    [USERID] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]

GO
ALTER TABLE [dbo].[GroupMembers]  WITH CHECK ADD  CONSTRAINT [FK_GroupMembers_GROUPS] FOREIGN KEY([Group_ID])
REFERENCES [dbo].[GROUPS] ([GroupID])
GO
ALTER TABLE [dbo].[GroupMembers] CHECK CONSTRAINT [FK_GroupMembers_GROUPS]
GO
ALTER TABLE [dbo].[GroupMembers]  WITH CHECK ADD  CONSTRAINT [FK_GroupMembers_USERS] FOREIGN KEY([MemberID])
REFERENCES [dbo].[USERS] ([USERID])
GO
ALTER TABLE [dbo].[GroupMembers] CHECK CONSTRAINT [FK_GroupMembers_USERS]
GO
ALTER TABLE [dbo].[GROUPS]  WITH CHECK ADD  CONSTRAINT [FK_GROUPS_USERS] FOREIGN KEY([OwnerID])
REFERENCES [dbo].[USERS] ([USERID])
GO
ALTER TABLE [dbo].[GROUPS] CHECK CONSTRAINT [FK_GROUPS_USERS]
GO
ALTER TABLE [dbo].[USERPHONE]  WITH CHECK ADD  CONSTRAINT [FK_USERPHONE_USER] FOREIGN KEY([USER_ID])
REFERENCES [dbo].[USERS] ([USERID])
GO
ALTER TABLE [dbo].[USERPHONE] CHECK CONSTRAINT [FK_USERPHONE_USER]
GO