Zum Hauptinhalt springen

Monday.com

Dieser Leitfaden erklärt, wie Sie die Einrichtung der Single Sign-On (SSO) zwischen SmartLink und Monday.com unter Verwendung von SAML 2.0 oder OpenID Connect konfigurieren können.

Voraussetzungen​

  • Monday.com Enterprise Plan
  • Administratorzugriff auf Monday.com
  • Verifizierte E-Mail-Domain
  • Anwendung in SmartLink mit SAML2 oder OpenID Connect konfiguriert

Hinweis: SSO ist nur mit dem Enterprise-Plan von Monday.com verfügbar.

Konfiguration mit SAML 2.0 (Empfohlen)​

1. Anwendung erstellen​

  1. Melden Sie sich als Administrator bei SmartLink an
  2. Gehen Sie zu Anwendungen → Hinzufügen
  3. Erstellen Sie eine neue Anwendung:
    • Name: Monday.com
    • URL: https://[your-account].monday.com
    • Beschreibung: Arbeitsmanagementplattform
    • Symbol: Wählen Sie das Symbol von Monday.com

2. SAML2 konfigurieren​

  1. Im Tab Authentifizierung
  2. Wählen Sie SAML2
  3. Konfigurieren Sie die folgenden Parameter:
    • Entity ID: https://[your-smartlink].link.vaultys.org/[appid]
    • ACS-URL: https://[your-account].monday.com/saml2/acs
    • Format NameID: emailAddress
    • App ID: [appid] (automatisch generierte eindeutige Kennung)

3. Metadaten abrufen​

Notieren Sie die folgenden URLs:

  • IdP-Metadaten: https://[your-smartlink].link.vaultys.org/api/saml2/[appid]/metadata
  • SSO-URL: https://[your-smartlink].link.vaultys.org/api/saml2/sso/[appid]
  • SLO-URL: https://[your-smartlink].link.vaultys.org/api/saml2/slo/[appid]
  • Entity ID: https://[your-smartlink].link.vaultys.org/[appid]
  • X.509-Zertifikat: Herunterladen von SmartLink

Konfiguration in Monday.com​

1. Zugriff auf die SSO-Einstellungen​

  1. Melden Sie sich als Administrator bei Monday.com an
  2. Klicken Sie auf Ihr Avatar → Verwaltung
  3. Im Menü: Sicherheit → Single Sign-On
  4. Klicken Sie auf SSO einrichten

2. SAML konfigurieren​

Wählen Sie SAML und konfigurieren Sie:

  • SSO-URL: https://[your-smartlink].link.vaultys.org/api/saml2/sso/[appid]
  • Entity ID: https://[your-smartlink].link.vaultys.org/[appid]
  • Zertifikat: Fügen Sie das X.509-Zertifikat von SmartLink ein
  • Abmeldungs-URL: https://[your-smartlink].link.vaultys.org/api/saml2/slo/[appid]

3. Attributkonfiguration​

Monday-AttributSAML-AttributErforderlich
E-Mailemail✅
VornamefirstName✅
NachnamelastName✅
Titeltitle❌
Teamdepartment❌

Konfiguration mit OpenID Connect​

1. OpenID Connect konfigurieren​

  1. In der Anwendung Monday.com
  2. Tab Authentifizierung → OpenID Connect
  3. Notieren Sie:
    • Client-ID: monday-xxxxxx
    • Client-Geheimnis: secret-xxxxxx
    • App-ID: [appid]

2. Umleitungs-URLs hinzufügen​

https://[your-account].monday.com/auth/oidc/callback

Konfiguration in Monday.com​

  1. In Sicherheit → Single Sign-On
  2. Wählen Sie OpenID Connect
  3. Konfigurieren Sie:
  • Discovery-URL: https://[your-smartlink].link.vaultys.org/api/oidc/[appid]/.well-known/openid-configuration
  • Client-ID: monday-xxxxxx
  • Client-Geheimnis: secret-xxxxxx
  • Bereiche: openid profile email groups

Arbeitsbereichskonfiguration​

Organisationsstruktur​

workspaces:
- name: "Marketing"
default_role: "member"
groups:
- "smartlink-marketing"
boards:
- "Kampagnen"
- "Inhaltskalender"
- "Social Media"

- name: "Entwicklung"
default_role: "member"
groups:
- "smartlink-developers"
boards:
- "Sprintplanung"
- "Fehlerverfolgung"
- "Feature-Anfragen"

- name: "Management"
default_role: "viewer"
groups:
- "smartlink-executives"
boards:
- "Firmen-OKRs"
- "Finanzberichte"

Berechtigungen und Rollen​

RolleBerechtigungen
EigentümerVollständige Kontrolle über das Konto
AdministratorBenutzerverwaltung und Einstellungen
MitgliedErstellung und Bearbeitung von Inhalten
BetrachterNur Lesen
GastEingeschränkter Zugriff auf bestimmte Boards

SCIM-Konfiguration​

Für die automatische Benutzersynchronisierung:

{
"scim_endpoint": "https://[your-account].monday.com/scim/v2",
"scim_token": "Bearer xxxxxx",
"provisioning": {
"create_users": true,
"update_users": true,
"deactivate_users": true,
"sync_groups": true
}
}

Automatisierungen mit SSO​

Automatische Boarderstellung​

// Automation zum Erstellen von Boards basierend auf Gruppen
const mondaySDK = require('monday-sdk-js');
const monday = mondaySDK();

