Integration in Service Hooks

Azure DevOps Services | Azure DevOps Server 2022 – Azure DevOps Server 2019 | TFS 2018

Mit Diensthooks können Sie Aufgaben für andere Dienste ausführen, wenn Ereignisse in Ihrem Projekt in Azure DevOps auftreten.

Sie können beispielsweise eine Karte in Trello erstellen, wenn ein Arbeitselement erstellt wird, oder eine Pushbenachrichtigung an die mobilen Geräte Ihres Teams senden, wenn ein Build fehlschlägt. Sie können Service Hooks auch in benutzerdefinierten Apps und Diensten verwenden, um Aktivitäten effizienter zu steuern, wenn Ereignisse in Ihren Projekten auftreten.

Wie funktionieren Service-Hooks?

Service Hook-Herausgeber definieren eine Reihe von Ereignissen , die Sie abonnieren können. Abonnements lauschen auf diese Ereignisse und definieren Aktionen , die basierend auf dem Ereignis ausgeführt werden sollen.

Abonnements richten sich auch an Consumer, bei denen es sich um externe Dienste handelt, die ihre eigenen Aktionen ausführen können, wenn Ereignisse auftreten.

Diagramm der Diensthaken.

Hinweis

Für Diensthooks müssen IP-Bereiche für eingehende Verbindungen mit Dienstendpunkten zugelassen werden. Der Dienstendpunkt ist der Satz von Eigenschaften, die für einen Diensthook bereitgestellt werden. Weitere Informationen finden Sie unter Zulässige Adresslisten und Netzwerkverbindungen, IP-Adressen und Bereichseinschränkungen.

Verfügbare Dienste

Die folgenden Dienste sind als Ziel von Diensthooks verfügbar. Weitere Informationen zu anderen Apps und Diensten, die in Azure DevOps integriert werden, findest du im Visual Studio Marketplace.

Dienst Unterstützte Ereignisse Unterstützte Aktionen
App Center Arbeitselement aktualisiert Benachrichtigung senden
AppVeyor Code gepusht Auslösen eines AppVeyor-Builds
Azuqua Alle Veröffentlichen des Ereignisses in FLO
Azure App Service Code gepusht Bereitstellen einer Web-App
Azure Service Bus Alle Senden einer Nachricht an einen Notification Hub, eine Service Bus-Warteschlange oder ein Service Bus-Thema
Azure Storage (in englischer Sprache) Alle Einfügen einer Nachricht in eine Speicherwarteschlange
Bamboo Build abgeschlossen, Code gepusht Hinzufügen eines Builds zur Warteschlange
Campfire Alle Posten einer Nachricht in einem Raum
Datadog Alle Veröffentlichen eines Ereignisses in Datadog
Grafana Releasebereitstellung abgeschlossen Hinzufügen einer Anmerkung zur Grafana-Datenbank
HipChat (Nicht mehr unterstützt)
HockeyApp Arbeitselement aktualisiert Benachrichtigung senden
Jenkins Build abgeschlossen, Code gepusht, PR-Merge versucht, Releasebereitstellung abgeschlossen Auslösen eines generischen oder Git-Builds
Microsoft Teams Alle Posten einer Nachricht in einem Kanal
MyGet Build abgeschlossen, Code gepusht Veröffentlichen eines NuGet-Pakets in MyGet, Auslösen eines MyGet-Builds
Office 365 Alle Posten einer Nachricht an eine Gruppe
Puffer Alle Posten einer Nachricht in einem Kanal
Trello Alle Erstellen einer Karte oder Liste
UserVoice Erstelltes oder aktualisiertes Arbeitselement Senden eines verknüpften Arbeitselementereignisses
Webhooks Alle Posten über HTTP
Workplace Message Apps Alle Senden von Benachrichtigungen
Zapier Alle Benachrichtigung senden
Zendesk Arbeitselement kommentiert Erstellen eines privaten Kommentars in einem Ticket

Erstellen eines Abonnements

