发生了什么

今天首次在Fedora上使用git,因为没有小王八(TortoiseGit)帮助,其过程异常焦灼……

反正经过一系列折腾,我在本地新建了一个项目并将其加入git控制……

$ git init
$ git config user.name <myusername>
$ git config user.email <myemail@myemail.com>

然后我想把这个库放到远端bitbucket上,于是在bitbucket上新建了一个repo,然后进行添加……

$ git remote add origin https://xxx@xxx/xxx/xxx.git
$ git commit -m "Init repo"
$ git push origin master

因为是头一次在Fedora上部署Git,所以按照惯例,这个时候弹出密码输入,我像往常那样把Bitbucket的账户密码输了进去……

****...****

然后就出事了……

fatal: Authentication failed for 'https://xxx@xxx/xxx/xxx.git'

什么原因

我还在纳闷我是不是密码敲错了,于是我就从浏览器那边把bitbucket注销重新登录,确认了密码没有问题之后又试了一次,然而涛声依旧……

于是我开始怀疑是不是没加入RSA公钥导致的,但是按照说明生成了密钥并添加到Bitbucket中继续登录……

$ ssh-keygen

结果还是不行……

然后我往前翻,才发现问题所在……

[2022-09-26T09:52:34.250Z] > git push origin master [6214ms]
[2022-09-26T09:52:34.250Z] remote: Bitbucket Cloud recently stopped supporting account passwords for Git authentication.
remote: See our community post for more details: https://atlassian.community/t5/x/x/ba-p/1948231
remote: App passwords are recommended for most use cases and can be created in your Personal settings:
remote: https://bitbucket.org/account/settings/app-passwords/
fatal: Authentication failed for 'https://xxx@xxx/xxx/xxx.git'

从上面提到的这个链接指向了一篇Bitbucket的声明,大概意思是:

你个老登你奥特啦,我们从2022年3月开始就不再使用账户密码登录的方式进行Git的一般控制啦,取而代之地,对每个Application我们单独给密码啦(App密码)!

总之,就是他们认为这个玩意更安全,于是弃用了以前的登录方式……

如何解决

于是继续按照他给的第二个链接进入Bitbucket仓库后台添加App密码……

填写上述信息勾选合适的访问权限后,点击“创建”稍等片刻就会生成下面这一坨密码……

这一坨务必要妥善保存,因为一旦点了关闭之后你就再也没有机会看到这个密码了……除非你去Bitbucket后台重新申请,当然,在后台你也可以选择作废已经产生的密码。

当然,不必担心我的截图没有打码,因为当您看到这串密码的时候,它已经作废了。

然后在push的时候再次提示密码输入,这个时候再把上面这一坨填进去(或者粘进去),终于……

To https://xxx@xxx/xxx/xxx.git
* [new branch] master -> master

如果不希望每次push的时候重新输入密码,那么就……

$ git config user.password ATBBdGdbGQSq2UkDu2TATgUq7GcK604EA610

当然,保险起见,我还是把这一坨东西保存到别的位置去了Orz……

总结

……

Bitbucket你个老登!

