解决:Linux上SVN 1.12版本以上无法直接存储明文密码

问题:今天在Linux机器上安装了SVN,作为客户端使用,首次执行SVN相关操作,输入账号密码信息后,后面再执行SVN相关操作(比如"svn update")还是每次都需要输入密码。

回想以前在首次输入账号密码后都还会弹一个类似是否记住密码的选项,这次也没有了。对比了下版本,以前用的版本是1.10.2版本,当前系统默认安装的是1.13.0版本,于是到官网查了相关资料,最终发现官方文档(链接:Apache Subversion 1.12 Release Notes)有提到:

从1.12版本开始,默认情况下禁用客户端明文密码存储了

虽然如果把版本手动安装回1.12版本以前其实就可以了,但我还是想先试试把“默认情况下禁用客户端明文密码存储”手动修改为“打开明文密码存储”,毕竟人还是需要往前看,SVN新版本一直在迭代,总不能以后一直用老版本吧。

通过“svn auth”对比我前后安装的两个版本可以看出,更早版本(1.10.2)的输出的密码缓存方式为:“Password cache: simple”,最近版本(1.13.0)输出的为:“Password cache: gpg-agent”。

我查看了下“~/.subversion/auth/svn.simple/xxxxxxxxxxxxx”文件,"1.13.0"版本的文件内容为:

K 8
passtype
V 9
gpg-agent
K 15

svn:realmstring
V 63
<svn://xxx.xx.xx.xxx:3690> 7cd5695d-cf1b-4713-b810-aae05645121b
K 8
username
V 4
test
END

 "1.10.2"版本的文件内容为:

K 8
passtype
V 6
simple
K 8
password
V 12
testPassword

K 15
svn:realmstring
V 63
<svn://xxx.xx.xx.xxx:3690> 8073fbc3-e331-4fcb-bade-84c2faefd342
K 8
username
V 4
test
END

 SVN客户端首次登入时会把登入相关信息记录在“~/.subversion/auth/svn.simple/xxxxxxxxxxxxx”里,从上面我标出的蓝色字体可以看出来两个版本的区别。在“1.10.2”版本中“passtype”为“simple”意味着就是“明文密码存储”方式,因为在它下面就存放这密码(“K 8 password  V12 testPassword”)信息。

只需要把“1.13.0”版本中“passtype”相关信息修正为和“1.10.2”版本的一样即可。

这个文件“~/.subversion/auth/svn.simple/xxxxxxxxxxxxx”内容的语法规则很简单,里面的“K”或者“V”变量后跟着的数字代表着下一行字符串值的字符个数,了解这个后就可进行修改了。

比如我就把我的“1.13.0”版本“~/.subversion/auth/svn.simple/xxxxxxxxxxxxx”文件修改内容修改如下后就相当于把密码缓存方式改成了“明文存储”了:

K 8
passtype
V 6
simple
K 8
password
V 12
testPassword
K 15

svn:realmstring
V 63
<svn://xxx.xx.xx.xxx:3690> 7cd5695d-cf1b-4713-b810-aae05645121b
K 8
username
V 4
test
END

上面红色字体部分就是我修改的了。修改完了后,保存退出,再执行SVN相关操作(比如“svn update”)就不再需要输入密码了。

注意:上面红色字体部分的“V 12 testPassword”是我这边的svn账号“test”的密码(“testPassword”字符串长度为12个字符,所以“V”后面的数组我填的是“12”),有同样需求的,需要把密码修改为对应账号的密码。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/1483665.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

基于springboot+vue+uniapp的高校就业招聘系统小程序

开发语言&#xff1a;Java框架&#xff1a;springbootuniappJDK版本&#xff1a;JDK1.8服务器&#xff1a;tomcat7数据库&#xff1a;mysql 5.7&#xff08;一定要5.7版本&#xff09;数据库工具&#xff1a;Navicat11开发软件&#xff1a;eclipse/myeclipse/ideaMaven包&#…

Grafana :利用Explore方式实现多条件查询

