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.
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.
Öffnen Sie die Administratorseite für ein Projekt im Webzugriff.
Führen Sie den Assistenten aus, um das Abonnement zu erstellen.
Wählen Sie den Dienst aus, in den Sie integrieren möchten.
Wählen Sie das Ereignis, für das ausgelöst werden soll, und alle anwendbaren Filter aus.
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.
Um zu bestätigen, dass die Einstellungen korrekt sind, testen Sie das Abonnement, und beenden Sie dann den Assistenten.
Öffnen Sie die Administratorseite für ein Projekt im Webzugriff.
Erstellen Sie ein Abonnement, indem Sie den Assistenten ausführen.
Wählen Sie den Dienst aus, in den Sie integrieren möchten.
Wählen Sie das Ereignis aus, für das ausgelöst werden soll, und alle Filter (falls zutreffend).
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.
Um zu bestätigen, dass die Einstellungen korrekt sind, testen Sie das Abonnement, und beenden Sie dann den Assistenten.
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.
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.Verwalten Sie Ihre Autorisierungen.
Widerrufen Sie alle Autorisierungen, die Sie nicht mehr zulassen möchten.
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.