Anwendung zur Verwaltung von SendGrid Templates für Cyber Produkte
.msi-Datei von GitHub Releases herunterladen und installieren
Wichtig: Es muss der verschlüsselte Datenbank ConnectionString als Umgebungsvariable COIT_TOOLKIT_DATABASE_CONNECTIONSTRING zur Verfügung stehen.
Beim Programmstart wird in den GitHub Releases automatisch nach Updates gesucht und diese installiert.
SELECT
templates.TemplateId,
templates.Title,
templates.SenderEmail,
templates.SenderName,
STRING_AGG(pmt.PackageValue, '&') AS PackageValues
FROM
[dbo].[PhishingMailTemplates] templates
LEFT JOIN
[dbo].[PackagePhishingMailTemplates] pmt
ON templates.Id = pmt.PhishingMailTemplateId
GROUP BY
templates.TemplateId,
templates.Title,
templates.SenderEmail,
templates.SenderName;Save it as CSV.
SELECT [SuccessfullyFooled]
,[TemplateId]
FROM [dbo].[PhishingMailInformation]
LEFT JOIN PhishingMailTemplates ON PhishingMailTemplates.Id = PhishingMailInformation.PhishingMailTemplateIdSave it as CSV.
Das Repo enthält bereits:
- CSharpier und eine
.editorconfig .gitattributesfür konsistente Zeilenenden.gitignorefür VisualStudio und Rider.github/workflows/build_and_publish.ymlmit der das Projekt automatisch beim Erstellen von Releases veröffentlicht wird
Wenn eine neue Version released werden soll, muss nur ein neuer GitHub Release mit einem Tag im Format x.x.x erstellt werden.
Das Deployment startet daraufhin in einer GitHub Action durch den gepushten Tag automatisch.
Die .NET Version für den Build and publish workflow wird in der global.json festgelegt und muss in der Zukunft eventuell angepasst werden.
Um die notwendigen Packages aus dem privaten Package-Manager der co-IT aus GitHub zu laden, wird eine eigene nuget.config benötigt.
- Stelle sicher, dass die GitHub Cli bei dir installiert ist (winget)
- Falls du bisher noch nie eine
nuget.configanlegen musstest führegh auth login --scopes read:packagesaus und verknüpfge deinen GitHub Account - Lege eine
nuget.configDatei mit dem folgenden Inhalt an
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<packageSources>
<clear />
<add key="nuget.org" value="https://api.nuget.org/v3/index.json" />
<add key="github" value="https://nuget.pkg.github.com/co-IT/index.json" />
</packageSources>
<packageSourceCredentials>
<github>
<add key="Username" value="{Nutzername}" />
<add key="ClearTextPassword" value="{Token}" />
</github>
</packageSourceCredentials>
</configuration>
- Führe
gh api user -q ".login"aus und ersetze{Nutzername}in dernuget.configmit dem Ergebnis - Führe
gh auth tokenaus und ersetze{Token}in dernuget.configmit dem Ergebnis
In Zukunft, kannst du diese nuget.config auch für andere Tools und Projekte nutzen, die Zugriff auf den co-IT GitHub package manager benötigen und musst nicht mehr den Schritten von oben folgen