背景 日志统一推送到Grafana上管理。所以&#xff0c;有了在Grafana上进行日志搜索的需求&#xff0c;而进行日志搜索通常需要多条件组合。 解决方案 通过Grafana的Explore的方式实现多条件查询。 直接看操作步骤&#xff1a; 在主页搜索框中输入“Explore” 进入这个界面…

llama 2 改进之 RMSNorm

RMSNorm 论文&#xff1a;https://openreview.net/pdf?idSygkZ3MTJE Github&#xff1a;https://github.com/bzhangGo/rmsnorm?tabreadme-ov-file 论文假设LayerNorm中的重新居中不变性是可有可无的&#xff0c;并提出了均方根层归一化(RMSNorm)。RMSNorm根据均方根(RMS)将…

昇思25天学习打卡营第18天|RNN实现情感分类

相关知识 情感分类 指输入一段话或句子&#xff0c;返回该段话的正向或复兴的情感分类。 text embedding 指将文本转化成向量的方法。这里的文本指词、句子、文档等文本序列。 词向量化后会将词转为二进制(独热编码)或高维实数向量&#xff0c;句子和文档向量化则将句子或文…

给Wordpress评论列表的用户昵称增加个性化角色称号和注册年数

什么是个性化角色称号? 个性化称号:其实就是对应wordpress的几个用户组,重新给它装个面具。 比如:管理员 -> 华山掌门 比如:订阅者 -> 华山弟子 比如:VIP组 -> 掌门亲传弟子 。。。 就是个好玩的东西 什么又是注册年数? 显示用户在你的网站上注册了多少…

spring ioc的原理

1、控制反转(IOC):对象的创建控制权由程序自身转移到外部&#xff08;容器&#xff09; 2、依赖注入(DI):所谓依赖注入&#xff0c;就是由IOC容器在运行期间&#xff0c;动态地将某种依赖关系注入到对象之中。 Spring 中的 IoC 的实现原理就是工厂模式加反射机制。 参考资料…

电脑屏幕录制怎么弄?分享3个简单的电脑录屏方法

在信息爆炸的时代&#xff0c;屏幕上的每一个画面都可能成为我们生活中不可或缺的记忆。作为一名年轻男性&#xff0c;我对于录屏软件的需求可以说是既挑剔又实际。今天&#xff0c;我就为大家分享一下我近期体验的三款录屏软件&#xff1a;福昕录屏大师、转转大师录屏大师和OB…

Chromium CI/CD 之Jenkins实用指南2024 - 常见的构建错误(六)

1. 引言 在前一篇《Chromium CI/CD 之 Jenkins - 发送任务到Ubuntu&#xff08;五&#xff09;》中&#xff0c;我们详细讲解了如何将Jenkins任务发送到Ubuntu节点执行&#xff0c;并成功验证了文件的传输和回传。这些操作帮助您充分利用远程节点资源&#xff0c;提升了构建和…

浅谈安数云智能安全运营管理平台:DCS-SOAR

SOAR&#xff08;security orchestration&#xff0c;automation and response&#xff09;&#xff0c;由Gartner于2015年提出&#xff0c;最初的含义是安全运营、分析与报告。2017年&#xff0c;Gartner又重新定义了SOAR的能力&#xff0c;包括安全编排、安全自动化和安全响应…

STM32CubeIDE(STM32L432KC片上ADC)

目录 一、概念 二、使用 1、定时器触发模式 1.1 软件配置 1.2 代码编写 2、定时器触发ADC 多通道DMA 2.1 软件配置 2.2 代码编写 一、概念 1. 类型与精度&#xff1a;STM32L432KC的ADC是一个12位逐次逼近型模拟数字转换器&#xff0c;能够提供高精度的模拟信号测量。其…

OPC UA边缘计算耦合器BL205工业通信的最佳解决方案

OPC UA耦合器BL205是钡铼技术基于下一代工业互联网技术推出的分布式、可插拔、结构紧凑、可编程的IO系统&#xff0c;可直接接入SCADA、MES、MOM、ERP等IT系统&#xff0c;无缝链接OT与IT层&#xff0c;是工业互联网、工业4.0、智能制造、数字化转型解决方案中IO系统最佳方案。…

