Dokumentation: Credentials
Flowy-Credentials
Flowy klassifiziert Credentials, die für den Zugriff auf verschiedene Systeme oder Instanzen benötigt werden, als eigenen Objekttyp. Diese Designentscheidung bringt mehrere Vorteile und Überlegungen in Bezug auf Sicherheit, Funktionalität und Systemintegrität mit sich.
Indem Credentials als eigener Objekttyp behandelt werden, sorgt Flowy für eine klare Trennung zwischen sensiblen und nicht sensiblen Daten, was das Risiko einer versehentlichen Offenlegung von Credentials erheblich verringert. Dieser Ansatz vereinfacht außerdem die Verwaltung und Änderung von Credentials, macht sie effizienter und weniger fehleranfällig.
Eines der zentralen Merkmale der Credential-Verwaltung in Flowy ist die optionale Verschlüsselung von Credential-Werten. Mit dieser Funktion können Benutzer ihre sensiblen Daten um eine zusätzliche Sicherheitsebene erweitern. Es ist erwähnenswert, dass Flowy bewusst keine Versionsverwaltung für Credentials anbietet. Diese Entscheidung ist eine Sicherheitsmaßnahme, die das Risiko verhindern soll, frühere Versionen sensibler Daten offenzulegen, die weiterhin für unbefugten Zugriff oder missbräuchliche Aktivitäten von Wert sein könnten.
Warnung
Flowy ergreift zwar robuste Maßnahmen zum Schutz von Credentials, dennoch sollten Sie bestimmte Sicherheitsaspekte beachten. Beim Export in ein Modul werden bestimmte Eigenschaften und deren Werte aus Sicherheitsgründen bewusst ausgelassen. Dies ist eine gezielte Designentscheidung, die die Sicherheit des Systems und die Vertraulichkeit der Daten wahren soll. Sie verhindert versehentliche Lecks sensibler Informationen während des Exports.
Flowy unterstützt die folgenden Credential-Typen:
AWS
Wird vom S3-Step sowie für die AWS-SigV4-Authentifizierung im REST-Step verwendet.
| Feld | Pflicht | Beschreibung |
|---|---|---|
accessKeyId | ja | AWS-Access-Key-ID. |
secretKey | ja | AWS-Secret-Access-Key. |
region | ja | AWS-Region, z. B. eu-west-1. |
s3Bucket | nein | Name des S3-Buckets. Der S3-Step benötigt dieses Feld. Flowy verwendet immer diesen Bucket; er kann nicht pro Aufruf überschrieben werden. |
host | nein | Benutzerdefinierte Endpunkt-URL für einen S3-kompatiblen Dienst. Leer lassen, um den Standard-AWS-Endpunkt zu verwenden. |
Warnung
Im REST-Step liest die AWS-SigV4-Authentifizierung nur accessKeyId, secretKey und region. s3Bucket und host werden nicht verwendet.
Flowy
Wird für die Authentifizierung gegenüber anderen Flowy-Instanzen verwendet, z. B. um die Module-Hub-API aufzurufen.
| Feld | Pflicht | Beschreibung |
|---|---|---|
url | ja | Basis-URL der anderen Flowy-Instanz. |
apiKey | ja | API-Key für diese Instanz. Flowy sendet diesen Wert im Header x-auth-token, nicht als Bearer-Token. |
Gotenberg
Wird verwendet, um Dokumente über einen Gotenberg-Server zu konvertieren.
| Feld | Pflicht | Beschreibung |
|---|---|---|
baseUrl | ja | Basis-URL des Gotenberg-Servers. Fügen Sie keinen abschließenden Schrägstrich an. |
username | nein | Benutzername für die HTTP-Basic-Authentifizierung. Ist das Feld leer, sendet Flowy die Anfrage ohne Authentifizierung. |
password | nein | Passwort für die HTTP-Basic-Authentifizierung. Flowy maskiert dieses Feld in API-Antworten immer. |
IMAP
Wird verwendet, um eine Verbindung zu einem IMAP-Mailserver herzustellen.
| Feld | Pflicht | Beschreibung |
|---|---|---|
host | ja | Hostname oder IP-Adresse des IMAP-Servers. |
port | ja | Port des IMAP-Servers. |
username | ja | Benutzername des Mail-Kontos. |
password | ja | Passwort des Mail-Kontos. |
Warnung
Aktivieren oder deaktivieren Sie TLS im Step, nicht im Credential. Die Step-Eigenschaft sslEnable steuert dies. Wenn Sie im Step keinen Ordner angeben, liest Flowy den Ordner INBOX.
JDBC
Wird verwendet, um eine Verbindung zu einer relationalen Datenbank herzustellen.
| Feld | Pflicht | Beschreibung |
|---|---|---|
url | ja | JDBC-Verbindungs-URL. Siehe die Formate unten. |
username | ja | Benutzername der Datenbank. |
password | ja | Passwort des Datenbankbenutzers. |
maxPoolSize | ja | Maximale Anzahl gepoolter Verbindungen. Geben Sie eine positive Zahl an. |
connectionTimeout | ja | Verbindungs-Timeout in Millisekunden. Der Mindestwert ist 0. Der Standardwert ist 30000. |
Für die URL-Eingabe sollten die folgenden Formate verwendet werden:
| Datenbank | URL-Format |
|---|---|
| PostgreSQL | jdbc:postgresql://<host>:<port>/<databaseName> |
| MySql | jdbc:mysql://<host>:<port>/<databaseName> |
| Oracle | jdbc:oracle:thin:@<host>:<port>:<databaseName> |
| Sql Server | jdbc:sqlserver://<host>;databaseName=<databaseName> |
JMS
Wird verwendet, um über den Qpid-JMS-AMQP-Client eine Verbindung zu einem JMS-Broker herzustellen.
| Feld | Pflicht | Beschreibung |
|---|---|---|
uri | ja | Verbindungs-URI. Verwenden Sie eine AMQP-URI, z. B. amqp://<host>:5672 oder amqps://<host>:5671. Verwenden Sie keine ActiveMQ-tcp://-URI. |
username | nein | Benutzername. |
password | nein | Passwort des Benutzers. Flowy verbindet sich anonym, wenn Sie username oder password leer lassen. |
destinationType | ja | Einer der Werte QUEUE, TOPIC. |
destinationName | ja | Name der Queue bzw. des Topics. |
JWT
Wird verwendet, um ein signiertes JWT für die Verwendung in einem späteren Step zu erzeugen, z. B. als Bearer-Token in einem REST-Step. Dieses Credential validiert keine eingehenden JWTs.
| Feld | Pflicht | Beschreibung |
|---|---|---|
payload | nein | Map der Claims, die in das JWT aufgenommen werden. Weitere Claims können Sie im Step ergänzen. |
privateKey | ja | Privater Schlüssel als PEM-Text (Block -----BEGIN PRIVATE KEY-----) im PKCS8-Format. |
keyType | ja | Name des Schlüsselalgorithmus für java.security.KeyFactory, z. B. RSA oder EC. |
signatureAlgorithm | nein | Signaturalgorithmus, einer der Werte HS256, HS384, HS512, RS256, RS384, RS512, PS256, PS384, PS512, ES256, ES384, ES512. |
Kafka
Wird verwendet, um Kafka-Nachrichten zu erzeugen und zu konsumieren.
| Feld | Pflicht | Beschreibung |
|---|---|---|
bootstrapServers | ja | Kommagetrennte Liste der Kafka-Broker-Adressen. |
topic | ja | Name des Topics. |
groupId | nein | ID der Consumer-Gruppe. Der Standardwert ist flowy. |
Warnung
Dieses Credential unterstützt keine SSL- oder SASL-Konfiguration.
MongoDB
Wird verwendet, um eine Verbindung zu einer MongoDB-Datenbank herzustellen.
| Feld | Pflicht | Beschreibung |
|---|---|---|
url | ja | Verbindungs-URL. Siehe das Format unten. |
clientKey | nein | Vertrauenszertifikat als PEM-Text. Geben Sie dieses Feld an, um eine TLS-Verbindung zu aktivieren, z. B. für die Verbindung zu DocumentDB. |
inactiveTtl | ja | Maximale Leerlaufzeit einer gepoolten Verbindung in Millisekunden. Der Mindestwert ist 0. Der Standardwert ist 30000. |
Bitte geben Sie die URL im folgenden Format ein:
mongodb://<username>:<password>@host1:port1[,...hostN[:portN]]/<databaseName>?[options]
Beim Verbindungsaufbau zu DocumentDB müssen vorab die folgenden Schritte ausgeführt werden:
# download certificates, these depend on the locaton of your server
# eu-west-1 is used throughout this example
wget https://truststore.pki.rds.amazonaws.com/eu-west-1/eu-west-1-bundle.pem
# convert the certificate
openssl x509 -outform der -in eu-west-1-bundle.pem -out eu-west-1-bundle.der
# import the certificate to the default keystore
keytool -import -alias eu-west-1-bundle -keystore $JAVA_HOME/lib/security/cacerts -file eu-west-1-bundle.der
Paymentsense Connect E
Wird verwendet, um die Paymentsense-Connect-E-Zahlungs-API aufzurufen.
| Feld | Pflicht | Beschreibung |
|---|---|---|
hostUrl | ja | Basis-URL des Connect-E-Hosts. |
jwt | ja | JWT, das bei jeder Anfrage als Bearer-Token gesendet wird. |
merchantUrl | ja | Dieses Feld wird von der aktuellen Version nicht verwendet. |
Paymentsense PAC
Wird verwendet, um die Paymentsense-PAC-Terminal-API aufzurufen.
| Feld | Pflicht | Beschreibung |
|---|---|---|
hostUrl | ja | Basis-URL des PAC-Hosts. |
username | ja | PAC-Benutzername. Flowy sendet ihn per HTTP-Basic-Authentifizierung. |
apiKey | ja | PAC-API-Key. Flowy sendet ihn als Passwort der Basic-Authentifizierung. |
softwareHouseId | ja | Wird im Header Software-House-Id gesendet. |
installerId | ja | Wird im Header Installer-Id gesendet. |
Plugin
Wird mit dem Plugin-Step verwendet. Dieses Credential hat keine festen Felder. Flowy führt die gesamte Map zusammen mit den Einstellungswerten des Plugins und der Step-Eingabe in die Plugin-Eingabe zusammen. Jedes Plugin definiert, welche Schlüssel es liest.
Beispiel: Das HighMobility-Plugin liest serviceAccountApiKey, serviceAccountPrivateKey, clientCertificate, clientPrivateKey, oauthClientId und oauthClientSecret aus diesem Credential.
RabbitMQ
Wird verwendet, um RabbitMQ-Nachrichten zu erzeugen und zu konsumieren.
| Feld | Pflicht | Beschreibung |
|---|---|---|
host | ja | Hostname oder IP-Adresse des Brokers. |
port | ja | Port des Brokers, z. B. 5672, oder 5671 für TLS. |
username | ja | Benutzername. |
password | ja | Passwort des Benutzers. |
virtualHost | nein | Virtual Host von RabbitMQ. Ist das Feld leer, verwendet Flowy den Standard der Client-Bibliothek, /. |
exchange | nein | Dieses Feld wird von der aktuellen Version nicht verwendet. |
routingKey | ja (damit der Step funktioniert) | Flowy verwendet diesen Wert als Queue-Namen, nicht als AMQP-Exchange-Routing-Key. |
rootCertificate | nein | Root-Zertifikat für TLS-Verbindungen. |
rootCertificatePassword | nein | Passwort für rootCertificate. |
clientCertificate | nein | Client-Zertifikat für Mutual TLS. |
clientPrivateKey | nein | Privater Schlüssel für clientCertificate. |
Warnung
Flowy aktiviert TLS nur, wenn Sie rootCertificate, clientCertificate und clientPrivateKey gemeinsam angeben.
Rest
Wird mit dem REST-Step verwendet, wenn der Step keine integrierte Authentifizierung benötigt. Dieses Credential hat keine festen Felder und akzeptiert beliebige Schlüssel-Wert-Paare; Flowy validiert die Schlüssel nicht. Hinterlegen Sie alle benötigten Schlüssel-Wert-Paare und referenzieren Sie sie über die URL, die Header oder den Body des Steps.
| Feld | Pflicht | Beschreibung |
|---|---|---|
certificate | nein | Client-Zertifikat für Mutual TLS. Flowy liest diesen Schlüssel, sofern vorhanden, unabhängig von den übrigen hinterlegten Schlüsseln. |
passphrase | nein | Passphrase für certificate. |
Script
Wird mit dem Script-Step verwendet. Dieses Credential hat keine festen Felder. Flowy führt die gesamte Map in die Skriptvariablen zusammen, sodass Sie jeden Schlüssel aus dem Skript lesen können. Schreiben Sie im Skript-Quelltext #<key>, um auf ein Credential-Feld zu verweisen, z. B. #username.
Security
Wird mit dem Security-Step verwendet, um einen Wert zu verschlüsseln, zu entschlüsseln oder zu signieren.
| Feld | Pflicht | Beschreibung |
|---|---|---|
passphrase | nein | Secret, das als Verschlüsselungs- bzw. Signaturschlüssel verwendet wird. Ist das Feld leer, verwendet Flowy die Standard-Passphrase der Anwendung. Flowy verwendet diesen Wert als Klartext-Secret, nicht als Schlüsseldatei. |
key | nein | Dieses Feld wird von der aktuellen Version nicht verwendet. |
Warnung
Die AES-Methode unterstützt Verschlüsselung und Entschlüsselung. Die Methode HMAC-SHA256 unterstützt nur das Signieren; Flowy unterstützt für diese Methode keine Entschlüsselung.
Slack
Wird mit dem Slack-Step über die Slack Web API verwendet.
| Feld | Pflicht | Beschreibung |
|---|---|---|
token | ja | Slack-API-Token. Flowy sendet diesen Wert als Bearer-Token. |
channelId | ja | ID des Standardkanals. Der Step kann diesen Wert für einen einzelnen Aufruf überschreiben. |
SMTP
Wird verwendet, um E-Mails über einen SMTP-Server zu versenden.
| Feld | Pflicht | Beschreibung |
|---|---|---|
host | ja | Hostname oder IP-Adresse des SMTP-Servers. |
port | ja | Port des SMTP-Servers. |
username | ja | Benutzername des Mail-Kontos. |
senderAddress | nein | E-Mail-Adresse des Absenders. Ist das Feld leer, verwendet Flowy username. |
password | ja | Passwort des Mail-Kontos. |
connectionTimeout | nein | Verbindungs-Timeout in Millisekunden. Der Standardwert ist 10000. |
timeout | nein | Lese-Timeout in Millisekunden. Der Standardwert ist 10000. |
writeTimeout | nein | Schreib-Timeout in Millisekunden. Der Standardwert ist 10000. |
Warnung
Flowy verwendet immer STARTTLS. Die aktuelle Version unterstützt keine reine SSL-Verbindung.
Twilio
Wird verwendet, um SMS-Nachrichten über die Twilio-REST-API zu versenden.
| Feld | Pflicht | Beschreibung |
|---|---|---|
sid | ja | SID des Twilio-Kontos. Flowy sendet diesen Wert als Benutzernamen der HTTP-Basic-Authentifizierung. |
token | ja | Twilio-Auth-Token. Flowy sendet diesen Wert als Passwort der Basic-Authentifizierung. |

