Wie manipuliere ich das Bitbucket-Repository mit Token?

8

Ich folgte dieser Dokumentation, um einen Token-Wert und ein Token-Geheimnis von bitbucket zu erhalten:
Ссылка

Danach möchte ich mit diesem Token zu einem bestimmten Repo ziehen / ziehen.

Bei Github kann ich den Token wie folgt verwenden: Ссылка

Meine Frage ist, wie kann ich diese Art von HTTP-Autorisierung bei bitbucket (mercurial / git) verwenden?

    
Gábor Domonkos 25.07.2014, 22:15
quelle

4 Antworten

5

Diese BitBucket-Seite erwähnt :

  

Wir haben vor kurzem OAuth 2 eingeführt und auch die Möglichkeit hinzugefügt, sie als HTTP-Basisauthentifizierungsdaten .

     

Klonen eines Repositorys mit einem Zugriffstoken

     

Da Add-Ons nicht in der Lage sind, ihre eigenen SSH-Schlüssel zum Klonen hochzuladen, können Zugriffstoken als einfache HTTP-Authentifizierungsinformationen verwendet werden, um sicher über HTTPS zu klonen.

%Vor%      

Die Literal-Zeichenfolge x-token-auth als Ersatz für den Benutzernamen ist erforderlich.

     

Unser Prozess ist ähnlich wie GitHub, aber ein wenig anders: Der Unterschied ist, dass GitHub das tatsächliche Token in das Feld username legt.

Weitere Informationen finden Sie unter " OAuth in Bitbucket Cloud ", wie vorgeschlagen < a href="https://stackoverflow.com/questions/24965307/how-to-manipulate-bitbucket-repository-with-token#comment84443796_24967371"> in den Kommentaren von nick graziano .

    
VonC 26.07.2014, 03:53
quelle
13

Ich habe ein App-Passwort verwendet, das ich aus dem Bitbucket Cpanel unter Einstellungen - & gt; Zugriffsverwaltung (Seitenleiste) - & gt; App-Passwörter Nachdem ich das getan habe, habe ich das Repo geklont, indem ich meinen Benutzernamen und das neue App-Passwort wie folgt verwendet habe:

Ссылка

    
Psymatix 07.10.2016 22:02
quelle
7

Zunächst einmal: Nur OAuth 2-Token können zum Reponieren von Repos verwendet werden

Während auf dieser Seite unklar ist, habe ich gesehen, dass Leute versuchen, OAuth 1-Zugriffstoken zu verwenden. Leider unterstützen Git und Mercurial OAuth 1 nicht und es ist daher nicht möglich, Repos so zu klonen.

Dies liegt daran, dass OAuth 1 erfordert, dass Anforderungen eindeutig signiert werden. Das Token selbst ist nur eine der Eingangsvariablen für den kryptografischen Signaturprozess, die git und hg nicht unterstützen.

Nun haben wir in der Tat kürzlich Unterstützung für OAuth 2 hinzugefügt, die trotz ihres Namens ein sehr unterschiedliches Protokoll ist und keine kryptographische Signatur enthält. Als Ergebnis können OAuth 2-Token zum Klonen über https verwendet werden.

Hier ist ein Dump von mir, der ein neues OAuth 2 Access / Bearer Token erstellt und damit eines meiner privaten Repos klont:

%Vor%

Beachten Sie, dass OAuth 2-Tokens in einer Stunde ablaufen. Danach werden sie aufhören zu arbeiten. Je nachdem, wie Sie das Zugriffstoken erhalten haben, verfügen Sie möglicherweise über ein Aktualisierungstoken. Sie können dieses Aktualisierungs-Token verwenden, um unmittelbar vor dem Klonversuch ein neues Zugriffstoken auszugeben, um den Ablauf zu vermeiden.

    
Erik van Zijst 14.07.2015 05:45
quelle
3

So manipulieren Sie das Bitbucket-Repository mit token :

  1. Zuerst erstellen Sie einen "Oauth" in der Zugriffsverwaltung Ihrer bitbucket-Kontoeinstellung. Dies gibt Ihnen einen "Schlüssel" und ein "Geheimnis". Sie haben dieses Bit getan.

  2. Wenn Sie nun diese Schlüssel und Secret verwenden, fragen Sie Bitbucket nach einem Token. In meinem Fall habe ich eine HTTP-Anfrage an https://bitbucket.org/site/oauth2/access_token gemacht. Ich könnte es mit Curl oder einer Ajax-Bibliothek wie folgt machen:

    %Vor%

    Alternativ dazu war meine HTTP-Anfrage wie folgt (mit superagent im Knoten) mit meinem Content-Type auf application/x-www-form-urlencoded gesetzt, den Sie postman verwenden können:

    %Vor%

    Das Ergebnis ist wie folgt:

    %Vor%
  3. Jetzt, da Sie den "access_token" haben, klonen Sie einen privaten Repo damit. Aber die URL zu Ihrem Repo sollte so sein (halten Sie die Klammer um Token):

    %Vor%
Vahid PG 30.03.2017 09:46
quelle

Tags und Links