go-zero框架入门

go-zero框架环境的安装 goctl 若想用go-zero框架&#xff0c;还需要一些前置条件&#xff1a; 安装goctl go install github.com/zeromicro/go-zero/tools/goctllatest可以使用 goctl 命令查看是否安装成功 成功后安装protoc goctl env check --install --verbose --force…

Django定时任务框架django-apscheduler的使用

1.安装库 pip install django-apscheduler 2.添加 install_app django_apscheduler 3.在app下添加一个task.py文件&#xff0c;用来实现具体的定时任务 task.pydef my_scheduled_job():print("这个任务每3秒执行一次", time.time()) 4.在app下创建一个manag…

【昇思25天学习打卡营第30天 | K近邻算法实现红酒聚类】

K近邻算法实现红酒聚类学习心得 摘要 本文档介绍了使用MindSpore框架实现K近邻&#xff08;KNN&#xff09;算法在红酒数据集上的聚类实验。通过实验&#xff0c;深入了解了KNN算法的基本原理、实现步骤以及在实际数据集上的应用效果。 文章大纲 实验目的&#xff1a;了解K…

文件IO(Ubuntu)

文件IO 目的 将数据写入文件中 与标准IO的区别 &#xff08;为什么要学习文件IO&#xff09; 标准IO只能操作普通文件和特殊的管道文件 文件IO能操作几乎所有的的文件 缓存区的目的 标准IO有缓存区 文件IO没有缓存区 根据右图描述 标准IO 文件IO buffer缓存区 有缓存区…

读AI新生:破解人机共存密码笔记18读后总结与感想兼导读

1. 基本信息 读AI新生&#xff1a;破解人机共存密码 斯图尔特罗素 著 中信出版社,2020年8月出版 1.1. 读薄率 书籍总字数301千字&#xff0c;笔记总字数44614字。 读薄率44614301000≈14.8% 1.2. 读厚方向 千脑智能 脑机穿越 未来呼啸而来 虚拟人 AI3.0 新机器人 …

VS C#类文件自动生成头部注释

VS C#类文件自动生成头部注释&#xff08;以VS2019为例&#xff09; 1、更新位置 E:\VS2019\vs_2019\Common7\IDE\ItemTemplates\CSharp\Code\2052\Class 2、替换Class 原始文件 using System; using System.Collections.Generic; $if$ ($targetframeworkversion$ > 3.5…

【音视频 | HTTP协议】HTTP协议详细介绍(HTTP方法、报文格式、报文头部字段、状态码)

&#x1f601;博客主页&#x1f601;&#xff1a;&#x1f680;https://blog.csdn.net/wkd_007&#x1f680; &#x1f911;博客内容&#x1f911;&#xff1a;&#x1f36d;嵌入式开发、Linux、C语言、C、数据结构、音视频&#x1f36d; &#x1f923;本文内容&#x1f923;&a…

怎样在 PostgreSQL 中优化对大表的分区裁剪和索引选择?

&#x1f345;关注博主&#x1f397;️ 带你畅游技术世界&#xff0c;不错过每一次成长机会&#xff01;&#x1f4da;领书&#xff1a;PostgreSQL 入门到精通.pdf 文章目录 怎样在 PostgreSQL 中优化对大表的分区裁剪和索引选择一、分区裁剪&#xff1a;精准切割&#xff0c;提…

JVM监控及诊断工具-命令行篇--jinfo命令介绍

JVM监控及诊断工具-命令行篇02-jinfo&#xff1a;实时查看和修改JVM配置参数 一 基本情况二 基本语法2.1查看jinfo -sysprops PIDjinfo -flags PIDjinfo -flag 具体参数 PID 2.2修改 三 拓展java -XX:PrintFlagsInitialjava -XX:PrintFlagsFinaljava -XX:PrintCommandLineFlags…