Konfigurace oprávnění pro nasazení týmového sestavení

Jason Lee

Toto téma popisuje, jak nakonfigurovat oprávnění, která vašemu buildovacímu serveru umožní nasadit obsah na webové servery a databázové servery v rámci automatizovaného procesu sestavení.

Toto téma je součástí řady kurzů založených na požadavcích na podnikové nasazení fiktivní společnosti s názvem Fabrikam, Inc. Tato série kurzů používá ukázkové řešení – řešení Contact Manager – k reprezentaci webové aplikace s realistickou úrovní složitosti, včetně aplikace ASP.NET MVC 3, služby Windows Communication Foundation (WCF) a databázového projektu.

Metoda nasazení, která je základem těchto kurzů, je založená na přístupu k rozděleným souborům projektu popsaném v tématu Principy souboru projektu, ve kterém je proces sestavení řízen dvěma soubory projektu – jeden obsahuje pokyny k sestavení, které platí pro každé cílové prostředí, a druhý obsahuje nastavení sestavení a nasazení specifické pro dané prostředí. V době sestavení se soubor projektu pro konkrétní prostředí sloučí do souboru projektu nezávislého na prostředí, aby se vytvořila úplná sada pokynů k sestavení.

Přehled úkolů

Při instalaci služby sestavení Team Foundation Server (TFS) 2010 zadáte identitu, se kterou chcete službu spustit. Ve výchozím nastavení je to účet síťové služby. Případně můžete nakonfigurovat službu sestavení tak, aby se spouštěla pomocí účtu domény.

Všechny úlohy nasazení, které vyžadují ověřování Systému Windows a které plánujete automatizovat pomocí team buildu, se spustí pomocí identity služby sestavení. Proto budete muset identitě služby sestavení udělit všechna požadovaná oprávnění na webových a databázových serverech.

Poznámka

Účet síťové služby používá účet počítače k ověření v jiných počítačích. Účty počítačů mají podobu [název domény][název počítače]$ – například FABRIKAM\TFSBUILD$. Pokud tedy vaše služba sestavení běží pomocí identity síťové služby, měli byste udělit všechna požadovaná oprávnění k identitě účtu počítače pro váš buildovací server.

Konfigurace oprávnění webového serveru

Jak je popsáno v části Volba správného přístupu k nasazení webu, existují dva hlavní přístupy, které můžete použít, pokud chcete nasadit webové balíčky na vzdálený webový server:

  • Nasaďte aplikaci ze vzdáleného umístění cílením na službu web Deployment Agent (označovanou také jako vzdálený agent) na cílovém serveru.
  • Nasaďte aplikaci ze vzdáleného umístění cílením na obslužnou rutinu nasazení webuInternetové informační služby (IIS) na cílovém serveru.

Vzdálený agent má v tomto případě dvě omezení klíče:

  • Vzdálený agent podporuje pouze ověřování protokolem NTLM. Jinými slovy, nasazení musí používat identitu služby sestavení – nemůžete zosobnit jiný účet.
  • Pokud chcete použít vzdáleného agenta, musí být účet, který provádí nasazení, správcem na cílovém serveru.

Díky těmto dvěma omezením není přístup ke vzdálenému agentu pro automatizované nasazení team buildu žádoucí. Pokud chcete použít tento přístup, musíte účet služby sestavení nastavit jako správce na všech cílových webových serverech.

Naproti tomu přístup k obslužné rutině nasazení webu nabízí různé výhody:

  • Obslužná rutina nasazení webu podporuje základní ověřování přes PROTOKOL HTTPS, které umožňuje předat přihlašovací údaje alternativního účtu nástroji pro nasazení webu služby IIS (Nasazení webu).
  • Cílové webové servery můžete nakonfigurovat tak, aby uživatelům bez oprávnění správce umožňovaly nasazovat obsah na konkrétní weby služby IIS pomocí obslužné rutiny nasazení webu.

V důsledku toho je při automatizaci nasazení webového balíčku z team buildu jednoznačně vhodnější cílit na obslužnou rutinu nasazení webu. Toto je doporučený postup:

  1. Vytvořte účet domény s nízkými oprávněními, který se použije pro nasazení.
  2. Nakonfigurujte obslužnou rutinu nasazení webu a udělte účtu požadovaná oprávnění k nasazení obsahu na konkrétní web služby IIS, jak je popsáno v tématu Konfigurace webového serveru pro publikování nasazení webu (obslužná rutina nasazení webu).
  3. Spusťte nasazení webu a zaměřte se na obslužnou rutinu nasazení webu pomocí základního ověřování a zadání přihlašovacích údajů účtu domény, který jste vytvořili.

V ukázkovém řešení Contact Manageru zadáte typ ověřování (základní nebo NTLM), přihlašovací údaje nasazení webu a adresu koncového bodu (vzdáleného agenta nebo obslužné rutiny nasazení webu) v souboru projektu specifickém pro konkrétní prostředí. Tyto hodnoty se používají ke formulaci a spuštění příkazu Nasazení webu při spuštění souboru projektu. Další informace najdete v tématu Nasazení webových balíčků.

Další informace o konfiguraci obslužné rutiny nasazení webu, včetně postupu konfigurace oprávnění, najdete v tématu Konfigurace webového serveru pro publikování nasazení webu (obslužná rutina nasazení webu). Další informace o konfiguraci vzdáleného agenta najdete v tématu Konfigurace webového serveru pro publikování nasazení webu (vzdálený agent).

Konfigurace oprávnění databázového serveru

Pokud chcete nasadit databázi do SQL Server, musíte:

  • Vytvořte přihlašovací jméno pro nasazující účet v instanci SQL Server.
  • Udělte přihlašovací oprávnění DBCreatoru k instanci SQL Server.
  • Po počátečním nasazení přidejte přihlašovací údaje do role db_owner v cílové databázi. To je povinné, protože při následných nasazeních upravujete existující databázi, nikoli vytváříte novou databázi.

K ověření v instanci SQL Server můžete použít ověřování NTLM nebo ověřování SQL Server:

  • Pokud používáte ověřování NTLM, musíte účtu služby sestavení udělit výše popsaná oprávnění.
  • Pokud používáte ověřování SQL Server, musíte účtu SQL Server udělit výše popsaná oprávnění. Do připojovacího řetězce, který používáte k nasazení databáze, musíte také zahrnout uživatelské jméno a heslo SQL Server.

Podrobné informace o konfiguraci oprávnění pro nasazení databáze najdete v tématu Konfigurace databázového serveru pro publikování nasazení webu.

Závěr

V tomto okamžiku byste měli při automatizaci nasazení webových aplikací a databází z team buildu rozumět požadovaným oprávněním spolu s možnostmi ověřování, které jsou pro vás otevřené. Měli byste být také schopni implementovat potřebná oprávnění na webových serverech služby IIS a SQL Server databázových serverech.

Další čtení

Další informace o konfiguraci serverových prostředí Windows pro podporu vzdáleného nasazení najdete v tématu Konfigurace serverových prostředí pro nasazení webu.