Composer: Wie du private Bitbucket Repositories mit HTTPS autorisierst

Composer + Bitbucket = ❤️

Wir brauchen zwei Dinge:

  • Eine auth.json die composer verarbeitet um Anfragen zu stellen.
  • Und einen OAuth consumer in Bitbucket.

Bitbucket nutzt seine OAuth Implementierung für HTTPS Anfragen.

Anders als SSH keys werden OAuth Zugriffe nur auf Workspace Ebene verwaltet.

Diese findest du in deinen Workspace Einstellungen > OAuth consumers.

Nach einem Klick auf „Add consumer“ wählen wir

  • einen Name,
  • eine kleine Beschreibung,
  • setzen den Haken „This is a private consumer“
  • und erlauben so wenig wie möglich.
  • Speichern.

Und BAM, wir haben einen Consumer angelegt.

Nach Klick auf den Namen sehen wir die Credentials.

Sieht etwa so aus:

Credentials in composer hinterlegen

Composer hat einen Weg um autorisierte Anfragen zu stellen.

Die auth.json ist der Punkt von wo aus Composer am Ende das Wie und Was zusammenrechnet bevor eine Anfrage an einen Provider gehen.

Für meine Zwecke macht es Sinn die globale auth.json anzupassen.

Den Pfad dazu lässt sich einfach mit composer config global --list auslesen.

Solltest du aus Gründen andere Konfigurationen per Projekt nutzen, erstelle eine Datei auth.json im Pfad in dem die Projekt composer.json liegt.

Die auth.json lässt auf mindestens zwei Wegen bearbeiten.

Per CLI

composer config --global --auth bitbucket-oauth.bitbucket.org {key} {token} # Ggfls. --global entfernen

Oder mit der Kettensäge

  • Datei öffnen.
  • Folgendes im Editor deiner Wahl einfügen.
{
    "bitbucket-oauth": {
        "bitbucket.org": {
            "consumer-key": "{key}",
            "consumer-secret": "{secret}"
        }
    }
}
  • {key} und {secret} mit den Bitbucket Credentials ersetzen.
  • Speichern.

Schreibe einen Kommentar