[{"data":1,"prerenderedAt":1124},["ShallowReactive",2],{"/de-de/blog/secrets-manager-in-public-beta":3,"navigation-de-de":347,"banner-de-de":767,"footer-de-de":776,"blog-post-authors-de-de-Joe Randazzo|Mark Settle":1015,"blog-related-posts-de-de-secrets-manager-in-public-beta":1042,"blog-promotions-de-de":1062,"next-steps-de-de":1114},{"id":4,"title":5,"authors":6,"body":9,"category":328,"date":329,"description":330,"extension":331,"externalUrl":332,"featured":333,"heroImage":334,"meta":335,"navigation":336,"path":337,"seo":338,"slug":340,"stem":341,"tags":342,"template":345,"updatedDate":332,"__hash__":346},"blogPosts/de-de/blog/secrets-manager-in-public-beta.md","CI/CD-Zugangsdaten absichern mit GitLab Secrets Manager",[7,8],"Joe Randazzo","Mark Settle",{"type":10,"value":11,"toc":317},"minimark",[12,21,31,36,39,42,46,55,66,142,145,150,153,156,164,168,177,180,183,190,194,197,200,204,213,217,221,224,243,246,255,263,267,313],[13,14,15,16,20],"p",{},"Viele Zugangsdaten-Leaks beginnen gleich: Jemand braucht ein Credential, hat keinen geeigneten Ort dafür und improvisiert. Das Ergebnis ist eine CI/CD-Variable mit zu weitreichenden Berechtigungen, eine Konfigurationsdatei oder eine ",[17,18,19],"code",{},".env","-Datei, die „nur kurz\" committet wird.",[13,22,23,24,30],{},"GitLab Secrets Manager, ",[25,26,29],"a",{"href":27,"rel":28},"https://docs.gitlab.com/ci/secrets/secrets_manager/",[],"jetzt in der öffentlichen Beta"," mit GitLab 19.0, speichert Credentials auf derselben Plattform, die auch den Code und die Pipelines ausführt. Jedes Secret ist auf die Jobs beschränkt, die es benötigen, und unterliegt den Zugriffskontrollen, die bereits für Code gelten. Weniger Secrets landen am falschen Ort – und wenn eines kompromittiert wird, bleibt der Schadenskreis kleiner.",[32,33,35],"h2",{"id":34},"wo-secrets-normalerweise-landen","Wo Secrets normalerweise landen",[13,37,38],{},"Entwicklungsteams greifen oft standardmäßig auf CI/CD-Variablen zurück. Variable auf Projekt- oder Gruppenebene setzen, Wert maskieren, Pipeline aktualisieren. Von da an wird der Wert in jeden Job injiziert, und jede Person mit Pipeline-Zugriff kann ihn lesen. Dieses Muster widerspricht dem Least-Privilege-Prinzip – hält aber den Build am Laufen.",[13,40,41],{},"Die übliche Alternative ist ein eigenständiger Vault. Das holt die Secrets zwar aus der CI/CD-Konfiguration heraus, bringt aber eine dauerhafte operative Steuer mit sich: ein weiteres System zur Authentifizierung, ein weiteres Zugriffsmodell zur Pflege und ein weiterer Audit-Stream, der bei einem Incident manuell korreliert werden muss.",[32,43,45],{"id":44},"secrets-manager-in-bestehenden-projekten-ausprobieren","Secrets Manager in bestehenden Projekten ausprobieren",[13,47,48,49,54],{},"GitLab Secrets Manager ist eine native GitLab-Funktion auf Basis von ",[25,50,53],{"href":51,"rel":52},"https://openbao.org/",[],"OpenBao"," – bereits Teil der Plattform, sodass Credentials innerhalb der bestehenden Projekt- und Gruppenstruktur bleiben.",[13,56,57,58,61,62,65],{},"Ein Secret lässt sich aus CI/CD-Variablen herauslösen, indem es in der ",[17,59,60],{},".gitlab-ci.yml"," mit dem Schlüsselwort ",[17,63,64],{},"secrets:"," deklariert wird:",[67,68,73],"pre",{"className":69,"code":70,"language":71,"meta":72,"style":72},"language-yaml shiki shiki-themes github-light","deploy:\n  secrets:\n    DATABASE_PASSWORD:\n      gitlab_secrets_manager:\n        name: db-password\n  script:\n    - deploy --password $DATABASE_PASSWORD\n","yaml","",[17,74,75,88,96,104,112,125,133],{"__ignoreMap":72},[76,77,80,84],"span",{"class":78,"line":79},"line",1,[76,81,83],{"class":82},"shJU0","deploy",[76,85,87],{"class":86},"sgsFI",":\n",[76,89,91,94],{"class":78,"line":90},2,[76,92,93],{"class":82},"  secrets",[76,95,87],{"class":86},[76,97,99,102],{"class":78,"line":98},3,[76,100,101],{"class":82},"    DATABASE_PASSWORD",[76,103,87],{"class":86},[76,105,107,110],{"class":78,"line":106},4,[76,108,109],{"class":82},"      gitlab_secrets_manager",[76,111,87],{"class":86},[76,113,115,118,121],{"class":78,"line":114},5,[76,116,117],{"class":82},"        name",[76,119,120],{"class":86},": ",[76,122,124],{"class":123},"sYBdl","db-password\n",[76,126,128,131],{"class":78,"line":127},6,[76,129,130],{"class":82},"  script",[76,132,87],{"class":86},[76,134,136,139],{"class":78,"line":135},7,[76,137,138],{"class":86},"    - ",[76,140,141],{"class":123},"deploy --password $DATABASE_PASSWORD\n",[13,143,144],{},"Standardmäßig schreibt GitLab das Secret in eine temporäre Datei und stellt den Pfad als Umgebungsvariable bereit, die auf diesen Job beschränkt ist. Die Übergabe des Pfads statt des Werts reduziert die Offenlegung in Unterprozessen, Crash-Dumps und Telemetriedaten.",[146,147,149],"h3",{"id":148},"das-zugriffsmodell-das-bereits-besteht","Das Zugriffsmodell, das bereits besteht",[13,151,152],{},"Ein eigenständiger Secrets Manager zwingt dazu, zwei Zugriffsmodelle parallel zu pflegen. Jedes Team, jede Anwendung und jede Berechtigungsgrenze, die bereits in GitLab modelliert ist, muss im Secrets-Tool nachgebaut und synchron gehalten werden – wenn Teammitglieder hinzukommen, Rollen wechseln oder das Unternehmen verlassen. Driften die beiden Systeme auseinander – wenn ausgeschiedene Teammitglieder weiterhin Zugriff behalten oder Anwendungen Berechtigungen ansammeln, die sie nicht mehr benötigen – entstehen ausnutzbare Lücken.",[13,154,155],{},"Secrets Manager nutzt die bestehende Gruppen- und Projektstruktur als Isolierungsgrenze – ohne separate Struktur, die aufgebaut und gepflegt werden müsste. Lese-, Erstellungs-, Aktualisierungs- und Löschberechtigungen lassen sich pro Teammitglied, Gruppe oder Rolle festlegen – mit denselben Kontrollen wie für Code. Secrets auf Gruppenebene stehen jedem darunter liegenden Projekt zur Verfügung: gemeinsame Credentials einmal definieren, überall vererben. Verlässt jemand das Projekt oder wird entfernt, erlischt der Zugriff auf die zugehörigen Secrets sofort.",[13,157,158],{},[159,160],"img",{"alt":161,"src":162,"title":163},"Screenshot der GitLab Secrets Manager-Seite mit der Tabelle „Gespeicherte Secrets\". Jede Zeile zeigt den Secret-Namen, den Umgebungs- und Branch-Scope, das Erstellungsdatum sowie den Status „Healthy\".","https://res.cloudinary.com/about-gitlab-com/image/upload/v1779288172/o7dlh5uo18gdv6kqxflq.png","Projektspezifische Credentials im GitLab Secrets Manager",[146,165,167],{"id":166},"jedes-secret-auf-den-job-beschränkt-der-es-benötigt","Jedes Secret auf den Job beschränkt, der es benötigt",[13,169,170,171,176],{},"Als das ",[25,172,175],{"href":173,"rel":174},"https://about.gitlab.com/blog/pipeline-security-lessons-from-march-supply-chain-incidents/",[],"Axios-npm-Paket im März 2025 kompromittiert wurde",", mussten Organisationen, die eine betroffene Version einsetzten, davon ausgehen, dass alle Credentials, die ihre Pipelines berührt hatten, in Angreiferhänden lagen. Kompromittierte Secrets mussten rotiert, jedes erreichbare System geprüft werden.",[13,178,179],{},"Je weiter der Geltungsbereich eines Secrets reicht, desto größer das Schadensausmaß bei einer Kompromittierung – und das Entwicklungsteam trägt diese Kosten neben dem Sicherheitsteam, in Form von blockierten Merges und fehlgeschlagenen Builds. Enger Scoping begrenzt die Bereinigung auf die Systeme, die ein kompromittiertes Credential tatsächlich erreichen konnte.",[13,181,182],{},"Secrets Manager begrenzt das Schadensausmaß, indem er jedes Credential auf den Job beschränkt, der es benötigt. Welche Jobs ein bestimmtes Secret abrufen dürfen, entscheidet das System anhand von drei Job-Attributen: Zielumgebung, Branch und ob dieser Branch geschützt ist. Wildcards funktionieren bei Umgebung und Branch. Da die Geltungsbereiche durch Job-Attribute definiert werden, die GitLab bereits erfasst, ist kein zweites System erforderlich, das mit der Pipeline abgeglichen werden müsste.",[13,184,185,186,189],{},"Wenn ein Job ausgeführt wird, fordert er den Wert des benötigten Secrets an. Das Secrets-Backend verifiziert die Job-Identität, prüft Branch und Umgebung gegen die Scope-Regeln – und gibt den Wert erst dann zurück. Bedingungen lassen sich kombinieren: Eine einzelne Regel kann verlangen, dass ein Job auf einem geschützten Branch läuft und eine ",[17,187,188],{},"production/*","-Umgebung ansteuert, bevor er Credentials erhält. Endet der Job, wird das Secret verworfen. Nichts bleibt auf dem Runner; Job-Protokolle werden maskiert. Eine CI-Variable hingegen bleibt in der Projektkonfiguration auf unbestimmte Zeit lesbar.",[146,191,193],{"id":192},"ein-secret-bis-zur-pipeline-zurückverfolgen","Ein Secret bis zur Pipeline zurückverfolgen",[13,195,196],{},"Wenn ein Secret kompromittiert wird oder eine Abhängigkeit betroffen ist, muss das Incident-Response-Team das Credential durch jede Pipeline und jeden Job verfolgen, der es verwendet hat. Bisher bedeutete das: Logs aus CI-System, Secrets-Tool, Identity Provider und allen weiteren Berührungspunkten manuell zusammenführen.",[13,198,199],{},"GitLab Secrets Manager protokolliert Erstellungs-, Aktualisierungs- und Löschereignisse für Secrets auf Projekt- und Gruppenebene im selben Audit-Trail wie die übrige Plattform – Änderungen am Secrets-Inventar stehen neben den übrigen Governance-Aufzeichnungen. Secret-Abrufe aus CI/CD-Pipelines werden als Audit Events mit Pipeline- und Job-IDs gestreamt: Das Incident-Response-Team kann nachvollziehen, wo ein Secret verwendet wurde, ohne Daten aus verschiedenen Systemen manuell zu korrelieren. Audit-Logging ist für Self-Managed-Deployments bereits verfügbar; GitLab.com-Unterstützung folgt während des öffentlichen Beta-Programms.",[32,201,203],{"id":202},"secrets-manager-in-aktion","Secrets Manager in Aktion",[205,206],"iframe",{"src":207,"frameBorder":208,"allow":209,"referrerPolicy":210,"style":211,"title":212},"https://player.vimeo.com/video/1194101911?badge=0&autopause=0&player_id=0&app_id=58479","0","autoplay; fullscreen; picture-in-picture; clipboard-write; encrypted-media; web-share","strict-origin-when-cross-origin","position:absolute;top:0;left:0;width:100%;height:100%;","19.0 Secrets Manager",[214,215],"script",{"src":216},"https://player.vimeo.com/api/player.js",[32,218,220],{"id":219},"an-der-öffentlichen-beta-teilnehmen","An der öffentlichen Beta teilnehmen",[13,222,223],{},"GitLab Secrets Manager ist in der öffentlichen Beta für Premium- und Ultimate-Nutzer auf GitLab.com und Self-Managed-Deployments verfügbar. GitLab Dedicated folgt in Kürze.",[13,225,226,227,231,232,237,238,242],{},"Auf GitLab.com: ",[25,228,230],{"href":27,"rel":229},[],"Opt-in und erstes Secret erstellen",". Für Self-Managed-Deployments: ",[25,233,236],{"href":234,"rel":235},"https://docs.gitlab.com/administration/secrets_manager/",[],"Installationsschritte"," folgen und ",[25,239,241],{"href":27,"rel":240},[],"Secrets Manager als Entwicklungsteam nutzen",".",[13,244,245],{},"Die Integrationen für HashiCorp Vault, AWS Secrets Manager, Azure Key Vault und Google Cloud Secret Manager laufen neben GitLab Secrets Manager weiter – für eine Einführung im eigenen Tempo.",[13,247,248,249,254],{},"Der Secrets Manager ist während der Beta-Phase kostenlos. Nach General Availability wird er als kostenpflichtige Funktion über ",[25,250,253],{"href":251,"rel":252},"https://docs.gitlab.com/subscriptions/gitlab_credits/",[],"GitLab Credits"," abgerechnet – Opt-in erforderlich, mit rechtzeitiger Ankündigung vor GA.",[13,256,257,262],{},[25,258,261],{"href":259,"rel":260},"https://gitlab.com/gitlab-org/gitlab/-/work_items/598100",[],"Feedback einreichen",", damit die Funktion vor GA weiterentwickelt werden kann.",[32,264,266],{"id":265},"weitere-beiträge-zu-gitlab-190","Weitere Beiträge zu GitLab 19.0",[268,269,270,278,285,292,299,306],"ul",{},[271,272,273],"li",{},[25,274,277],{"href":275,"rel":276},"https://docs.gitlab.com/releases/19/gitlab-19-0-released/",[],"GitLab 19.0 veröffentlicht",[271,279,280],{},[25,281,284],{"href":282,"rel":283},"https://about.gitlab.com/de-de/blog/more-ai-models-for-duo-agent-platform-self-hosted/",[],"Mehr KI-Modelle für GitLab Duo Agent Platform Self-Hosted",[271,286,287],{},[25,288,291],{"href":289,"rel":290},"https://about.gitlab.com/de-de/blog/transform-mrs-to-automated-workflow/",[],"Merge Requests von manuellen Aufgaben in einen automatisierten Workflow verwandeln",[271,293,294],{},[25,295,298],{"href":296,"rel":297},"https://about.gitlab.com/de-de/blog/track-ci-component-usage/",[],"CI-Komponentennutzung in deinem Unternehmen nachverfolgen",[271,300,301],{},[25,302,305],{"href":303,"rel":304},"https://about.gitlab.com/de-de/blog/sbom-based-dependency-scanning/",[],"Supply-Chain-Risiken reduzieren – mit SBOM-basiertem Dependency Scanning",[271,307,308],{},[25,309,312],{"href":310,"rel":311},"https://about.gitlab.com/de-de/blog/security-configuration-profiles/",[],"Vollständige Security-Scanner-Abdeckung der Codebase in Minuten",[314,315,316],"style",{},"html pre.shiki code .shJU0, html code.shiki .shJU0{--shiki-default:#22863A}html pre.shiki code .sgsFI, html code.shiki .sgsFI{--shiki-default:#24292E}html pre.shiki code .sYBdl, html code.shiki .sYBdl{--shiki-default:#032F62}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}",{"title":72,"searchDepth":90,"depth":90,"links":318},[319,320,325,326,327],{"id":34,"depth":90,"text":35},{"id":44,"depth":90,"text":45,"children":321},[322,323,324],{"id":148,"depth":98,"text":149},{"id":166,"depth":98,"text":167},{"id":192,"depth":98,"text":193},{"id":202,"depth":90,"text":203},{"id":219,"depth":90,"text":220},{"id":265,"depth":90,"text":266},"security","2026-05-21","Secrets Manager (Public Beta): Job-Scoping, Least-Privilege-Zugriffsmodell und lückenloser Audit-Trail – nativ in GitLab 19.0.","md",null,false,"https://res.cloudinary.com/about-gitlab-com/image/upload/v1779189265/iqzyhhiwagxzwywvjzow.png",{},true,"/de-de/blog/secrets-manager-in-public-beta",{"config":339,"title":5,"description":330},{"noIndex":333},"secrets-manager-in-public-beta","de-de/blog/secrets-manager-in-public-beta",[328,343,344],"product","features","BlogPost","tgm3MANHdXC9X0Avei-nXZ8lWb3M9RcKeF5qOuzNU-Y",{"logo":348,"freeTrial":353,"sales":358,"login":363,"items":368,"search":685,"minimal":719,"duo":737,"switchNav":746,"pricingDeployment":757},{"config":349},{"href":350,"dataGaName":351,"dataGaLocation":352},"/de-de/","gitlab logo","header",{"text":354,"config":355},"Kostenlose Testversion anfordern",{"href":356,"dataGaName":357,"dataGaLocation":352},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com/de-de&glm_content=default-saas-trial/","free trial",{"text":359,"config":360},"Vertrieb kontaktieren",{"href":361,"dataGaName":362,"dataGaLocation":352},"/de-de/sales/","sales",{"text":364,"config":365},"Anmelden",{"href":366,"dataGaName":367,"dataGaLocation":352},"https://gitlab.com/users/sign_in/","sign in",[369,398,500,505,609,665],{"text":370,"config":371,"menu":373},"Plattform",{"dataNavLevelOne":372},"platform",{"type":374,"columns":375},"cards",[376,382,390],{"title":370,"description":377,"link":378},"Die intelligente Orchestrierungsplattform für DevSecOps",{"text":379,"config":380},"Die Plattform erkunden",{"href":381,"dataGaName":372,"dataGaLocation":352},"/de-de/platform/",{"title":383,"description":384,"link":385},"GitLab Duo Agent Platform","Agentische KI für den gesamten Software-Lebenszyklus",{"text":386,"config":387},"Lerne GitLab Duo kennen",{"href":388,"dataGaName":389,"dataGaLocation":352},"/de-de/gitlab-duo-agent-platform/","gitlab duo agent platform",{"title":391,"description":392,"link":393},"Warum GitLab?","Erfahre, warum sich Unternehmen für GitLab entscheiden",{"text":394,"config":395},"Mehr erfahren",{"href":396,"dataGaName":397,"dataGaLocation":352},"/de-de/why-gitlab/","why gitlab",{"text":399,"left":336,"config":400,"menu":402},"Produkt",{"dataNavLevelOne":401},"solutions",{"type":403,"link":404,"columns":408,"feature":479},"lists",{"text":405,"config":406},"Alle Lösungen anzeigen",{"href":407,"dataGaName":401,"dataGaLocation":352},"/de-de/solutions/",[409,434,457],{"title":410,"description":411,"link":412,"items":417},"Automatisierung","CI/CD und Automatisierung zur Beschleunigung der Bereitstellung",{"config":413},{"icon":414,"href":415,"dataGaName":416,"dataGaLocation":352},"AutomatedCodeAlt","/de-de/solutions/delivery-automation/","automated software delivery",[418,422,425,430],{"text":419,"config":420},"CI/CD",{"href":421,"dataGaLocation":352,"dataGaName":419},"/de-de/solutions/continuous-integration/",{"text":383,"config":423},{"href":388,"dataGaLocation":352,"dataGaName":424},"gitlab duo agent platform - product menu",{"text":426,"config":427},"Quellcodeverwaltung",{"href":428,"dataGaLocation":352,"dataGaName":429},"/de-de/solutions/source-code-management/","Source Code Management",{"text":431,"config":432},"Automatische Softwarebereitstellung",{"href":415,"dataGaLocation":352,"dataGaName":433},"Automated software delivery",{"title":435,"description":436,"link":437,"items":442},"Sicherheit","Entwickle Code schneller ohne Abstriche bei der Sicherheit",{"config":438},{"href":439,"dataGaName":440,"dataGaLocation":352,"icon":441},"/de-de/solutions/application-security-testing/","security and compliance","ShieldCheckLight",[443,447,452],{"text":444,"config":445},"Anwendungssicherheitstests",{"href":439,"dataGaName":446,"dataGaLocation":352},"Application security testing",{"text":448,"config":449},"Sicherheit der Software-Lieferkette",{"href":450,"dataGaLocation":352,"dataGaName":451},"/de-de/solutions/supply-chain/","Software supply chain security",{"text":453,"config":454},"Software-Compliance",{"href":455,"dataGaName":456,"dataGaLocation":352},"/de-de/solutions/software-compliance/","software compliance",{"title":458,"link":459,"items":464},"Messung",{"config":460},{"icon":461,"href":462,"dataGaName":463,"dataGaLocation":352},"DigitalTransformation","/de-de/solutions/visibility-measurement/","visibility and measurement",[465,469,474],{"text":466,"config":467},"Sichtbarkeit und Messung",{"href":462,"dataGaLocation":352,"dataGaName":468},"Visibility and Measurement",{"text":470,"config":471},"Wertstrommanagement",{"href":472,"dataGaLocation":352,"dataGaName":473},"/de-de/solutions/value-stream-management/","Value Stream Management",{"text":475,"config":476},"Analysen und Einblicke",{"href":477,"dataGaLocation":352,"dataGaName":478},"/de-de/solutions/analytics-and-insights/","Analytics and insights",{"title":480,"type":403,"items":481},"GitLab für",[482,488,494],{"text":483,"config":484},"Enterprise",{"icon":485,"href":486,"dataGaLocation":352,"dataGaName":487},"Building","/de-de/enterprise/","enterprise",{"text":489,"config":490},"Kleinunternehmen",{"icon":491,"href":492,"dataGaLocation":352,"dataGaName":493},"Work","/de-de/small-business/","small business",{"text":495,"config":496},"Öffentlicher Sektor",{"icon":497,"href":498,"dataGaLocation":352,"dataGaName":499},"Organization","/de-de/solutions/public-sector/","public sector",{"text":501,"config":502},"Preise",{"href":503,"dataGaName":504,"dataGaLocation":352,"dataNavLevelOne":504},"/de-de/pricing/","pricing",{"text":506,"config":507,"menu":509},"Ressourcen",{"dataNavLevelOne":508},"resources",{"type":403,"link":510,"columns":514,"feature":598},{"text":511,"config":512},"Alle Ressourcen anzeigen",{"href":513,"dataGaName":508,"dataGaLocation":352},"/de-de/resources/",[515,548,570],{"title":516,"items":517},"Erste Schritte",[518,523,528,533,538,543],{"text":519,"config":520},"Installieren",{"href":521,"dataGaName":522,"dataGaLocation":352},"/de-de/install/","install",{"text":524,"config":525},"Kurzanleitungen",{"href":526,"dataGaName":527,"dataGaLocation":352},"/de-de/get-started/","quick setup checklists",{"text":529,"config":530},"Lernen",{"href":531,"dataGaLocation":352,"dataGaName":532},"https://university.gitlab.com/","learn",{"text":534,"config":535},"Produktdokumentation",{"href":536,"dataGaName":537,"dataGaLocation":352},"https://docs.gitlab.com/","product documentation",{"text":539,"config":540},"Best-Practice-Videos",{"href":541,"dataGaName":542,"dataGaLocation":352},"/de-de/getting-started-videos/","best practice videos",{"text":544,"config":545},"Integrationen",{"href":546,"dataGaName":547,"dataGaLocation":352},"/de-de/integrations/","integrations",{"title":549,"items":550},"Entdecken",[551,556,561,565],{"text":552,"config":553},"Kundenerfolge",{"href":554,"dataGaName":555,"dataGaLocation":352},"/de-de/customers/","customer success stories",{"text":557,"config":558},"Blog",{"href":559,"dataGaName":560,"dataGaLocation":352},"/de-de/blog/","blog",{"text":562,"config":563},"The Source",{"href":564,"dataGaName":560,"dataGaLocation":352},"/de-de/the-source/",{"text":566,"config":567},"Remote",{"href":568,"dataGaName":569,"dataGaLocation":352},"https://handbook.gitlab.com/handbook/company/culture/all-remote/","remote",{"title":571,"items":572},"Vernetzen",[573,578,583,588,593],{"text":574,"config":575},"GitLab-Services",{"href":576,"dataGaName":577,"dataGaLocation":352},"/de-de/services/","services",{"text":579,"config":580},"Community",{"href":581,"dataGaName":582,"dataGaLocation":352},"/community/","community",{"text":584,"config":585},"Forum",{"href":586,"dataGaName":587,"dataGaLocation":352},"https://forum.gitlab.com/","forum",{"text":589,"config":590},"Veranstaltungen",{"href":591,"dataGaName":592,"dataGaLocation":352},"/events/","events",{"text":594,"config":595},"Partner",{"href":596,"dataGaName":597,"dataGaLocation":352},"/de-de/partners/","partners",{"config":599,"title":602,"text":603,"link":604},{"background":600,"textColor":601},"url('https://res.cloudinary.com/about-gitlab-com/image/upload/v1777322348/qpq8yrgn8knii57omj0c.png')","#000","Neues bei GitLab","Über die neuesten Funktionen und Verbesserungen auf dem Laufenden bleiben.",{"text":605,"config":606},"Aktuelle Nachrichten",{"href":607,"dataGaName":608,"dataGaLocation":352},"/de-de/whats-new/","whats new",{"text":610,"config":611,"menu":613},"Company",{"dataNavLevelOne":612},"company",{"type":403,"columns":614},[615],{"items":616},[617,622,628,630,635,640,645,650,655,660],{"text":618,"config":619},"Über",{"href":620,"dataGaName":621,"dataGaLocation":352},"/de-de/company/","about",{"text":623,"config":624,"footerGa":627},"Karriere",{"href":625,"dataGaName":626,"dataGaLocation":352},"/jobs/","jobs",{"dataGaName":626},{"text":589,"config":629},{"href":591,"dataGaName":592,"dataGaLocation":352},{"text":631,"config":632},"Geschäftsführung",{"href":633,"dataGaName":634,"dataGaLocation":352},"/company/team/e-group/","leadership",{"text":636,"config":637},"Handbuch",{"href":638,"dataGaName":639,"dataGaLocation":352},"https://handbook.gitlab.com/","handbook",{"text":641,"config":642},"Investor Relations",{"href":643,"dataGaName":644,"dataGaLocation":352},"https://ir.gitlab.com/","investor relations",{"text":646,"config":647},"Trust Center",{"href":648,"dataGaName":649,"dataGaLocation":352},"/de-de/security/","trust center",{"text":651,"config":652},"AI Transparency Center",{"href":653,"dataGaName":654,"dataGaLocation":352},"/de-de/ai-transparency-center/","ai transparency center",{"text":656,"config":657},"Newsletter",{"href":658,"dataGaName":659,"dataGaLocation":352},"/company/contact/#contact-forms","newsletter",{"text":661,"config":662},"Presse",{"href":663,"dataGaName":664,"dataGaLocation":352},"/press/","press",{"text":666,"config":667,"menu":668},"Kontakt",{"dataNavLevelOne":612},{"type":403,"columns":669},[670],{"items":671},[672,675,680],{"text":359,"config":673},{"href":361,"dataGaName":674,"dataGaLocation":352},"talk to sales",{"text":676,"config":677},"Support-Portal",{"href":678,"dataGaName":679,"dataGaLocation":352},"https://support.gitlab.com","support portal",{"text":681,"config":682},"Kundenportal",{"href":683,"dataGaName":684,"dataGaLocation":352},"https://customers.gitlab.com/customers/sign_in/","customer portal",{"close":686,"login":687,"suggestions":694},"Schließen",{"text":688,"link":689},"Um Repositorys und Projekte zu durchsuchen, melde dich an bei",{"text":690,"config":691},"gitlab.com",{"href":366,"dataGaName":692,"dataGaLocation":693},"search login","search",{"text":695,"default":696},"Vorschläge",[697,699,704,706,711,716],{"text":383,"config":698},{"href":388,"dataGaName":383,"dataGaLocation":693},{"text":700,"config":701},"Codevorschläge (KI)",{"href":702,"dataGaName":703,"dataGaLocation":693},"/de-de/solutions/code-suggestions/","Code Suggestions (AI)",{"text":419,"config":705},{"href":421,"dataGaName":419,"dataGaLocation":693},{"text":707,"config":708},"GitLab auf AWS",{"href":709,"dataGaName":710,"dataGaLocation":693},"/de-de/partners/technology-partners/aws/","GitLab on AWS",{"text":712,"config":713},"GitLab auf Google Cloud",{"href":714,"dataGaName":715,"dataGaLocation":693},"/de-de/partners/technology-partners/google-cloud-platform/","GitLab on Google Cloud",{"text":391,"config":717},{"href":396,"dataGaName":718,"dataGaLocation":693},"Why GitLab?",{"freeTrial":720,"mobileIcon":725,"desktopIcon":730,"secondaryButton":733},{"text":721,"config":722},"Kostenlos testen",{"href":723,"dataGaName":357,"dataGaLocation":724},"https://gitlab.com/-/trials/new/","nav",{"altText":726,"config":727},"GitLab-Symbol",{"src":728,"dataGaName":729,"dataGaLocation":724},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758203874/jypbw1jx72aexsoohd7x.svg","gitlab icon",{"altText":726,"config":731},{"src":732,"dataGaName":729,"dataGaLocation":724},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758203875/gs4c8p8opsgvflgkswz9.svg",{"text":516,"config":734},{"href":735,"dataGaName":736,"dataGaLocation":724},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com/de-de/get-started/","get started",{"freeTrial":738,"mobileIcon":742,"desktopIcon":744},{"text":739,"config":740},"Mehr über GitLab Duo erfahren",{"href":388,"dataGaName":741,"dataGaLocation":724},"gitlab duo",{"altText":726,"config":743},{"src":728,"dataGaName":729,"dataGaLocation":724},{"altText":726,"config":745},{"src":732,"dataGaName":729,"dataGaLocation":724},{"button":747,"mobileIcon":752,"desktopIcon":754},{"text":748,"config":749},"/Option",{"href":750,"dataGaName":751,"dataGaLocation":724},"#contact","switch",{"altText":726,"config":753},{"src":728,"dataGaName":729,"dataGaLocation":724},{"altText":726,"config":755},{"src":756,"dataGaName":729,"dataGaLocation":724},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1773335277/ohhpiuoxoldryzrnhfrh.png",{"freeTrial":758,"mobileIcon":763,"desktopIcon":765},{"text":759,"config":760},"Zurück zur Preisübersicht",{"href":503,"dataGaName":761,"dataGaLocation":724,"icon":762},"back to pricing","GoBack",{"altText":726,"config":764},{"src":728,"dataGaName":729,"dataGaLocation":724},{"altText":726,"config":766},{"src":732,"dataGaName":729,"dataGaLocation":724},{"title":768,"button":769,"config":774},"Sieh dir an, wie agentische KI die Softwarebereitstellung transformiert",{"text":770,"config":771},"Jetzt live bei GitLab Transcend am 10. Juni dabei sein",{"href":772,"dataGaName":773,"dataGaLocation":352},"/de-de/events/transcend/virtual/","transcend event",{"layout":775,"disabled":333},"release",{"data":777},{"text":778,"source":779,"edit":785,"contribute":790,"config":795,"items":800,"minimal":1006},"Git ist eine Marke von Software Freedom Conservancy und unsere Verwendung von „GitLab“ erfolgt unter Lizenz.",{"text":780,"config":781},"Quelltext der Seite anzeigen",{"href":782,"dataGaName":783,"dataGaLocation":784},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/","page source","footer",{"text":786,"config":787},"Diese Seite bearbeiten",{"href":788,"dataGaName":789,"dataGaLocation":784},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/content/","web ide",{"text":791,"config":792},"Beteilige dich",{"href":793,"dataGaName":794,"dataGaLocation":784},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/CONTRIBUTING.md/","please contribute",{"twitter":796,"facebook":797,"youtube":798,"linkedin":799},"https://x.com/gitlab","https://www.facebook.com/gitlab","https://www.youtube.com/channel/UCnMGQ8QHMAnVIsI3xJrihhg","https://www.linkedin.com/company/gitlab-com",[801,846,899,941,972],{"title":501,"links":802,"subMenu":817},[803,807,812],{"text":804,"config":805},"Tarife anzeigen",{"href":503,"dataGaName":806,"dataGaLocation":784},"view plans",{"text":808,"config":809},"Vorteile von Premium",{"href":810,"dataGaName":811,"dataGaLocation":784},"/de-de/pricing/premium/","why premium",{"text":813,"config":814},"Vorteile von Ultimate",{"href":815,"dataGaName":816,"dataGaLocation":784},"/de-de/pricing/ultimate/","why ultimate",[818],{"title":666,"links":819},[820,822,824,826,831,836,841],{"text":359,"config":821},{"href":361,"dataGaName":362,"dataGaLocation":784},{"text":676,"config":823},{"href":678,"dataGaName":679,"dataGaLocation":784},{"text":681,"config":825},{"href":683,"dataGaName":684,"dataGaLocation":784},{"text":827,"config":828},"Status",{"href":829,"dataGaName":830,"dataGaLocation":784},"https://status.gitlab.com/","status",{"text":832,"config":833},"Nutzungsbedingungen",{"href":834,"dataGaName":835,"dataGaLocation":784},"/terms/","terms of use",{"text":837,"config":838},"Datenschutzerklärung",{"href":839,"dataGaName":840,"dataGaLocation":784},"/de-de/privacy/","privacy statement",{"text":842,"config":843},"Cookie-Einstellungen",{"dataGaName":844,"dataGaLocation":784,"id":845,"isOneTrustButton":336},"cookie preferences","ot-sdk-btn",{"title":399,"links":847,"subMenu":856},[848,852],{"text":849,"config":850},"DevSecOps-Plattform",{"href":381,"dataGaName":851,"dataGaLocation":784},"devsecops platform",{"text":853,"config":854},"KI-unterstützte Entwicklung",{"href":388,"dataGaName":855,"dataGaLocation":784},"ai-assisted development",[857],{"title":858,"links":859},"Themen",[860,864,869,874,879,884,889,894],{"text":419,"config":861},{"href":862,"dataGaName":863,"dataGaLocation":784},"/de-de/topics/ci-cd/","cicd",{"text":865,"config":866},"GitOps",{"href":867,"dataGaName":868,"dataGaLocation":784},"/de-de/topics/gitops/","gitops",{"text":870,"config":871},"DevOps",{"href":872,"dataGaName":873,"dataGaLocation":784},"/de-de/topics/devops/","devops",{"text":875,"config":876},"Versionskontrolle",{"href":877,"dataGaName":878,"dataGaLocation":784},"/de-de/topics/version-control/","version control",{"text":880,"config":881},"DevSecOps",{"href":882,"dataGaName":883,"dataGaLocation":784},"/de-de/topics/devsecops/","devsecops",{"text":885,"config":886},"Cloud-nativ",{"href":887,"dataGaName":888,"dataGaLocation":784},"/de-de/topics/cloud-native/","cloud native",{"text":890,"config":891},"KI für das Programmieren",{"href":892,"dataGaName":893,"dataGaLocation":784},"/de-de/topics/devops/ai-for-coding/","ai for coding",{"text":895,"config":896},"Agentische KI",{"href":897,"dataGaName":898,"dataGaLocation":784},"/de-de/topics/agentic-ai/","agentic ai",{"title":900,"links":901},"Lösungen",[902,905,907,912,916,919,922,925,927,929,931,936],{"text":444,"config":903},{"href":439,"dataGaName":904,"dataGaLocation":784},"Application Security Testing",{"text":431,"config":906},{"href":415,"dataGaName":416,"dataGaLocation":784},{"text":908,"config":909},"Agile Entwicklung",{"href":910,"dataGaName":911,"dataGaLocation":784},"/de-de/solutions/agile-delivery/","agile delivery",{"text":913,"config":914},"SCM",{"href":428,"dataGaName":915,"dataGaLocation":784},"source code management",{"text":419,"config":917},{"href":421,"dataGaName":918,"dataGaLocation":784},"continuous integration & delivery",{"text":470,"config":920},{"href":472,"dataGaName":921,"dataGaLocation":784},"value stream management",{"text":865,"config":923},{"href":924,"dataGaName":868,"dataGaLocation":784},"/de-de/solutions/gitops/",{"text":483,"config":926},{"href":486,"dataGaName":487,"dataGaLocation":784},{"text":489,"config":928},{"href":492,"dataGaName":493,"dataGaLocation":784},{"text":495,"config":930},{"href":498,"dataGaName":499,"dataGaLocation":784},{"text":932,"config":933},"Bildungswesen",{"href":934,"dataGaName":935,"dataGaLocation":784},"/de-de/solutions/education/","education",{"text":937,"config":938},"Finanzdienstleistungen",{"href":939,"dataGaName":940,"dataGaLocation":784},"/de-de/solutions/finance/","financial services",{"title":506,"links":942},[943,945,947,949,952,954,957,959,961,964,966,968,970],{"text":519,"config":944},{"href":521,"dataGaName":522,"dataGaLocation":784},{"text":524,"config":946},{"href":526,"dataGaName":527,"dataGaLocation":784},{"text":529,"config":948},{"href":531,"dataGaName":532,"dataGaLocation":784},{"text":534,"config":950},{"href":536,"dataGaName":951,"dataGaLocation":784},"docs",{"text":557,"config":953},{"href":559,"dataGaName":560,"dataGaLocation":784},{"text":955,"config":956},"Neuigkeiten",{"href":607,"dataGaName":608,"dataGaLocation":784},{"text":552,"config":958},{"href":554,"dataGaName":555,"dataGaLocation":784},{"text":566,"config":960},{"href":568,"dataGaName":569,"dataGaLocation":784},{"text":962,"config":963},"GitLab Services",{"href":576,"dataGaName":577,"dataGaLocation":784},{"text":579,"config":965},{"href":581,"dataGaName":582,"dataGaLocation":784},{"text":584,"config":967},{"href":586,"dataGaName":587,"dataGaLocation":784},{"text":589,"config":969},{"href":591,"dataGaName":592,"dataGaLocation":784},{"text":594,"config":971},{"href":596,"dataGaName":597,"dataGaLocation":784},{"title":973,"links":974},"Unternehmen",[975,977,979,981,983,985,990,995,997,999,1001],{"text":618,"config":976},{"href":620,"dataGaName":612,"dataGaLocation":784},{"text":623,"config":978},{"href":625,"dataGaName":626,"dataGaLocation":784},{"text":631,"config":980},{"href":633,"dataGaName":634,"dataGaLocation":784},{"text":636,"config":982},{"href":638,"dataGaName":639,"dataGaLocation":784},{"text":641,"config":984},{"href":643,"dataGaName":644,"dataGaLocation":784},{"text":986,"config":987},"Nachhaltigkeit",{"href":988,"dataGaName":989,"dataGaLocation":784},"/sustainability/","Sustainability",{"text":991,"config":992},"Vielfalt, Inklusion und Zugehörigkeit",{"href":993,"dataGaName":994,"dataGaLocation":784},"/de-de/diversity-inclusion-belonging/","Diversity, inclusion and belonging",{"text":646,"config":996},{"href":648,"dataGaName":649,"dataGaLocation":784},{"text":656,"config":998},{"href":658,"dataGaName":659,"dataGaLocation":784},{"text":661,"config":1000},{"href":663,"dataGaName":664,"dataGaLocation":784},{"text":1002,"config":1003},"Transparenzerklärung zu moderner Sklaverei",{"href":1004,"dataGaName":1005,"dataGaLocation":784},"https://handbook.gitlab.com/handbook/legal/modern-slavery-act-transparency-statement/","modern slavery transparency statement",{"items":1007},[1008,1010,1013],{"text":832,"config":1009},{"href":834,"dataGaName":835,"dataGaLocation":784},{"text":1011,"config":1012},"Cookies",{"dataGaName":844,"dataGaLocation":784,"id":845,"isOneTrustButton":336},{"text":837,"config":1014},{"href":839,"dataGaName":840,"dataGaLocation":784},[1016,1030],{"id":1017,"title":7,"body":332,"config":1018,"content":1020,"description":332,"extension":1024,"meta":1025,"navigation":336,"path":1026,"seo":1027,"stem":1028,"__hash__":1029},"blogAuthors/en-us/blog/authors/joe-randazzo.yml",{"template":1019},"BlogAuthor",{"name":7,"config":1021},{"headshot":1022,"ctfId":1023},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749664711/Blog/Author%20Headshots/randazzo.jpg","5DxpEbIVcwN2ukwiEMsHlH","yml",{},"/en-us/blog/authors/joe-randazzo",{},"en-us/blog/authors/joe-randazzo","Kg6ZOiBKQgjjlIpsfIAWHsug3iGMaAK1trTdXg4BaFI",{"id":1031,"title":8,"body":332,"config":1032,"content":1033,"description":332,"extension":1024,"meta":1037,"navigation":336,"path":1038,"seo":1039,"stem":1040,"__hash__":1041},"blogAuthors/en-us/blog/authors/mark-settle.yml",{"template":1019},{"name":8,"config":1034},{"headshot":1035,"ctfId":1036},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1779215794/fw131xublkzdvjdadd4q.png","marksettle",{},"/en-us/blog/authors/mark-settle",{},"en-us/blog/authors/mark-settle","aur3jcqDyhashUtyXhd1W7N3ZrN09waCQv135AABEt4",[1043,1049,1054],{"title":312,"description":1044,"heroImage":334,"category":328,"date":1045,"authors":1046,"slug":1048,"externalUrl":332},"Security Configuration Profiles ermöglichen schnellere Scanner-Rollouts. Wie GitLab 19.0 Tausende von Projekten in Minuten abdeckt – ohne Lücken.","2026-05-26",[1047],"Michael Omokoh","security-configuration-profiles",{"title":305,"description":1050,"heroImage":334,"category":328,"date":1045,"authors":1051,"slug":1053,"externalUrl":332},"Transitive Abhängigkeiten erkennen, ihren Ursprung nachverfolgen und nach realer Exposition priorisieren.",[8,1052],"Joel Patterson","sbom-based-dependency-scanning",{"title":1055,"description":1056,"heroImage":1057,"category":328,"date":1058,"authors":1059,"slug":1061,"externalUrl":332},"Irreführende CVSS-Scores automatisch korrigieren – 5 Richtlinienmuster","CVSS-Scores spiegeln das tatsächliche Risiko nicht wider. Severity-Override-Richtlinien in GitLab automatisieren Korrekturen nach CVE, CWE und Verzeichnis.","https://res.cloudinary.com/about-gitlab-com/image/upload/v1772630163/akp8ly2mrsfrhsb0liyb.png","2026-05-13",[1060],"Grant Hickman","severity-override-vulnerability-management-policy",{"promotions":1063},[1064,1078,1089,1100],{"id":1065,"categories":1066,"header":1068,"text":1069,"button":1070,"image":1075},"ai-modernization",[1067],"ai","Hält KI, was uns versprochen wurde?","Das Quiz dauert maximal 5 Minuten.",{"text":1071,"config":1072},"Ermittle deinen KI-Reifegrad",{"href":1073,"dataGaName":1074,"dataGaLocation":560},"/de-de/assessments/ai-modernization-assessment/","modernization assessment",{"config":1076},{"src":1077},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1772138786/qix0m7kwnd8x2fh1zq49.png",{"id":1079,"categories":1080,"header":1081,"text":1069,"button":1082,"image":1086},"devops-modernization",[343,883],"Verwaltest du Tool-Chaos oder stellst du Innovationen bereit?",{"text":1083,"config":1084},"Ermittle deinen DevOps-Reifegrad",{"href":1085,"dataGaName":1074,"dataGaLocation":560},"/de-de/assessments/devops-modernization-assessment/",{"config":1087},{"src":1088},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1772138785/eg818fmakweyuznttgid.png",{"id":1090,"categories":1091,"header":1092,"text":1069,"button":1093,"image":1097},"security-modernization",[328],"Tauschst du Schnelligkeit gegen Sicherheit ein?",{"text":1094,"config":1095},"Ermittle deinen Sicherheitsreifegrad",{"href":1096,"dataGaName":1074,"dataGaLocation":560},"/de-de/assessments/security-modernization-assessment/",{"config":1098},{"src":1099},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1772138786/p4pbqd9nnjejg5ds6mdk.png",{"id":1101,"paths":1102,"header":1105,"text":1106,"button":1107,"image":1112},"github-azure-migration",[1103,1104],"migration-from-azure-devops-to-gitlab","integrating-azure-devops-scm-and-gitlab","Ist dein Team bereit für den Umzug von GitHub nach Azure?","GitHub stellt bereits auf Azure um. Finde heraus, was das für dich bedeutet.",{"text":1108,"config":1109},"Erfahre, wie GitLab im Vergleich zu GitHub abschneidet",{"href":1110,"dataGaName":1111,"dataGaLocation":560},"/de-de/compare/gitlab-vs-github/github-azure-migration/","github azure migration",{"config":1113},{"src":1088},{"header":1115,"blurb":1116,"button":1117,"secondaryButton":1122},"Beginne noch heute, schneller zu entwickeln","Entdecke, was dein Team mit der intelligenten Orchestrierungsplattform für DevSecOps erreichen kann.\n",{"text":1118,"config":1119},"Kostenlosen Test starten",{"href":1120,"dataGaName":357,"dataGaLocation":1121},"https://gitlab.com/-/trial_registrations/new?glm_content=default-saas-trial&glm_source=about.gitlab.com/de-de/","feature",{"text":359,"config":1123},{"href":361,"dataGaName":362,"dataGaLocation":1121},1781392741906]