{"id":10589,"date":"2024-09-24T10:30:19","date_gmt":"2024-09-24T08:30:19","guid":{"rendered":"https:\/\/wata.es\/?p=10589"},"modified":"2026-02-03T15:19:42","modified_gmt":"2026-02-03T14:19:42","slug":"wie-man-geheimnisse-in-bitbucket-handhabt","status":"publish","type":"post","link":"https:\/\/wata.es\/de\/wie-man-geheimnisse-in-bitbucket-handhabt\/","title":{"rendered":"Wie man Geheimnisse in Bitbucket handhabt"},"content":{"rendered":"\n<p>Sensible Daten wie Passw\u00f6rter, API-Tokens und DB-Zugangsdaten sind f\u00fcr die Projektentwicklung und das Testen unerl\u00e4sslich, sollten aber niemals im Klartext im Repository gespeichert werden. In diesem Abschnitt erkl\u00e4ren wir, wie WATA Factory diese Geheimnisse mit Hilfe von Bitbuckets eingebauten Funktionen verwaltet: Repository-Variablen und Deployment-Variablen. <\/p>\n\n\n\n<!--more-->\n\n\n\n<p>Um eine dieser L\u00f6sungen zu nutzen, ben\u00f6tigst du lediglich Schreibrechte. F\u00fcr die Einrichtung von Variablen jeglicher Art sind jedoch Admin-Rechte erforderlich. Wenn du mehr technische Informationen ben\u00f6tigst, kannst du <a href=\"https:\/\/support.atlassian.com\/bitbucket-cloud\/docs\/variables-and-secrets\/\" target=\"_blank\" rel=\"noopener noreferrer nofollow\">diesen Artikel<\/a> lesen.  <\/p>\n\n\n\n<p>Cypress ist eine der Referenzen von WATA Factory f\u00fcr automatisierte Test-Frameworks, daher werden wir ein Cypress-Projekt als Beispiel verwenden, obwohl dieser Ansatz in jedem Projekt mit einer anderen Technologie verwendet werden kann.<\/p>\n\n\n\n<p>In diesem Projekt haben wir einen Verweis auf die Datei credentials.ts in der cypress.config.ts. Wenn wir unsere automatisierten Tests in der Pipeline ausf\u00fchren wollen, m\u00fcssen wir die Datei credentials.ts im Repo haben, sonst schl\u00e4gt die Pipeline fehl. Wir wissen bereits, dass dies keine gute Praxis ist, also wie k\u00f6nnen wir das beheben?  <\/p>\n\n\n\n<p>Eingabe der Szene-Repository-Variablen. Mit dieser nativen Bitbucket-Funktion k\u00f6nnen wir definierte Variablen in unseren Pipelines referenzieren und sie nach Belieben verwenden. <\/p>\n\n\n\n<p>Unsere L\u00f6sung besteht aus diesen zwei einfachen Schritten:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Erstellen der Variablen in Bitbucket<\/li>\n\n\n\n<li>Erstellen der tempor\u00e4ren credentials.ts Datei<\/li>\n\n\n\n<li>Kopieren des Inhaltes der Variable in unsere tempor\u00e4re Datei<\/li>\n\n\n\n<li>FERTIG! Unser Projekt hat bereits die ben\u00f6tigte Datei mit all unseren Geheimnissen! <\/li>\n<\/ol>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Repository-Variablen<\/strong><\/h3>\n\n\n\n<p>Nehmen wir an, unsere Datei credential.ts hat die folgende Struktur:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>export const USERS = {\n    admin: {\n      username: 'admin',\n      password: 'adminPassword',\n    },\n    regularuser: {\n      username: 'justAnUser',\n      password: 'regularPassword',\n    },\n  };\n   \nexport const DB_CREDENTIALS = {\n    host: 'your-server.com',\n    user: 'dbUser',\n    password: 'anotherPassword',\n    database: 'my_sample_db',\n    port: 1234,\n  };\n<\/code><\/pre>\n\n\n\n<p><\/p>\n\n\n\n<p>Und unsere Datei cypress.config.ts muss sie importieren, um diese Anmeldedaten zu verwenden:<\/p>\n\n\n\n<p><\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>import { DB_CREDENTIALS } from '.\/cypress\/properties\/credentials';\n\n\/\/my DB connection\nconst connections: Record&lt;string, any&gt; = {\n  atDashboard: {\n    host: DB_CREDENTIALS.host,\n    user: DB_CREDENTIALS.user,\n    password: DB_CREDENTIALS.password,\n    database: DB_CREDENTIALS.database,\n    port: DB_CREDENTIALS.port,\n  }\n};<\/code><\/pre>\n\n\n\n<p><\/p>\n\n\n\n<p>Variablen k\u00f6nnen eine ganze json-Datei sein, wenn wir wollen, also kopieren wir den Inhalt unserer credentials.ts-Datei und gehen zu &#8218;Repository settings &gt; Repository variables&#8216; in unserem Repo.<\/p>\n\n\n\n<p><\/p>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-9d6595d7 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:33.33%\">\n<figure class=\"wp-block-image size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"193\" height=\"432\" src=\"https:\/\/wata.es\/wp-content\/uploads\/2024\/04\/Picture-1.png\" alt=\"Bitbucket-Repository-Navigationsmen\u00fc mit Optionen wie Quellcode, Commits, Branches und Pull-Requests\" class=\"wp-image-10499\" style=\"width:162px;height:auto\" srcset=\"https:\/\/wata.es\/wp-content\/uploads\/2024\/04\/Picture-1.png 193w, https:\/\/wata.es\/wp-content\/uploads\/2024\/04\/Picture-1-134x300.png 134w\" sizes=\"auto, (max-width: 193px) 100vw, 193px\" \/><\/figure>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:66.66%\">\n<figure class=\"wp-block-image size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"468\" height=\"321\" src=\"https:\/\/wata.es\/wp-content\/uploads\/2024\/04\/Picture-2.png\" alt=\"Seite zur Konfiguration von Repository-Variablen mit zwei Variablen und ihren Werten\" class=\"wp-image-10502\" style=\"width:535px;height:auto\" srcset=\"https:\/\/wata.es\/wp-content\/uploads\/2024\/04\/Picture-2.png 468w, https:\/\/wata.es\/wp-content\/uploads\/2024\/04\/Picture-2-300x206.png 300w\" sizes=\"auto, (max-width: 468px) 100vw, 468px\" \/><\/figure>\n<\/div>\n<\/div>\n\n\n\n<p><\/p>\n\n\n\n<p>Hier m\u00fcssen wir nur einen Namen f\u00fcr unsere Variable eingeben, den Inhalt unserer Datei einf\u00fcgen und auf Hinzuf\u00fcgen klicken. Wenn du m\u00f6chtest, dass diese Anmeldeinformationen verschl\u00fcsselt und in den Build-Protokollen verborgen werden, kannst du die Option \u201eSicher\u201c aktivieren, aber Achtung: du kannst dann den Inhalt nicht mehr sehen und die Variable nicht mehr bearbeiten, sondern nur einen neuen Wert eingeben oder sie l\u00f6schen. <\/p>\n\n\n\n<p>Sobald wir die Variable eingerichtet haben, m\u00fcssen wir nur noch \u201e$\u201c verwenden, um unsere Variable aufzurufen und die Echo-Ausgabe mit dem Befehl \u201e&gt;\u201c innerhalb unserer Pipeline umzuleiten. Im Stammverzeichnis Ihres Projekts musst du eine bitbucket-pipeline.yml haben: <\/p>\n\n\n\n<p><\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>image: cypress\/base:20.11.0\n\ndefinitions:\n  steps:\n    - step: &amp;install-and-check\n        name: Installation and Static Analysis\n        caches:\n          - node\n        script:\n          - npm install\n        artifacts:\n          - node_modules\/**\n    - step: &amp;test\n        name: Run tests with coverage\n        caches:\n          - node\n        script:\n          - npm run test -- --coverage\n          - node_modules\/.bin\/cypress install --force\n          - echo $OUR_CREDENTIALS &gt; .\/cypress\/properties\/credentials.ts\n          - node_modules\/.bin\/cypress run --component --env coverage=true\n          - node_modules\/.bin\/cypress run --env PLUGIN_ENABLED=false\n          ...<\/code><\/pre>\n\n\n\n<p><\/p>\n\n\n\n<p>Mit diesem Befehl erstellen wir eine tempor\u00e4re Datei mit dem Inhalt unserer Variablen. Auf diese Weise ist die Anmeldedatei nach der Ausf\u00fchrung der Pipeline verschwunden <\/p>\n\n\n\n<p><\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>echo $VARIABLE &gt; .\/your\/path\/filename.ts<\/code><\/pre>\n\n\n\n<p><\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Variablen f\u00fcr den Einsatz:<\/strong><\/h3>\n\n\n\n<p>Um die Bed\u00fcrfnisse unserer Kunden zu erf\u00fcllen und ausgezeichnete Qualit\u00e4t zu liefern, ben\u00f6tigen wir bei WATA Factory verschiedene Umgebungen, von der Entwicklungsphase bis zur Produktion, ohne dabei die dringend ben\u00f6tigte Testumgebung zu vergessen. Verschiedene Umgebungen erfordern verschiedene Anmeldeinformationen oder andere Arten von Flags. Um dieses Problem zu l\u00f6sen, bietet Bitbuckets Bereitstellungsvariablen.  <\/p>\n\n\n\n<p>Diese Variablen funktionieren auf die gleiche Weise wie Repository-Variablen, aber du musst in der Pipeline angeben, auf welche Umgebung sie sich beziehen.<\/p>\n\n\n\n<p>Erstelle einfach die Variable f\u00fcr die Bereitstellung:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Gehe zu &#8218;Repository-Einstellungen &gt; Eins\u00e4tze&#8216;.<\/li>\n\n\n\n<li>Erstelle eine neue Umgebung in dem gew\u00fcnschten Bereich (Test, Staging oder Produktion).<\/li>\n\n\n\n<li>F\u00fcge eine neue Variable auf die gleiche Weise wie bei den Repository-Variablen hinzu <\/li>\n\n\n\n<li>Gib in deiner Step-Pipeline an, auf welche Umgebung sie sich beziehen:<\/li>\n<\/ol>\n\n\n\n<p><\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>image: cypress\/base:20.11.0\n\ndefinitions:\n  steps:\n    - step: &amp;install-and-check\n        name: Installation and Static Analysis\n        caches:\n          - node\n        script:\n          - npm install\n        artifacts:\n          - node_modules\/**\n    - step: &amp;test\n        name: Run tests with coverage\n        caches:\n          - node\n        script:\n          - npm run test -- --coverage\n          - node_modules\/.bin\/cypress install --force\n          - echo $CREDENTIALS &gt; .\/cypress\/properties\/credentials.ts\n          - node_modules\/.bin\/cypress run --component --env coverage=true\n          - node_modules\/.bin\/cypress run --env PLUGIN_ENABLED=false\n        artifacts:\n          - coverage\/**\n          - coverage-component\/**\n          - cypress-image-diff-html-report\/**\n          - cypress-image-diff-screenshots\/**\n    - step: &amp;sonar\n        name: SonarQube analysis\n        image: sonarsource\/sonar-scanner-cli:latest\n        script:\n          - sonar-scanner -Dsonar.projectKey=Gesa-Dashboard---Angular -Dsonar.host.url=$SONAR_URL -Dsonar.login=$SONAR_SECRET -Dsonar.javascript.lcov.reportPaths=coverage\/lcov.info,coverage-component\/lcov.info\n    - step: &amp;deploy\n        name: Deploy\n        script:\n          - npm run build -- --base-href \/dashboard_ang\/ --output-hashing=all --aot --configuration=$DEPLOYMENT_PROFILE\n          - ssh $FTP_USERNAME@$FTP_HOST -p222 'mkdir -p ~\/public_html\/dashboard_ang'\n          - scp -P 222 -r dist\/new_angular_poc\/browser\/* $FTP_USERNAME@$FTP_HOST:~\/public_html\/dashboard_ang\/\n\npipelines:\n  branches:\n    develop:\n      - step:\n          &lt;&lt;: *install-and-check\n      - step:\n          deployment: automatictesting\n          &lt;&lt;: *test\n      - step:\n          &lt;&lt;: *sonar\n  custom:\n    deploy-company1-dev:\n      - step:\n          &lt;&lt;: *install-and-check\n      - step:\n          name: Deploy to Company 1\n          deployment: company1\n          &lt;&lt;: *deploy\n    deploy-at:\n      - step:\n          &lt;&lt;: *install-and-check\n      - step:\n          name: Deploy to AT\n          deployment: automatictesting\n          &lt;&lt;: *deploy<\/code><\/pre>\n\n\n\n<p><\/p>\n\n\n\n<p>Wie du sehen kannst, legen wir im Abschnitt Pipelines die Umgebung und den Schritt fest, der verwendet werden soll. Der Name des Schritts wird weiter oben definiert. <\/p>\n\n\n\n<p>Eine wichtige Warnung: Wenn du eine Bereitstellungsvariable mit demselben Namen wie eine Repository-Variable benennst, wird der Wert \u00fcberschrieben.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Sensible Daten wie Passw\u00f6rter, API-Tokens und DB-Zugangsdaten sind f\u00fcr die Projektentwicklung und das Testen unerl\u00e4sslich, sollten aber niemals im Klartext im Repository gespeichert werden. In diesem Abschnitt erkl\u00e4ren wir, wie WATA Factory diese Geheimnisse mit Hilfe von Bitbuckets eingebauten Funktionen verwaltet: Repository-Variablen und Deployment-Variablen.<\/p>\n","protected":false},"author":39,"featured_media":10511,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"inline_featured_image":false,"footnotes":""},"categories":[68,181],"tags":[],"class_list":["post-10589","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-neuigkeiten","category-technologie"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.3 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Wie man Geheimnisse in Bitbucket handhabt - WATA Factory<\/title>\n<meta name=\"description\" content=\"In diesem Abschnitt erkl\u00e4ren wir, wie WATA Factory diese Geheimnisse mit Hilfe von Bitbuckets eingebauten Funktionen verwaltet: Repository-Variablen und Deployment-Variablen.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/wata.es\/de\/wie-man-geheimnisse-in-bitbucket-handhabt\/\" \/>\n<meta property=\"og:locale\" content=\"de_DE\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Wie man Geheimnisse in Bitbucket handhabt - WATA Factory\" \/>\n<meta property=\"og:description\" content=\"In diesem Abschnitt erkl\u00e4ren wir, wie WATA Factory diese Geheimnisse mit Hilfe von Bitbuckets eingebauten Funktionen verwaltet: Repository-Variablen und Deployment-Variablen.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/wata.es\/de\/wie-man-geheimnisse-in-bitbucket-handhabt\/\" \/>\n<meta property=\"og:site_name\" content=\"WATA Factory\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/watafactory\/\" \/>\n<meta property=\"article:published_time\" content=\"2024-09-24T08:30:19+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-02-03T14:19:42+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/wata.es\/wp-content\/uploads\/2024\/04\/wata-illustrations--scaled.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"2560\" \/>\n\t<meta property=\"og:image:height\" content=\"1440\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Carlos Castillo M\u00e1rquez\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@watafactory\" \/>\n<meta name=\"twitter:site\" content=\"@watafactory\" \/>\n<meta name=\"twitter:label1\" content=\"Verfasst von\" \/>\n\t<meta name=\"twitter:data1\" content=\"Carlos Castillo M\u00e1rquez\" \/>\n\t<meta name=\"twitter:label2\" content=\"Gesch\u00e4tzte Lesezeit\" \/>\n\t<meta name=\"twitter:data2\" content=\"4\u00a0Minuten\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/wata.es\\\/de\\\/wie-man-geheimnisse-in-bitbucket-handhabt\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/wata.es\\\/de\\\/wie-man-geheimnisse-in-bitbucket-handhabt\\\/\"},\"author\":{\"name\":\"Carlos Castillo M\u00e1rquez\",\"@id\":\"https:\\\/\\\/wata.es\\\/#\\\/schema\\\/person\\\/5874c8611b13bad33d70704c0508d91f\"},\"headline\":\"Wie man Geheimnisse in Bitbucket handhabt\",\"datePublished\":\"2024-09-24T08:30:19+00:00\",\"dateModified\":\"2026-02-03T14:19:42+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/wata.es\\\/de\\\/wie-man-geheimnisse-in-bitbucket-handhabt\\\/\"},\"wordCount\":618,\"publisher\":{\"@id\":\"https:\\\/\\\/wata.es\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/wata.es\\\/de\\\/wie-man-geheimnisse-in-bitbucket-handhabt\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/wata.es\\\/wp-content\\\/uploads\\\/2024\\\/04\\\/wata-illustrations--scaled.jpg\",\"articleSection\":[\"Neuigkeiten\",\"Technologie\"],\"inLanguage\":\"de\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/wata.es\\\/de\\\/wie-man-geheimnisse-in-bitbucket-handhabt\\\/\",\"url\":\"https:\\\/\\\/wata.es\\\/de\\\/wie-man-geheimnisse-in-bitbucket-handhabt\\\/\",\"name\":\"Wie man Geheimnisse in Bitbucket handhabt - WATA Factory\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/wata.es\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/wata.es\\\/de\\\/wie-man-geheimnisse-in-bitbucket-handhabt\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/wata.es\\\/de\\\/wie-man-geheimnisse-in-bitbucket-handhabt\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/wata.es\\\/wp-content\\\/uploads\\\/2024\\\/04\\\/wata-illustrations--scaled.jpg\",\"datePublished\":\"2024-09-24T08:30:19+00:00\",\"dateModified\":\"2026-02-03T14:19:42+00:00\",\"description\":\"In diesem Abschnitt erkl\u00e4ren wir, wie WATA Factory diese Geheimnisse mit Hilfe von Bitbuckets eingebauten Funktionen verwaltet: Repository-Variablen und Deployment-Variablen.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/wata.es\\\/de\\\/wie-man-geheimnisse-in-bitbucket-handhabt\\\/#breadcrumb\"},\"inLanguage\":\"de\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/wata.es\\\/de\\\/wie-man-geheimnisse-in-bitbucket-handhabt\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"de\",\"@id\":\"https:\\\/\\\/wata.es\\\/de\\\/wie-man-geheimnisse-in-bitbucket-handhabt\\\/#primaryimage\",\"url\":\"https:\\\/\\\/wata.es\\\/wp-content\\\/uploads\\\/2024\\\/04\\\/wata-illustrations--scaled.jpg\",\"contentUrl\":\"https:\\\/\\\/wata.es\\\/wp-content\\\/uploads\\\/2024\\\/04\\\/wata-illustrations--scaled.jpg\",\"width\":2560,\"height\":1440,\"caption\":\"Frau mit Finger auf den Lippen, Geheimhaltungsgeste, vertrauliche Dokumente\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/wata.es\\\/de\\\/wie-man-geheimnisse-in-bitbucket-handhabt\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/wata.es\\\/de\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Wie man Geheimnisse in Bitbucket handhabt\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/wata.es\\\/#website\",\"url\":\"https:\\\/\\\/wata.es\\\/\",\"name\":\"WATA Factory\",\"description\":\"IT Consulting &amp; Outsourcing for your company\",\"publisher\":{\"@id\":\"https:\\\/\\\/wata.es\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/wata.es\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"de\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/wata.es\\\/#organization\",\"name\":\"WATA Factory\",\"url\":\"https:\\\/\\\/wata.es\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"de\",\"@id\":\"https:\\\/\\\/wata.es\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/wata.es\\\/wp-content\\\/uploads\\\/2019\\\/12\\\/logowata.png\",\"contentUrl\":\"https:\\\/\\\/wata.es\\\/wp-content\\\/uploads\\\/2019\\\/12\\\/logowata.png\",\"width\":688,\"height\":176,\"caption\":\"WATA Factory\"},\"image\":{\"@id\":\"https:\\\/\\\/wata.es\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/watafactory\\\/\",\"https:\\\/\\\/x.com\\\/watafactory\",\"https:\\\/\\\/www.linkedin.com\\\/company\\\/wata\\\/\"]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/wata.es\\\/#\\\/schema\\\/person\\\/5874c8611b13bad33d70704c0508d91f\",\"name\":\"Carlos Castillo M\u00e1rquez\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"de\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/3bafc27b7caaa54e083f1b61cad8d8ca8a89ed6504b4a64a63223c7ea721428a?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/3bafc27b7caaa54e083f1b61cad8d8ca8a89ed6504b4a64a63223c7ea721428a?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/3bafc27b7caaa54e083f1b61cad8d8ca8a89ed6504b4a64a63223c7ea721428a?s=96&d=mm&r=g\",\"caption\":\"Carlos Castillo M\u00e1rquez\"},\"url\":\"https:\\\/\\\/wata.es\\\/de\\\/author\\\/carlos\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Wie man Geheimnisse in Bitbucket handhabt - WATA Factory","description":"In diesem Abschnitt erkl\u00e4ren wir, wie WATA Factory diese Geheimnisse mit Hilfe von Bitbuckets eingebauten Funktionen verwaltet: Repository-Variablen und Deployment-Variablen.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/wata.es\/de\/wie-man-geheimnisse-in-bitbucket-handhabt\/","og_locale":"de_DE","og_type":"article","og_title":"Wie man Geheimnisse in Bitbucket handhabt - WATA Factory","og_description":"In diesem Abschnitt erkl\u00e4ren wir, wie WATA Factory diese Geheimnisse mit Hilfe von Bitbuckets eingebauten Funktionen verwaltet: Repository-Variablen und Deployment-Variablen.","og_url":"https:\/\/wata.es\/de\/wie-man-geheimnisse-in-bitbucket-handhabt\/","og_site_name":"WATA Factory","article_publisher":"https:\/\/www.facebook.com\/watafactory\/","article_published_time":"2024-09-24T08:30:19+00:00","article_modified_time":"2026-02-03T14:19:42+00:00","og_image":[{"width":2560,"height":1440,"url":"https:\/\/wata.es\/wp-content\/uploads\/2024\/04\/wata-illustrations--scaled.jpg","type":"image\/jpeg"}],"author":"Carlos Castillo M\u00e1rquez","twitter_card":"summary_large_image","twitter_creator":"@watafactory","twitter_site":"@watafactory","twitter_misc":{"Verfasst von":"Carlos Castillo M\u00e1rquez","Gesch\u00e4tzte Lesezeit":"4\u00a0Minuten"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/wata.es\/de\/wie-man-geheimnisse-in-bitbucket-handhabt\/#article","isPartOf":{"@id":"https:\/\/wata.es\/de\/wie-man-geheimnisse-in-bitbucket-handhabt\/"},"author":{"name":"Carlos Castillo M\u00e1rquez","@id":"https:\/\/wata.es\/#\/schema\/person\/5874c8611b13bad33d70704c0508d91f"},"headline":"Wie man Geheimnisse in Bitbucket handhabt","datePublished":"2024-09-24T08:30:19+00:00","dateModified":"2026-02-03T14:19:42+00:00","mainEntityOfPage":{"@id":"https:\/\/wata.es\/de\/wie-man-geheimnisse-in-bitbucket-handhabt\/"},"wordCount":618,"publisher":{"@id":"https:\/\/wata.es\/#organization"},"image":{"@id":"https:\/\/wata.es\/de\/wie-man-geheimnisse-in-bitbucket-handhabt\/#primaryimage"},"thumbnailUrl":"https:\/\/wata.es\/wp-content\/uploads\/2024\/04\/wata-illustrations--scaled.jpg","articleSection":["Neuigkeiten","Technologie"],"inLanguage":"de"},{"@type":"WebPage","@id":"https:\/\/wata.es\/de\/wie-man-geheimnisse-in-bitbucket-handhabt\/","url":"https:\/\/wata.es\/de\/wie-man-geheimnisse-in-bitbucket-handhabt\/","name":"Wie man Geheimnisse in Bitbucket handhabt - WATA Factory","isPartOf":{"@id":"https:\/\/wata.es\/#website"},"primaryImageOfPage":{"@id":"https:\/\/wata.es\/de\/wie-man-geheimnisse-in-bitbucket-handhabt\/#primaryimage"},"image":{"@id":"https:\/\/wata.es\/de\/wie-man-geheimnisse-in-bitbucket-handhabt\/#primaryimage"},"thumbnailUrl":"https:\/\/wata.es\/wp-content\/uploads\/2024\/04\/wata-illustrations--scaled.jpg","datePublished":"2024-09-24T08:30:19+00:00","dateModified":"2026-02-03T14:19:42+00:00","description":"In diesem Abschnitt erkl\u00e4ren wir, wie WATA Factory diese Geheimnisse mit Hilfe von Bitbuckets eingebauten Funktionen verwaltet: Repository-Variablen und Deployment-Variablen.","breadcrumb":{"@id":"https:\/\/wata.es\/de\/wie-man-geheimnisse-in-bitbucket-handhabt\/#breadcrumb"},"inLanguage":"de","potentialAction":[{"@type":"ReadAction","target":["https:\/\/wata.es\/de\/wie-man-geheimnisse-in-bitbucket-handhabt\/"]}]},{"@type":"ImageObject","inLanguage":"de","@id":"https:\/\/wata.es\/de\/wie-man-geheimnisse-in-bitbucket-handhabt\/#primaryimage","url":"https:\/\/wata.es\/wp-content\/uploads\/2024\/04\/wata-illustrations--scaled.jpg","contentUrl":"https:\/\/wata.es\/wp-content\/uploads\/2024\/04\/wata-illustrations--scaled.jpg","width":2560,"height":1440,"caption":"Frau mit Finger auf den Lippen, Geheimhaltungsgeste, vertrauliche Dokumente"},{"@type":"BreadcrumbList","@id":"https:\/\/wata.es\/de\/wie-man-geheimnisse-in-bitbucket-handhabt\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/wata.es\/de\/"},{"@type":"ListItem","position":2,"name":"Wie man Geheimnisse in Bitbucket handhabt"}]},{"@type":"WebSite","@id":"https:\/\/wata.es\/#website","url":"https:\/\/wata.es\/","name":"WATA Factory","description":"IT Consulting &amp; Outsourcing for your company","publisher":{"@id":"https:\/\/wata.es\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/wata.es\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"de"},{"@type":"Organization","@id":"https:\/\/wata.es\/#organization","name":"WATA Factory","url":"https:\/\/wata.es\/","logo":{"@type":"ImageObject","inLanguage":"de","@id":"https:\/\/wata.es\/#\/schema\/logo\/image\/","url":"https:\/\/wata.es\/wp-content\/uploads\/2019\/12\/logowata.png","contentUrl":"https:\/\/wata.es\/wp-content\/uploads\/2019\/12\/logowata.png","width":688,"height":176,"caption":"WATA Factory"},"image":{"@id":"https:\/\/wata.es\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/watafactory\/","https:\/\/x.com\/watafactory","https:\/\/www.linkedin.com\/company\/wata\/"]},{"@type":"Person","@id":"https:\/\/wata.es\/#\/schema\/person\/5874c8611b13bad33d70704c0508d91f","name":"Carlos Castillo M\u00e1rquez","image":{"@type":"ImageObject","inLanguage":"de","@id":"https:\/\/secure.gravatar.com\/avatar\/3bafc27b7caaa54e083f1b61cad8d8ca8a89ed6504b4a64a63223c7ea721428a?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/3bafc27b7caaa54e083f1b61cad8d8ca8a89ed6504b4a64a63223c7ea721428a?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/3bafc27b7caaa54e083f1b61cad8d8ca8a89ed6504b4a64a63223c7ea721428a?s=96&d=mm&r=g","caption":"Carlos Castillo M\u00e1rquez"},"url":"https:\/\/wata.es\/de\/author\/carlos\/"}]}},"_links":{"self":[{"href":"https:\/\/wata.es\/de\/wp-json\/wp\/v2\/posts\/10589","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wata.es\/de\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/wata.es\/de\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/wata.es\/de\/wp-json\/wp\/v2\/users\/39"}],"replies":[{"embeddable":true,"href":"https:\/\/wata.es\/de\/wp-json\/wp\/v2\/comments?post=10589"}],"version-history":[{"count":4,"href":"https:\/\/wata.es\/de\/wp-json\/wp\/v2\/posts\/10589\/revisions"}],"predecessor-version":[{"id":15756,"href":"https:\/\/wata.es\/de\/wp-json\/wp\/v2\/posts\/10589\/revisions\/15756"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/wata.es\/de\/wp-json\/wp\/v2\/media\/10511"}],"wp:attachment":[{"href":"https:\/\/wata.es\/de\/wp-json\/wp\/v2\/media?parent=10589"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/wata.es\/de\/wp-json\/wp\/v2\/categories?post=10589"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/wata.es\/de\/wp-json\/wp\/v2\/tags?post=10589"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}