QueryProxy
Doküman menüsü

Microsoft Teams entegrasyonu

Sorgu taleplerini bir Teams kanalında duyurun ve onayları HMAC ile doğrulanan aksiyon ucu üzerinden bağlayın.

Güncelleme:

Teams entegrasyonunun iki yarısı vardır: incoming webhook ile kanala duyurular ve otomasyonunuzun (outgoing webhook ya da Power Automate akışı) onaylamak/reddetmek için çağırabileceği bir aksiyon ucu.

Duyurular

  1. Teams kanalınıza bir Incoming Webhook ekleyin ve URL’sini kopyalayın.
  2. QueryProxy’de (DBA olarak) ChatOps’u açın; webhook URL’sini yapıştırın ve bir HMAC secret belirleyin (güçlü, rastgele bir dize — aşağıdaki aksiyon ucunda da aynı secret kullanılır). İkisi de şifreli saklanır.

Yeni talepler; talep sahibi, bağlantı, ifade sayısı, SQL önizlemesi ve Review in QueryProxy bağlantısıyla bir kart olarak yayınlanır. Kararlar da alındıkça kanala duyurulur.

Aksiyon ucu

Teams tarafındaki otomasyondan onaylamak/reddetmek için şu çağrıyı yapın:

POST https://queryproxy-sunucunuz/webhooks/teams/actions
Authorization: HMAC <base64(HMAC_SHA256(raw_body, secret))>
Content-Type: application/json
{
  "action": "approve",
  "request_id": 123,
  "actor_email": "[email protected]",
  "reason": "opsiyonel — reject için kullanılır"
}
  • actionapprove ya da reject.
  • request_id — duyuru kartındaki talep numarası.
  • actor_email — kararı veren QueryProxy hesabı. Webdeki kurallar aynen geçerlidir: kullanıcının talebin takımında DBA rolü olmalı ve kendi talebine karar verememelidir.
  • reasonreject için opsiyonel; varsayılanı “Rejected via Teams by <isim>”.

İmza şeması Microsoft Teams outgoing webhook’larıyla birebir aynıdır — ham istek gövdesinin HMAC-SHA256’sı, base64 kodlu, Authorization: HMAC … başlığında — yani bir Teams outgoing webhook’u ucu doğrudan çağırabilir; bir Power Automate akışı da aynı başlığı hesaplayabilir.

Güvenlik

  • Geçersiz ya da eksik HMAC 401 döner ve hiçbir şeyi değiştirmez.
  • Yanıtlar JSON’dur ({"ok": true|false, "message": "…"}); yetkilendirme hataları gerekçesiyle 403 döner.
  • Uç, QueryProxy’deki her webhook gibi hız sınırlıdır.

Slack’teki gibi tam etkileşimli Adaptive Card düğmeleri bir Teams bot kaydı gerektirir ve yol haritasındadır; bugün Teams’ten onay akışını aksiyon ucu karşılar.

Gezinmek için ok tuşları, açmak için Enter.