Wenn Sie einen dieser Dienste in Azure DevOps integrieren, müssen Sie ein neues Abonnement erstellen. In vielen Fällen müssen Sie auch im anderen Dienst arbeiten. Weitere Informationen finden Sie in den Informationen zu dem Dienst, an dem Sie interessiert sind.

  1. Öffnen Sie die Administratorseite für ein Projekt im Webzugriff.

    Screenshot der hervorgehobenen Schaltfläche
  2. Führen Sie den Assistenten aus, um das Abonnement zu erstellen.

    Screenshot der hervorgehobenen Schaltfläche

  3. Wählen Sie den Dienst aus, in den Sie integrieren möchten.

    Wählen Sie den zu integrierenden Dienst aus.

  4. Wählen Sie das Ereignis, für das ausgelöst werden soll, und alle anwendbaren Filter aus.

    Auswählen des Ereignisses, für das ausgelöst werden soll, und beliebige Filter

  5. Wählen Sie eine Aktion aus, die für den Zieldienst ausgeführt werden soll.

    Hinweis

    Die Liste der verfügbaren Aktionen kann basierend auf dem ausgewählten Ereignistyp eingeschränkt werden.

    Screenshot: Auswahl einer Aktion für den Zieldienst

  6. Um zu bestätigen, dass die Einstellungen korrekt sind, testen Sie das Abonnement, und beenden Sie dann den Assistenten.

    Screenshot: Testbenachrichtigung 1

    Screenshot der Testbenachrichtigung 2.

  1. Öffnen Sie die Administratorseite für ein Projekt im Webzugriff.

    Screenshot der Administratorseite.

  2. Erstellen Sie ein Abonnement, indem Sie den Assistenten ausführen.

    Screenshot des hervorgehobenen Felds

  3. Wählen Sie den Dienst aus, in den Sie integrieren möchten.

    Screenshot: Auswahl der zu integrierenden Dienste

  4. Wählen Sie das Ereignis aus, für das ausgelöst werden soll, und alle Filter (falls zutreffend).

    Screenshot: Auswahl des Ereignisses, für das ausgelöst werden soll

  5. Wählen Sie eine Aktion aus, die für den Zieldienst ausgeführt werden soll.

    Hinweis

    Die Liste der verfügbaren Aktionen kann basierend auf dem ausgewählten Ereignistyp eingeschränkt werden.

    Screenshot der ausgewählten Aktion, die für den Zieldienst ausgeführt werden soll.

  6. Um zu bestätigen, dass die Einstellungen korrekt sind, testen Sie das Abonnement, und beenden Sie dann den Assistenten.

    Screenshot: Testbenachrichtigung 1

    Screenshot der Testbenachrichtigung 2.

Häufig gestellte Fragen

F: Welche Berechtigungen benötige ich, um ein Abonnement einzurichten?

A: Abonnements bearbeiten und Abonnements anzeigen. Standardmäßig verfügen nur Projektadministratoren über diese Berechtigungen. Um sie anderen Benutzern direkt zu gewähren, können Sie das Befehlszeilentool oder die Sicherheits-REST-API verwenden.

F: Welche Sicherheitsauswirkungen hat das Gewähren von Abonnements bearbeiten und Abonnements anzeigen ?

A: Der Benutzer mit diesen Berechtigungen kann alle im Projekt erstellten Abonnements und den Benachrichtigungsverlauf für diese Abonnements anzeigen. Dieser Benutzer kann dann eine beliebige Art von Service Hook-Abonnement in diesem Projekt erstellen. Wenn der Benutzer ein Abonnement für eine Ressource einrichtet, für die er andernfalls keine Zugriffsberechtigung hat, wird das Abonnement nicht ausgelöst.

Zum Beispiel: Wenn Sie keinen Zugriff auf Arbeitselemente im Bereichspfad XYZ haben und ein Abonnement für die Aktualisierungsereignisse für Arbeitselemente eingerichtet haben, erhalten Sie keine Benachrichtigungen für Aktualisierungen von Arbeitselementen im Bereichspfad XYZ. Wenn jedoch ein anderer Benutzer, der Zugriff auf die Arbeitselemente im Bereichspfad XYZ hat, diese "Arbeitselementaktualisierungsereignisse" empfängt, können Sie den Benachrichtigungsverlauf der Ereignisse des anderen Benutzers sehen, der Arbeitselementdaten enthält, auf die Sie sonst keinen Zugriff haben.

F: Kann ich Diensthookabonnements für ein Projekt programmgesteuert erstellen?

Antwort: Ja. Weitere Informationen finden Sie unter Erstellen eines Diensthooksabonnements.

F: Kann ich den Zugriff einer App auf meine Organisation entfernen, nachdem ich sie autorisiert habe?

Antwort: Ja. Sie können Autorisierungen aus Ihrem Profil widerrufen.

  1. Wechseln Sie von https://visualstudio.microsoft.com/zu Ihrer Profilseite.

    Stellen Sie sicher, dass Sie von der Visual Studio-Website (https://visualstudio.microsoft.com/) statt von Ihrer Organisation () aus beginnen,https://dev.azure.com/{orgName} da Ihr Profil, auf das von Ihrer Organisation zugegriffen wird, sie zur falschen Implementierung des Autorisierungsverwaltungsfeatures führt.

  2. Verwalten Sie Ihre Autorisierungen.

    Screenshot der hervorgehobenen Schaltfläche

  3. Widerrufen Sie alle Autorisierungen, die Sie nicht mehr zulassen möchten.

    Screenshot: Option

F: Warum können wir keine Diensthooks mehr für HipChat einrichten?

A: Atlassian hat die Unterstützung für HipChat offiziell eingestellt. Weitere Informationen zu dieser Ankündigung finden Sie hier.