{"id":133129,"date":"2024-06-10T08:37:37","date_gmt":"2024-06-10T06:37:37","guid":{"rendered":"https:\/\/jfrog.com\/blog\/jfrog-github-integration-technical-details\/"},"modified":"2024-06-24T16:07:42","modified_gmt":"2024-06-24T14:07:42","slug":"jfrog-github-integration-technical-details","status":"publish","type":"post","link":"https:\/\/jfrog.com\/de\/blog\/jfrog-github-integration-technical-details\/","title":{"rendered":"So integrieren Sie die JFrog Platform nahtlos mit Ihrer GitHub-Umgebung"},"content":{"rendered":"<p><img decoding=\"async\" class=\"aligncenter size-full wp-image-132085\" src=\"https:\/\/media.jfrog.com\/wp-content\/uploads\/2024\/05\/28124036\/GitHub-JFrog-Integration-Announcement-blog-863x300-1.png\" alt=\"GitHub JFrog Integration\" width=\"863\" height=\"300\" \/><\/p>\n<p>Die neue <a href=\"https:\/\/jfrog.com\/de\/blog\/github-jfrog-single-platform-experience\/\">Zusammenarbeit von JFrog mit GitHub<\/a> erm\u00f6glicht es Ihnen, Ihre bevorzugten L\u00f6sungen f\u00fcr Source Code und Binaries in einer nahtlosen Integration zu kombinieren. Das hei\u00dft, Sie haben jetzt eine einheitliche, \u00fcbergreifende und sichere End-to-End-Erfahrung, die Ihre Softwareprojekte unterst\u00fctzt.<\/p>\n<p>Diese Integration deckt alles ab, von der Kuratierung von Open-Source-Paketen \u00fcber Coding, CI, Release Management, Deployment und Produktion. Dazu geh\u00f6ren drei wichtige Verbesserungen f\u00fcr Ihre Entwicklererfahrung.<\/p>\n<ol>\n<li><strong>Einheitliche Authentifizierung und Autorisierung<\/strong>: Sch\u00fctzen Sie Ihren GitHub-Workflow und erm\u00f6glichen Sie die nahtlose SSO-Authentifizierung zwischen JFrog und GitHub.<\/li>\n<li><strong>Bidirektionale Code- und Paketverkn\u00fcpfung<\/strong>: Code und Pakete k\u00f6nnen \u00fcber beide Plattformen hinweg verkn\u00fcpft werden.<\/li>\n<li><strong>Einheitliche Sicherheit<\/strong>:  JFrog Advanced Security-Ergebnisse sind direkt aus dem GitHub-Dashboard verf\u00fcgbar, und bei Merges werden Pull-Requests \u00fcberpr\u00fcft.<\/li>\n<\/ol>\n<p><img decoding=\"async\" class=\"aligncenter size-full wp-image-132065\" src=\"https:\/\/media.jfrog.com\/wp-content\/uploads\/2024\/05\/29154839\/GitHub-and-JFrog.png\" alt=\"Flow chart demonstrating how GitHub and JFrog interact throughout the software development lifecycle.\" width=\"863\" height=\"497\" \/><\/p>\n<p style=\"text-align: center\"><em>Einheitliche End-to-End-Erfahrung mit JFrog und GitHub vom Code bis zum Paket<\/em><\/p>\n<p>In diesem Blogbeitrag erl\u00e4utern wir den Workflow von Anwendungsf\u00e4llen, einschlie\u00dflich Schritt-f\u00fcr-Schritt-Anweisungen f\u00fcr die Integration.<\/p>\n<p>Fangen wir an!<\/p>\n<h2>Bevor Sie loslegen<\/h2>\n<p>Folgende Voraussetzungen m\u00fcssen erf\u00fcllt sein:<\/p>\n<ul>\n<li><a href=\"https:\/\/jfrog.com\/de\/start-free\/\">JFrog Platform-Cloud<\/a>\n<ul>\n<li>Erstellen Sie ein <a href=\"https:\/\/jfrog.com\/de\/help\/r\/jfrog-platform-administration-documentation\/get-started-with-projects\">JFrog-Projekt<\/a> namens CodeNinjas_AI<\/li>\n<\/ul>\n<\/li>\n<li><a href=\"https:\/\/github.com\/jfrog\/jfrog-github-example\/edit\/Adding-dependencies\/.github\/workflows\/build-publish.yml\">Beispiel eines GitHub-Repositorys<\/a>\n<ul>\n<li>Forken Sie dieses Beispiel-Repository, damit Sie Ihre eigene Kopie zum Ausprobieren haben.<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h2 id=\"authentication-authorization\">1. Authentifizierung und Autorisierung<\/h2>\n<p>Um die Authentifizierung und Autorisierung \u00fcber beide Plattformen hinweg zu erhalten, m\u00fcssen Sie folgendes konfigurieren:<\/p>\n<ul>\n<li><a href=\"#github-variables\">GitHub-Variablen<\/a><\/li>\n<li><a href=\"#oauth\">OAuth<\/a><\/li>\n<li><a href=\"#oidc\">OIDC<\/a><\/li>\n<li><a href=\"#github-actions\">GitHub-Aktionen<\/a><\/li>\n<\/ul>\n<h3 id=\"github-variables\">GitHub-Variablen<\/h3>\n<p><a href=\"https:\/\/docs.github.com\/en\/actions\/learn-github-actions\/variables\">GitHub-Variablen<\/a> dienen zum Speichern Ihrer sensiblen Authentifizierung. Definieren Sie die folgenden beiden Variablen in GitHub, um auf JFrog zu verweisen. F\u00fcgen Sie Ihre Variablen unter <em>Einstellungen<\/em>\u00a0&gt; <em>Geheimnisse und Variablen<\/em>\u00a0&gt; <em>Aktionen<\/em> hinzu.<\/p>\n<ul>\n<li><strong>JF_URL<\/strong>: steht f\u00fcr die Basis-URL zum JFrog-Server<\/li>\n<li><strong>JF_PROJECT<\/strong>: steht f\u00fcr den JFrog-Projektschl\u00fcssel f\u00fcr die Verbindung mit dem GitHub-Repository<\/li>\n<\/ul>\n<p style=\"text-align: center\"><img decoding=\"async\" class=\"aligncenter size-full wp-image-132163\" style=\"cursor: pointer\" src=\"https:\/\/jfrog.com\/wp-content\/uploads\/2024\/05\/1_GitHub-Actions-Secrets-and-Variables.png\" alt=\"\" data-lity=\"\" \/><em>Aktionen, Geheimnisse und Variablen in GitHub<\/em><\/p>\n<p style=\"text-align: right\"><a href=\"#authentication-authorization\">Zur\u00fcck zum Anfang &gt;<\/a><\/p>\n<h3 id=\"oauth\">OAuth<\/h3>\n<p>Konfigurieren Sie OAuth f\u00fcr die Anmeldung auf der JFrog Platform basierend auf der GitHub-Authentifizierung <a href=\"https:\/\/jfrog.com\/de\/help\/r\/jfrog-platform-administration-documentation\/github-oauth-setup\">GitHub OAuth<\/a>.<\/p>\n<p style=\"text-align: center\"><img decoding=\"async\" class=\"aligncenter size-full wp-image-132169\" style=\"cursor: pointer\" src=\"https:\/\/media.jfrog.com\/wp-content\/uploads\/2024\/05\/30095844\/2_GitHub-OAuth-Login-to-the-JFrog-Platform.png\" alt=\"GitHub OAuth Login to the JFrog Platform\" width=\"1999\" height=\"1108\" data-lity=\"\" \/><em>Anmeldung auf der JFrog Platform mit GitHub OAuth<\/em><\/p>\n<p style=\"text-align: right\"><a href=\"#authentication-authorization\">Zur\u00fcck zum Anfang &gt;<\/a><\/p>\n<h3 id=\"oidc\">OIDC<\/h3>\n<p><a href=\"https:\/\/docs.github.com\/en\/actions\/deployment\/security-hardening-your-deployments\/about-security-hardening-with-openid-connect#benefits-of-using-oidc\">Durch die JFrog-Integration von OIDC mit GitHub-Aktionen<\/a> k\u00f6nnen Sie eine vertrauensw\u00fcrdige Beziehung zwischen Ihren GitHub-Actions und der JFrog Platform herstellen.<\/p>\n<p>Klicken Sie auf der JFrog Platform auf die Registerkarte \u201eAdministration\u201c und w\u00e4hlen Sie <em>Allgemein<\/em>\u00a0&gt; <em>Integrationen verwalten<\/em>\u00a0&gt; <em>Neue Integration<\/em>\u00a0&gt; <em>OpenID Connect\u00a0<\/em>.<\/p>\n<p>Konfigurieren Sie die OIDC-Integration und klicken Sie auf <em>Speichern<\/em> und anschlie\u00dfend auf \u201eWeiter\u201c.<\/p>\n<p>Konfigurieren Sie das Identity Mapping:<\/p>\n<ul>\n<li><strong>Name<\/strong>: Name des Identity Mappings<\/li>\n<li><strong>Beschreibung<\/strong>: nach M\u00f6glichkeit Angaben zum urspr\u00fcnglichen Repository und zur zugeordneten Identit\u00e4t<\/li>\n<li><strong>Priorit\u00e4t<\/strong>:  Reihenfolge, in der die Identity Mappings ausgewertet werden<\/li>\n<li><strong>Claims json<\/strong>: JSON-Datei mit allen zu pr\u00fcfenden Claims, um die Zuordnung als \u201etrue\u201c zu bewerten\n<ul>\n<li><strong>iss<\/strong>: auf <a href=\"https:\/\/token.actions.githubusercontent.com\">https:\/\/token.actions.githubusercontent.com<\/a> festlegen, um zu verifizieren, dass Claims von GitHub erstellt wurden<\/li>\n<li><strong>Unternehmen<\/strong>: optionale Claims-Einschr\u00e4nkung f\u00fcr das Unternehmen, zu dem das Repository geh\u00f6rt<\/li>\n<li><strong>Repository<\/strong>: der Name Ihres GitHub-Repositorys<\/li>\n<li><strong>Optionale Claims<\/strong>: environment, actor, runner_environment, sub, repository_owner, repository_visibility, workflow und mehr<br \/>\nBeispiel:<\/p>\n<pre class=\"language-bash\"><code>{\"repository\":\"&lt;repository_name&gt;, \"enterprise\":\"&lt;your_github_enterprise_name&gt;\"}<\/code><\/pre>\n<\/li>\n<\/ul>\n<\/li>\n<li><strong>Token-Umfang<\/strong>: Gruppe\/Benutzer\/Admin: Token f\u00fcr eine bestimmte Gruppe oder einen bestimmten Benutzer<\/li>\n<li><strong>Dienst<\/strong>:  spezielle oder alle JFrog-Services, denen Zugriff gegeben werden soll<\/li>\n<li><strong>G\u00fcltigkeitszeitraum des Tokens<\/strong>: Anzahl der Minuten bis zum Ablauf des Tokens<\/li>\n<\/ul>\n<p style=\"text-align: center\"><img decoding=\"async\" class=\"aligncenter size-full wp-image-132171\" style=\"cursor: pointer\" src=\"https:\/\/media.jfrog.com\/wp-content\/uploads\/2024\/05\/30100003\/3_JFrog-Platform-Identity-Mapping.png\" alt=\"JFrog Platform - Identity Mapping\" width=\"1999\" height=\"1107\" data-lity=\"\" \/><em>Identity Mapping auf der JFrog Plattform<\/em><\/p>\n<p style=\"text-align: center\"><img decoding=\"async\" class=\"aligncenter size-full wp-image-132190\" src=\"https:\/\/media.jfrog.com\/wp-content\/uploads\/2024\/05\/30122413\/JFrog-Platform-and-GitHub-OIDC-Integration_new.gif\" alt=\"JFrog Platform and GitHub - OIDC Integration\" width=\"3456\" height=\"1918\" \/><em>JFrog Platform und GitHub\u00a0\u2013 OIDC-Integration<\/em><\/p>\n<p style=\"text-align: right\"><a href=\"#authentication-authorization\">Zur\u00fcck zum Anfang &gt;<\/a><\/p>\n<h3 id=\"github-actions\">GitHub-Actions<\/h3>\n<p>Konfigurieren Sie die GitHub-Action, um <a href=\"https:\/\/github.com\/marketplace\/actions\/setup-jfrog-cli\">JFrog\u00a0CLI<\/a> einzurichten und <a href=\"https:\/\/github.com\/jfrog\/frogbot\">JFrog FrogBot<\/a> auszuf\u00fchren.<\/p>\n<p><strong>Konfigurieren Sie JFrog CLI:<\/strong><\/p>\n<pre class=\"language-bash\"><code>- name: Setup JFrog CLI\r\n    uses: jfrog\/setup-jfrog-cli@v4\r\n    env: \r\n      JF_URL: https:\/\/${{ vars.JF_URL }}\/\r\n      JF_PROJECT: ${{ vars.JF_PROJECT }}\r\n    with:\r\n      oidc-provider-name: &lt;OIDC integration name set on JFrog platform&gt;<\/code><\/pre>\n<p><strong>Konfigurieren Sie Frogbot:<\/strong><\/p>\n<pre class=\"language-bash\"><code> - uses: jfrog\/frogbot@v2\r\n      with:\r\n          oidc-provider-name: \r\nenv:\r\n          # JFrog platform URL\r\n          JF_URL: https:\/\/${{ vars.JF_URL }}\/\r\n          JF_PROJECT: ${{ vars.JF_PROJECT }}\r\n          JF_GIT_TOKEN: ${{ secrets.GITHUB_TOKEN }}\r\n          \u2026<\/code><\/pre>\n<p style=\"text-align: right\"><a href=\"#authentication-authorization\">Zur\u00fcck zum Anfang &gt;<\/a><\/p>\n<h2>2. Bidirektionale Code- und Paketverkn\u00fcpfung<\/h2>\n<p>Indem Sie <a href=\"https:\/\/docs.jfrog.com\/integrations\/docs\/download-and-install-the-jfrog-cli\">JFrog CLI<\/a> in Ihrer <a href=\"https:\/\/docs.github.com\/en\/actions\">GitHub-Build-Action<\/a> verwenden, wird der Build mit relevanten Build-Informationen, Paketen und Sicherheitsscans in JFrog verkn\u00fcpft. Durch diese Integration k\u00f6nnen Sie GitHub-Actions und JFrog Artifactory kombinieren.<\/p>\n<p>In dieser YML-Beispieldatei ist der Build f\u00fcr die <a href=\"https:\/\/docs.github.com\/en\/actions\/using-workflows\/triggering-a-workflow\">automatische Ausl\u00f6sung<\/a> nach jeder Pull-Anfrage und jedem Push konfiguriert.<\/p>\n<pre class=\"language-bash\"><code> # setting python to use a curated python repository\r\n- name: configure jfrog environment\r\n    run: |\r\n      jf pip-config --repo-resolve=python-virtual \r\n# configuring python\r\n- name: configure environment\r\n              run: |                      \r\n                python3 -m pip install --upgrade pip setuptools wheel sigstore\r\n                wheel -h\r\n                pip show setuptools\r\n                echo $VIRTUAL_ENV\r\n# building the python package\r\n- name: build project\r\n    run: |                      \r\n      jf pip install -r requirements.txt\r\npython setup.py sdist bdist_wheel\r\ncd dist &amp;&amp; echo \"hashes=$(sha256sum * | base64 -w0)\" &gt;&gt; $GITHUB_OUTPUT\r\n\r\n# uploading the python package int the JFrog platform\r\n- name: publish python package\r\n    run: |\r\n      jf rt upload dist\/ python-virtual\/example-projects\/ \r\n\r\n# setting docker\r\n- name: Setup Docker Buildx\r\n  uses: docker\/setup-buildx-action@v3\r\n\r\n# docker authentication using the oidc short lived credentials\r\n- name: Authenticate Docker\r\n    uses: docker\/login-action@v3\r\n    with:\r\n      registry: ${{ vars.JF_URL }}\r\n      username: ${{ steps.setup-cli.outputs.oidc-user }}\r\n      password: ${{ steps.setup-cli.outputs.oidc-token }}\r\n# docker image build\r\n- name: Build Docker image\r\n    uses: docker\/build-push-action@v5\r\n    id: build\r\n    with:\r\n      push: true\r\n      platforms: linux\/amd64 #, linux\/arm64\r\n      tags: ${{ vars.JF_URL }}\/${{ env.DOCKER_REPO }}\/${{ env.IMAGE_NAME }}\r\n# docker xray scanning\r\n- name: docker scan\r\n     run: |  \r\n       jf docker pull ${{ vars.JF_URL }}\/${{ env.DOCKER_REPO }}\/${{ env.IMAGE_NAME }}\r\n       jf docker scan ${{ vars.JF_URL }}\/${{ env.DOCKER_REPO }}\/${{ env.IMAGE_NAME }} \r\n\r\n# adding the built docker into the JFrog build info\r\n- name: add docker package to build\r\n    run: |  \r\n      echo \"${{ vars.JF_URL }}\/${{ env.DOCKER_REPO }}\/${{ env.IMAGE_NAME }}@${{ steps.build.outputs.digest }}\" &gt; metadata.json\r\n      jf rt build-docker-create ${{ env.DOCKER_REPO }} --image-file metadata.json \r\n\r\n# publishing and scanning a build info for the build\r\n- name: publish build info\r\n    run: |\r\n      jf rt build-collect-env      # Collect environment variables\r\n      jf rt build-publish       # Publish build info\r\n      jf build-scan  # Xray Scan Build info<\/code><\/pre>\n<h3>JFrog-Job-\u00dcbersicht in GitHub<\/h3>\n<p>Nach der Ausf\u00fchrung des Builds wird eine Job-\u00dcbersicht mit den Build- und Sicherheitsinformationen generiert. Sie k\u00f6nnen einfach zwischen der JFrog- und GitHub-Plattform navigieren. Auf diese Weise k\u00f6nnen Sie die Daten des Xray-Sicherheitsscans, Build-Details wie Build-Unterschiede, Umgebungsvariablen, JSON-Informationen und vieles mehr anzeigen. Zus\u00e4tzliche Informationen zu Ihren Artefakten und Ihrem Sicherheitsscan erhalten Sie, indem Sie auf den Projektpaket-Link klicken, um die JFrog-Projektpaketansicht aufzurufen.<\/p>\n<p style=\"text-align: center\"><img decoding=\"async\" class=\"aligncenter size-full wp-image-131819\" src=\"https:\/\/media.jfrog.com\/wp-content\/uploads\/2024\/05\/28140733\/JFrog-Job-Summar-and-Build-Info-SBOM-pointing-back-to-GitHub-Job.gif\" alt=\"JFrog Job Summary, and Build-Info SBOM pointing back to GitHub Job\" width=\"3456\" height=\"1918\" \/><em>JFrog-Job-\u00dcbersicht , Pakete, Schwachstellen und SBOM (Software Bill of Materials) des Builds f\u00fcr den GitHub-Job<\/em><\/p>\n<h2>3. Einheitliche Sicherheit<\/h2>\n<p><a href=\"https:\/\/jfrog.com\/de\/blog\/secure-your-git-repository-with-frogbot-the-git-bot\/\">JFrog Frogbot<\/a> scannt Ihre Repositories automatisch auf potenzielle Schwachstellen, Exposed Secrets und Malware in Ihren Abh\u00e4ngigkeiten. Wenn Schwachstellen entdeckt werden, warnt Frogbot Sie nicht nur, sondern kann auch automatisch Pull-Anfragen mit Korrekturvorschl\u00e4gen \u00f6ffnen, um die Fehlerbehebung zu optimieren. Diese Checks k\u00f6nnen verhindern, dass nicht autorisierte oder riskante Code\u00e4nderungen in Ihr Repository \u00fcbernommen werden.<\/p>\n<p>Detaillierte Berichte und Dashboard-Ansichten geben zudem Auskunft \u00fcber den Sicherheitsstatus Ihrer Projekte und erleichtern die Einhaltung von Compliance-Anforderungen.<\/p>\n<p><a href=\"https:\/\/docs.jfrog.com\/integrations\/docs\/integration-workflows#configure-frogbot-in-github-actions\">Frogbot mit GitHub einrichten &gt;<\/a><\/p>\n<p><img decoding=\"async\" class=\"aligncenter size-full wp-image-132188\" src=\"https:\/\/media.jfrog.com\/wp-content\/uploads\/2024\/05\/30121539\/JFrog-Frogbot-Unsafe-Hash-Algorithm.gif\" alt=\"Unsafe Hash Algorithm\" width=\"3446\" height=\"1896\" \/><\/p>\n<p>&nbsp;<\/p>\n<p>In diesem Beispiel hat Frogbot einen unsicheren Hash-Algorithmus erkannt:<\/p>\n<table>\n<tbody>\n<tr>\n<td><em>Eine solche Schwachstelle tritt bei Verwendung eines als unsicher bekannten Hash-Algorithmus auf. Hash-Algorithmen akzeptieren beliebige Eingaben und generieren daraus einen Hash-Wert \u2013 eine Ausgabe mit einer festen L\u00e4nge. Anhand dieser Ausgabe kann die Integrit\u00e4t von Daten wie Passw\u00f6rtern oder Dateien verifiziert werden. Unsichere Hash-Algorithmen k\u00f6nnen von Angreifern genutzt werden, um innerhalb des erforderlichen Zeitrahmens denselben Hash-Wert f\u00fcr andere Eingabedaten zu generieren und so einen \u201eKollisionsangriff\u201c durchzuf\u00fchren.<\/em><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>Das Problem kann wie folgt behoben werden:<\/p>\n<p><img decoding=\"async\" class=\"aligncenter wp-image-132175\" style=\"cursor: pointer\" src=\"https:\/\/media.jfrog.com\/wp-content\/uploads\/2024\/05\/30101004\/4_Remediation.png\" alt=\"Remediation\" width=\"901\" height=\"348\" data-lity=\"\" \/><\/p>\n<p>Das war&#8217;s!<\/p>\n<p>Probieren Sie es selbst aus!<\/p>\n<p>&nbsp;<\/p>\n<h4 style=\"text-align: center\">Seien Sie dabei, beim gemeinsamen Webinar von GitHub und JFrog am 13.Juni! <\/h4>\n<p style=\"text-align: center\"><span style=\"font-weight: 400\">\n    <a class=\"button button-primary\"  href=\"https:\/\/jfrog.com\/de\/github-webinar\/\" target=\"_self\">\n    <span>F\u00fcr Webinar registrieren<\/span>\n    <\/a>\n    <\/span><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Die neue Zusammenarbeit von JFrog mit GitHub erm\u00f6glicht es Ihnen, Ihre bevorzugten L\u00f6sungen f\u00fcr Source Code und Binaries in einer nahtlosen Integration zu kombinieren. Das hei\u00dft, Sie haben jetzt eine einheitliche, \u00fcbergreifende und sichere End-to-End-Erfahrung, die Ihre Softwareprojekte unterst\u00fctzt. Diese Integration deckt alles ab, von der Kuratierung von Open-Source-Paketen \u00fcber Coding, CI, Release Management, Deployment &hellip;<\/p>\n","protected":false},"author":73,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"inline_featured_image":false,"footnotes":""},"categories":[10409,10410,10411,10157,9969,9245,9246,9248],"tags":[10518,10519],"class_list":["post-133129","post","type-post","status-publish","format-standard","hentry","category-distribution-de","category-ci-cd-pipelines-de","category-software-distribution-de","category-sicherheit-und-devsecops","category-artefakt-management","category-artifactory-de","category-xray-de","category-plattform","tag-github-de","tag-integration-de"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v22.6 (Yoast SEO v22.6) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Github &amp; Jfrog verbinden: So geht&#039;s | JFrog<\/title>\n<meta name=\"description\" content=\"In diesem Blogbeitrag erl\u00e4utern wir den Workflow von Anwendungsf\u00e4llen, einschlie\u00dflich Schritt-f\u00fcr-Schritt-Anweisungen f\u00fcr die Integration.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/jfrog.com\/de\/wp-json\/wp\/v2\/posts\/133129\" \/>\n<meta property=\"og:locale\" content=\"de_DE\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"So integrieren Sie die JFrog Platform nahtlos mit Ihrer GitHub-Umgebung\" \/>\n<meta property=\"og:description\" content=\"In diesem Blogbeitrag erl\u00e4utern wir den Workflow von Anwendungsf\u00e4llen, einschlie\u00dflich Schritt-f\u00fcr-Schritt-Anweisungen f\u00fcr die Integration.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/jfrog.com\/de\/blog\/jfrog-github-integration-technical-details\/\" \/>\n<meta property=\"og:site_name\" content=\"JFrog\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/artifrog\" \/>\n<meta property=\"article:published_time\" content=\"2024-06-10T06:37:37+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-06-24T14:07:42+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/media.jfrog.com\/wp-content\/uploads\/2024\/05\/30211943\/1200x630-2.png\" \/>\n<meta name=\"author\" content=\"adia\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@jfrog\" \/>\n<meta name=\"twitter:site\" content=\"@jfrog\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"adia\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"6 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/jfrog.com\/de\/blog\/jfrog-github-integration-technical-details\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/jfrog.com\/de\/blog\/jfrog-github-integration-technical-details\/\"},\"author\":{\"name\":\"adia\",\"@id\":\"https:\/\/jfrog.com\/de\/#\/schema\/person\/b3b548d5ef5d4a09a60c063aca4e2536\"},\"headline\":\"So integrieren Sie die JFrog Platform nahtlos mit Ihrer GitHub-Umgebung\",\"datePublished\":\"2024-06-10T06:37:37+00:00\",\"dateModified\":\"2024-06-24T14:07:42+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/jfrog.com\/de\/blog\/jfrog-github-integration-technical-details\/\"},\"wordCount\":915,\"publisher\":{\"@id\":\"https:\/\/jfrog.com\/de\/#organization\"},\"image\":{\"@id\":\"https:\/\/jfrog.com\/de\/blog\/jfrog-github-integration-technical-details\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/jfrog.com\/wp-content\/uploads\/2024\/05\/GitHub-JFrog-Integration-Announcement-blog-863x300-1.png\",\"keywords\":[\"GitHub\",\"Integration\"],\"articleSection\":[\"Distribution\",\"CI\/CD Pipelines\",\"Software Distribution\",\"Sicherheit und DevSecOps\",\"Artefakt-Management\",\"Artifactory\",\"Xray\",\"Plattform\"],\"inLanguage\":\"de-DE\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/jfrog.com\/de\/blog\/jfrog-github-integration-technical-details\/\",\"url\":\"https:\/\/jfrog.com\/de\/blog\/jfrog-github-integration-technical-details\/\",\"name\":\"Github & Jfrog verbinden: So geht's | JFrog\",\"isPartOf\":{\"@id\":\"https:\/\/jfrog.com\/de\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/jfrog.com\/de\/blog\/jfrog-github-integration-technical-details\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/jfrog.com\/de\/blog\/jfrog-github-integration-technical-details\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/jfrog.com\/wp-content\/uploads\/2024\/05\/GitHub-JFrog-Integration-Announcement-blog-863x300-1.png\",\"datePublished\":\"2024-06-10T06:37:37+00:00\",\"dateModified\":\"2024-06-24T14:07:42+00:00\",\"description\":\"In diesem Blogbeitrag erl\u00e4utern wir den Workflow von Anwendungsf\u00e4llen, einschlie\u00dflich Schritt-f\u00fcr-Schritt-Anweisungen f\u00fcr die Integration.\",\"breadcrumb\":{\"@id\":\"https:\/\/jfrog.com\/de\/blog\/jfrog-github-integration-technical-details\/#breadcrumb\"},\"inLanguage\":\"de-DE\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/jfrog.com\/de\/blog\/jfrog-github-integration-technical-details\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"de-DE\",\"@id\":\"https:\/\/jfrog.com\/de\/blog\/jfrog-github-integration-technical-details\/#primaryimage\",\"url\":\"https:\/\/jfrog.com\/wp-content\/uploads\/2024\/05\/GitHub-JFrog-Integration-Announcement-blog-863x300-1.png\",\"contentUrl\":\"https:\/\/jfrog.com\/wp-content\/uploads\/2024\/05\/GitHub-JFrog-Integration-Announcement-blog-863x300-1.png\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/jfrog.com\/de\/blog\/jfrog-github-integration-technical-details\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/jfrog.com\/de\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"So integrieren Sie die JFrog Platform nahtlos mit Ihrer GitHub-Umgebung\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/jfrog.com\/de\/#website\",\"url\":\"https:\/\/jfrog.com\/de\/\",\"name\":\"JFrog\",\"description\":\"Deliver Trusted Software Releases at Speed and Scale\",\"publisher\":{\"@id\":\"https:\/\/jfrog.com\/de\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/jfrog.com\/de\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"de-DE\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/jfrog.com\/de\/#organization\",\"name\":\"JFrog\",\"url\":\"https:\/\/jfrog.com\/de\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"de-DE\",\"@id\":\"https:\/\/jfrog.com\/de\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/speedmedia2.jfrog.com\/08612fe1-9391-4cf3-ac1a-6dd49c36b276\/media.jfrog.com\/wp-content\/uploads\/2025\/05\/27095207\/Logo.svg\",\"contentUrl\":\"https:\/\/speedmedia2.jfrog.com\/08612fe1-9391-4cf3-ac1a-6dd49c36b276\/media.jfrog.com\/wp-content\/uploads\/2025\/05\/27095207\/Logo.svg\",\"width\":74,\"height\":73,\"caption\":\"JFrog\"},\"image\":{\"@id\":\"https:\/\/jfrog.com\/de\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/artifrog\",\"https:\/\/x.com\/jfrog\",\"https:\/\/www.linkedin.com\/company\/455737\",\"https:\/\/www.youtube.com\/channel\/UCh2hNg76zo3d1qQqTWIQxDg\",\"https:\/\/www.wikidata.org\/wiki\/Q98608948\"],\"description\":\"We set out on our Liquid Software journey in 2008, with the mission to transform the way enterprises manage and release software updates. The world expects software to update continuously, securely, non-intrusively and without user intervention. This hyper-connected experience can only be enabled by automation with an end-to-end DevOps platform and a binary-centric focus. With this in mind, we\u2019ve developed the JFrog Platform, ushering in a new era of DevOps and DevSecOps standards that power continuous updates. More than a decade after our founding, with thousands of customers and millions of users globally, JFrog has become the \u201cDatabase of DevOps\u201d and the de-facto standard in release and update management.\",\"legalName\":\"Jfrog, Inc.\",\"numberOfEmployees\":{\"@type\":\"QuantitativeValue\",\"minValue\":\"1001\",\"maxValue\":\"5000\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/jfrog.com\/de\/#\/schema\/person\/b3b548d5ef5d4a09a60c063aca4e2536\",\"name\":\"adia\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"de-DE\",\"@id\":\"https:\/\/jfrog.com\/de\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/b632c6f43bb8b7c0b2f98092b7eae6c7ae2fced89a69f7c37fd180fa93d803dc?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/b632c6f43bb8b7c0b2f98092b7eae6c7ae2fced89a69f7c37fd180fa93d803dc?s=96&d=mm&r=g\",\"caption\":\"adia\"}}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Github & Jfrog verbinden: So geht's | JFrog","description":"In diesem Blogbeitrag erl\u00e4utern wir den Workflow von Anwendungsf\u00e4llen, einschlie\u00dflich Schritt-f\u00fcr-Schritt-Anweisungen f\u00fcr die Integration.","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:\/\/jfrog.com\/de\/wp-json\/wp\/v2\/posts\/133129","og_locale":"de_DE","og_type":"article","og_title":"So integrieren Sie die JFrog Platform nahtlos mit Ihrer GitHub-Umgebung","og_description":"In diesem Blogbeitrag erl\u00e4utern wir den Workflow von Anwendungsf\u00e4llen, einschlie\u00dflich Schritt-f\u00fcr-Schritt-Anweisungen f\u00fcr die Integration.","og_url":"https:\/\/jfrog.com\/de\/blog\/jfrog-github-integration-technical-details\/","og_site_name":"JFrog","article_publisher":"https:\/\/www.facebook.com\/artifrog","article_published_time":"2024-06-10T06:37:37+00:00","article_modified_time":"2024-06-24T14:07:42+00:00","og_image":[{"url":"https:\/\/media.jfrog.com\/wp-content\/uploads\/2024\/05\/30211943\/1200x630-2.png"}],"author":"adia","twitter_card":"summary_large_image","twitter_creator":"@jfrog","twitter_site":"@jfrog","twitter_misc":{"Written by":"adia","Est. reading time":"6 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/jfrog.com\/de\/blog\/jfrog-github-integration-technical-details\/#article","isPartOf":{"@id":"https:\/\/jfrog.com\/de\/blog\/jfrog-github-integration-technical-details\/"},"author":{"name":"adia","@id":"https:\/\/jfrog.com\/de\/#\/schema\/person\/b3b548d5ef5d4a09a60c063aca4e2536"},"headline":"So integrieren Sie die JFrog Platform nahtlos mit Ihrer GitHub-Umgebung","datePublished":"2024-06-10T06:37:37+00:00","dateModified":"2024-06-24T14:07:42+00:00","mainEntityOfPage":{"@id":"https:\/\/jfrog.com\/de\/blog\/jfrog-github-integration-technical-details\/"},"wordCount":915,"publisher":{"@id":"https:\/\/jfrog.com\/de\/#organization"},"image":{"@id":"https:\/\/jfrog.com\/de\/blog\/jfrog-github-integration-technical-details\/#primaryimage"},"thumbnailUrl":"https:\/\/jfrog.com\/wp-content\/uploads\/2024\/05\/GitHub-JFrog-Integration-Announcement-blog-863x300-1.png","keywords":["GitHub","Integration"],"articleSection":["Distribution","CI\/CD Pipelines","Software Distribution","Sicherheit und DevSecOps","Artefakt-Management","Artifactory","Xray","Plattform"],"inLanguage":"de-DE"},{"@type":"WebPage","@id":"https:\/\/jfrog.com\/de\/blog\/jfrog-github-integration-technical-details\/","url":"https:\/\/jfrog.com\/de\/blog\/jfrog-github-integration-technical-details\/","name":"Github & Jfrog verbinden: So geht's | JFrog","isPartOf":{"@id":"https:\/\/jfrog.com\/de\/#website"},"primaryImageOfPage":{"@id":"https:\/\/jfrog.com\/de\/blog\/jfrog-github-integration-technical-details\/#primaryimage"},"image":{"@id":"https:\/\/jfrog.com\/de\/blog\/jfrog-github-integration-technical-details\/#primaryimage"},"thumbnailUrl":"https:\/\/jfrog.com\/wp-content\/uploads\/2024\/05\/GitHub-JFrog-Integration-Announcement-blog-863x300-1.png","datePublished":"2024-06-10T06:37:37+00:00","dateModified":"2024-06-24T14:07:42+00:00","description":"In diesem Blogbeitrag erl\u00e4utern wir den Workflow von Anwendungsf\u00e4llen, einschlie\u00dflich Schritt-f\u00fcr-Schritt-Anweisungen f\u00fcr die Integration.","breadcrumb":{"@id":"https:\/\/jfrog.com\/de\/blog\/jfrog-github-integration-technical-details\/#breadcrumb"},"inLanguage":"de-DE","potentialAction":[{"@type":"ReadAction","target":["https:\/\/jfrog.com\/de\/blog\/jfrog-github-integration-technical-details\/"]}]},{"@type":"ImageObject","inLanguage":"de-DE","@id":"https:\/\/jfrog.com\/de\/blog\/jfrog-github-integration-technical-details\/#primaryimage","url":"https:\/\/jfrog.com\/wp-content\/uploads\/2024\/05\/GitHub-JFrog-Integration-Announcement-blog-863x300-1.png","contentUrl":"https:\/\/jfrog.com\/wp-content\/uploads\/2024\/05\/GitHub-JFrog-Integration-Announcement-blog-863x300-1.png"},{"@type":"BreadcrumbList","@id":"https:\/\/jfrog.com\/de\/blog\/jfrog-github-integration-technical-details\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/jfrog.com\/de\/"},{"@type":"ListItem","position":2,"name":"So integrieren Sie die JFrog Platform nahtlos mit Ihrer GitHub-Umgebung"}]},{"@type":"WebSite","@id":"https:\/\/jfrog.com\/de\/#website","url":"https:\/\/jfrog.com\/de\/","name":"JFrog","description":"Deliver Trusted Software Releases at Speed and Scale","publisher":{"@id":"https:\/\/jfrog.com\/de\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/jfrog.com\/de\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"de-DE"},{"@type":"Organization","@id":"https:\/\/jfrog.com\/de\/#organization","name":"JFrog","url":"https:\/\/jfrog.com\/de\/","logo":{"@type":"ImageObject","inLanguage":"de-DE","@id":"https:\/\/jfrog.com\/de\/#\/schema\/logo\/image\/","url":"https:\/\/speedmedia2.jfrog.com\/08612fe1-9391-4cf3-ac1a-6dd49c36b276\/media.jfrog.com\/wp-content\/uploads\/2025\/05\/27095207\/Logo.svg","contentUrl":"https:\/\/speedmedia2.jfrog.com\/08612fe1-9391-4cf3-ac1a-6dd49c36b276\/media.jfrog.com\/wp-content\/uploads\/2025\/05\/27095207\/Logo.svg","width":74,"height":73,"caption":"JFrog"},"image":{"@id":"https:\/\/jfrog.com\/de\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/artifrog","https:\/\/x.com\/jfrog","https:\/\/www.linkedin.com\/company\/455737","https:\/\/www.youtube.com\/channel\/UCh2hNg76zo3d1qQqTWIQxDg","https:\/\/www.wikidata.org\/wiki\/Q98608948"],"description":"We set out on our Liquid Software journey in 2008, with the mission to transform the way enterprises manage and release software updates. The world expects software to update continuously, securely, non-intrusively and without user intervention. This hyper-connected experience can only be enabled by automation with an end-to-end DevOps platform and a binary-centric focus. With this in mind, we\u2019ve developed the JFrog Platform, ushering in a new era of DevOps and DevSecOps standards that power continuous updates. More than a decade after our founding, with thousands of customers and millions of users globally, JFrog has become the \u201cDatabase of DevOps\u201d and the de-facto standard in release and update management.","legalName":"Jfrog, Inc.","numberOfEmployees":{"@type":"QuantitativeValue","minValue":"1001","maxValue":"5000"}},{"@type":"Person","@id":"https:\/\/jfrog.com\/de\/#\/schema\/person\/b3b548d5ef5d4a09a60c063aca4e2536","name":"adia","image":{"@type":"ImageObject","inLanguage":"de-DE","@id":"https:\/\/jfrog.com\/de\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/b632c6f43bb8b7c0b2f98092b7eae6c7ae2fced89a69f7c37fd180fa93d803dc?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/b632c6f43bb8b7c0b2f98092b7eae6c7ae2fced89a69f7c37fd180fa93d803dc?s=96&d=mm&r=g","caption":"adia"}}]}},"_links":{"self":[{"href":"https:\/\/jfrog.com\/de\/wp-json\/wp\/v2\/posts\/133129","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/jfrog.com\/de\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/jfrog.com\/de\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/jfrog.com\/de\/wp-json\/wp\/v2\/users\/73"}],"replies":[{"embeddable":true,"href":"https:\/\/jfrog.com\/de\/wp-json\/wp\/v2\/comments?post=133129"}],"version-history":[{"count":5,"href":"https:\/\/jfrog.com\/de\/wp-json\/wp\/v2\/posts\/133129\/revisions"}],"predecessor-version":[{"id":134417,"href":"https:\/\/jfrog.com\/de\/wp-json\/wp\/v2\/posts\/133129\/revisions\/134417"}],"wp:attachment":[{"href":"https:\/\/jfrog.com\/de\/wp-json\/wp\/v2\/media?parent=133129"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/jfrog.com\/de\/wp-json\/wp\/v2\/categories?post=133129"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/jfrog.com\/de\/wp-json\/wp\/v2\/tags?post=133129"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}