async function createBoardForGroup(groupName, userEmail) {
const boardTemplate = {
'smartlink-sales': 'sales-pipeline-template',
'smartlink-marketing': 'marketing-campaign-template',
'smartlink-dev': 'sprint-board-template'
};

if (boardTemplate[groupName]) {
const board = await monday.api(`
mutation {
duplicate_board(
board_id: ${boardTemplate[groupName]},
board_name: "${groupName} Workspace",
owner_ids: [${userEmail}]
) {
id
}
}
`);
return board;
}
}

Workflows basierend auf der Authentifizierung​

automation:
- trigger: "user_login_sso"
conditions:
- first_login: true
- group: "smartlink-new-employees"
actions:
- create_board: "onboarding_template"
- assign_to_team: "hr_team"
- send_notification: "welcome_message"
- add_to_board: "company_announcements"

Integration mit der Monday.com-API​

API-Konfiguration mit SSO​

const fetch = require('node-fetch');

class MondayAPIClient {
constructor(apiKey) {
this.apiKey = apiKey;
this.apiUrl = 'https://api.monday.com/v2';
}

async getUserBySSOEmail(email) {
const query = `
query {
users(emails: ["${email}"]) {
id
name
email
teams {
id
name
}
}
}
`;

const response = await fetch(this.apiUrl, {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'Authorization': this.apiKey
},
body: JSON.stringify({ query })
});

return response.json();
}
}

Webhooks für die Synchronisierung​

// Webhook zur Synchronisierung von SSO-Änderungen
app.post('/webhook/monday-sso', async (req, res) => {
const { event, userId, userEmail, groups } = req.body;

switch(event) {
case 'user.created':
await createUserWorkspace(userId, userEmail);
break;
case 'user.updated':
await updateUserPermissions(userId, groups);
break;
case 'user.deactivated':
await archiveUserContent(userId);
break;
}

res.status(200).send('OK');
});

Konfigurationstest​

1. Verbindungstest​

  1. Melden Sie sich von Monday.com ab
  2. Gehen Sie zu https://[your-account].monday.com
  3. Klicken Sie auf Mit SSO anmelden
  4. Geben Sie Ihre Unternehmens-E-Mail-Adresse ein
  5. Authentifizieren Sie sich über SmartLink
  6. Überprüfen Sie den Zugriff auf Monday.com

2. Berechtigungstest​

# Test über die API
curl -X POST https://api.monday.com/v2 \
-H "Authorization: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"query": "{ me { name email teams { name } } }"}'

3. Mobiler Test​

Die Monday.com-Apps unterstützen SSO:

  • Monday.com iOS/Android
  • Monday.com Desktop (Windows/Mac)

Fehlerbehebung​

Fehler "SAML-Assertion fehlgeschlagen"​

Problem: Die SAML-Assertion wird abgelehnt

Lösung:

  1. Stellen Sie sicher, dass die Entity ID [appid] ist
  2. Überprüfen Sie das Format NameID: emailAddress
  3. Stellen Sie sicher, dass die E-Mail in Monday.com existiert
  4. Überprüfen Sie die Logs: Verwaltung → Aktivitätsprotokoll

Fehler "Benutzer nicht autorisiert"​

Problem: Der Benutzer kann nicht zugreifen

Lösung:

  1. Überprüfen Sie, ob die E-Mail-Domain verifiziert ist
  2. Stellen Sie sicher, dass der Benutzer in Monday.com eingeladen ist
  3. Überprüfen Sie die SCIM-Gruppen, wenn konfiguriert

Gruppen werden nicht synchronisiert​

Problem: Die Monday-Teams stimmen nicht mit den SmartLink-Gruppen überein

Lösung:

<!-- Richtige Formatierung für SAML-Gruppen -->
<saml:Attribute Name="groups">
<saml:AttributeValue>smartlink-monday-admins</saml:AttributeValue>
<saml:AttributeValue>smartlink-monday-users</saml:AttributeValue>
</saml:Attribute>

Probleme mit Automatisierungen​

Problem: Automatisierungen werden nicht für SSO-Benutzer ausgelöst

Lösung:

  1. Stellen Sie sicher, dass der Benutzer die erforderlichen Berechtigungen hat
  2. Stellen Sie sicher, dass die Automation für "Alle Benutzer" aktiviert ist
  3. Testen Sie mit einem Nicht-SSO-Konto, um das Problem zu isolieren

Sicherheit​

Empfohlene Konfiguration​

{
"security_settings": {
"enforce_sso": true,
"session_duration": "8h",
"ip_restrictions": {
"enabled": true,
"whitelist": ["10.0.0.0/8", "192.168.0.0/16"]
},
"2fa_backup": true,
"audit_retention": "365d",
"api_token_expiry": "90d",
"guest_restrictions": {
"disable_export": true,
"disable_api_access": true,
"view_only": true
}
}
}

Compliance​

  • SOC 2 Typ II: Zertifiziert
  • ISO 27001: Zertifiziert
  • DSGVO: Konform mit verfügbarer DPA
  • HIPAA: Konform (Enterprise+ Plan)

Benutzermigration​

Migrationskript​

import requests
import csv
from datetime import datetime

class MondaySSOMigration:
def __init__(self, api_key, account_id):
self.api_key = api_key
self.account_id = account_id
self.api_url = "https://api.monday.com/v2"

def migrate_users(self, csv_file):
"""Benutzer zu SSO migrieren"""
with open(csv_file, 'r') as file:
reader = csv.DictReader(file)
results = []

for user in reader:
result = self.migrate_single_user(user)
results.append(result)

return results

def migrate_single_user(self, user):
# Passwortauthentifizierung deaktivieren
# SSO-Einladung senden
# Ergebnis protokollieren
pass

Ressourcen​