记录一次Bitbucket鉴权的坑的更多相关文章

  1. gitlab配置smtp时,总是提示需要鉴权,记录一下爬坑过程。

    配置好smtp,然后发送邮件时总是提示 Net::SMTPFatalError: 550 5.7.1 authentication is required 最后发现是因为在gitlab web界面上配 ...

  2. 测试开发【Mock平台】04实战:前后端项目初始化与登录鉴权实现

    [Mock平台]为系列测试开发教程,从0到1编码带你一步步使用Spring Boot 和 Antd React 框架完成搭建一个测试工具平台,希望作为一个实战项目能为你的测试开发学习有帮助. 一.后端 ...

  3. spring boot / cloud (十四) 微服务间远程服务调用的认证和鉴权的思考和设计,以及restFul风格的url匹配拦截方法

    spring boot / cloud (十四) 微服务间远程服务调用的认证和鉴权的思考和设计,以及restFul风格的url匹配拦截方法 前言 本篇接着<spring boot / cloud ...

  4. OBS studio最新版配置鉴权推流

    这两天在看百度的LSS音视频直播服务的sdk..sdk看了一圈,基本上只能操作个流什么的,查看流列表,域名之类的.按照百度这块的描述自己去实现这个显得不是那么明智我感觉.其次就是百度LSS的教程用的O ...

  5. 基于Springboot集成security、oauth2实现认证鉴权、资源管理

    1.Oauth2简介 OAuth(开放授权)是一个开放标准,允许用户授权第三方移动应用访问他们存储在另外的服务提供者上的信息,而不需要将用户名和密码提供给第三方移动应用或分享他们数据的所有内容,OAu ...

  6. SpringBoot系列: Web应用鉴权思路

    ==============================web 项目鉴权============================== 主要的鉴权方式有:1. 用户名/密码鉴权, 然后通过 Sess ...

  7. iOS进阶之TCP代理鉴权过程

    这段时间接触了网络代理,而自己的任务是完成TCP和UDP的网络代理,所以在这里写些自己的理解吧. 这篇文章先介绍一下TCP代理的鉴权过程(采用的是用户名和密码鉴权),下一篇文章再介绍UDP代理的鉴权过 ...

  8. WebAPI常见的鉴权方法,及其适用范围

    在谈这个问题之前,我们先来说说在WebAPI中保障接口请求合法性的常见办法: API Key + API Secret cookie-session认证 OAuth JWT 当然还有很多其它的,比如 ...

  9. 认证鉴权与API权限控制在微服务架构中的设计与实现(四)

    引言: 本文系<认证鉴权与API权限控制在微服务架构中的设计与实现>系列的完结篇,前面三篇已经将认证鉴权与API权限控制的流程和主要细节讲解完.本文比较长,对这个系列进行收尾,主要内容包括 ...

随机推荐

  1. Vue 基本列表 && 数据过滤与排序

    1 <!DOCTYPE html> 2 <html> 3 <head> 4 <meta charset="UTF-8" /> 5 & ...

  2. BTDetect用户手册和技术支持

    BTDetect用户手册和技术支持 1. 程序主要功能 BTDetect是BT(BioTechnology) Detect 生物科技检测的缩写.本程序将根据用户的回答推断其两大基因类型.以及具体的小分 ...

  3. DP 优化方法合集

    0. 前言 写完这篇文章后发现自己对于 DP 的优化一窍不通,所以补了补 DP 的一些优化,写篇 blog 总结一下. 1. 单调队列/单调栈优化 1.2 算法介绍 这应该算是最基础的 DP 优化方法 ...

  4. Python 工匠: 异常处理的三个好习惯

    前言 这是 "Python 工匠"系列的第 6 篇文章.(点击原文链接,可查看系列其他文章) 如果你用 Python 编程,那么你就无法避开异常,因为异常在这门语言里无处不在.打个 ...

  5. "蔚来杯"2022牛客暑期多校训练营9 G Magic Spells【马拉车+哈希】

    四川今天又上热搜了,继南部疫情的未雨绸缪后,龙槽沟是真的倾盆大雨了.我没有兴趣虚伪矫情地对罹难的游人表达同情,因为人与人互不相通徒增谈资:我也没有兴趣居高临下地对擅闯的愚人表达不屑,因为你我皆为乌合之 ...

  6. 数据库运维之路——关于tempdb暴增实战案例

    转眼间,2021年的第一个季度已经到了最后一个月了,由于疫情原因,最近一段时间一直在北京,基本上没有出差,每天上班下班的日子感觉时间过的好快,新的一年继续努力奋斗啊. 仔细回想一下,自己踏入到sql ...

  7. Vim配置文件-详解(.vimrc)

    Vim配置文件的作用 Vim启动时,会根据配置文件(.vimrc)来设置 Vim,因此我们可以通过此文件来定制适合自己的 Vim Vim分类 系统Vim配置文件/etc/vimrc 所有系统用户在启动 ...

  8. jQuery 选择器选中某节点,在后续的链式操作函数内使用 $(this) 的结果是 Window 对象,而非该节点对象

    <ul class="tree-ocx"> <li class="tree-ocx-li" data-displayed="fals ...

  9. Excel 文本函数(二):CONCATENATE 和 CONCAT

    在 Excel 2016.Excel Mobile 和 Excel 网页版中,CONCATENATE 函数已替换为 CONCAT 函数. CONCATENATE 函数只能拼接单个单元格或文本字符,不能 ...

  10. 【Java】学习路径57-TCP协议客户端与服务器端的关闭

    在TCP协议中,如果发送端(客户端)关闭了,那么接收端(服务器端)端就会收到这个消息. 那么接收端(服务器端)怎么知道的呢? 我们进行实验: 首先在发送端中编写一段程序,当用户输入"end& ...