百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术文章 > 正文

Python 包存储库 PyPI 收到美国司法部三张传票后,无奈决定:提供用户数据!

itomcoil 2025-03-19 13:36 32 浏览

整理 | 苏宓
出品 | CSDN(ID:CSDNnews)

用过 Python 的开发者,想必都听过 PyPI。它是 Python 官方软件存储库,为超过 700,000 名用户和超过 450,000 个项目提供服务。

近日,PyPI 对用户隐私保护引发了不少人的担忧。事情起因于 5 月 24 日,Python 软件基金会的基础设施总监 Ee Durbin 在官方博客上发布了一篇《PyPI was subpoenaed》的公告。

在公告中,Ee Durbin 称 Python 软件基金会(PSF)2023 年 3 月和 4 月收到了美国司法部发出来的三张传票,要求 PSF 提供关于 PyPI 用户数据。

PyPI 是一个可以上传 Python 包的平台,通过在 PyPI 上发布的包可以使用"pip install"命令进行安装。为了在 PyPI 上发布包,用户需要创建一个账户,而这次司法部发出的传票要求的就是与这些用户账户相关的信息。

然而,根据 PSF 的说法,他们并没有得到任何关于为何司法部要求用户数据的法律背景信息,但是司法部要求他们提供总共五名 PyPI 用户的数据。

PSF 公告写道,「保护 PyPI 用户的隐私对于 PSF 和 PyPI 管理员来说至关重要,我们致力于尽可能地保护用户数据不被披露。」

不过,在这种情况下,他们在咨询律师之后,最终决定履行数据提供的要求,并对此事进行了公开说明。

司法部要求 PSF 提供的数据如下,PSF 官方也对此进行了说明:

1. 姓名(包括订阅者姓名、用户名和昵称)

PSF 表示,“PyPI 在其数据库中有一个元素用户名,该名称是在其中注册的。用户可以更改显示名称,但不会记录 PyPI 的用户显示名称更改历史。”

2. 地址(包括邮寄地址、居住地址、工作地址和电子邮件地址)

PSF 回应道,由于 PyPI 不要求用户注册时填写邮寄或居住地址,因此仅存储用户的电子邮件地址”,仅将电子邮件地址提供给司法部。

3. 连接记录。

PyPI 在索引中保留项目的所有更改记录。这些记录存储在数据库中,并通过 XMLRPC API 发布,用户名和 IP 地址除外。此外,账户创建、电子邮件发送、电子邮件地址更改、登录、登录失败等用户事件的记录也被保留并可以从数据库中检索到。

4. 会话时间和持续时间记录,以及与这些会话相关的临时分配的网络地址(如Internet 协议地址)。

PyPI 提供 session 时间,即登录时间作为数据,但不记录 session 时长。

5. 服务时长(包括开始日期)和使用的服务类型。

PyPI 保留用户账号创建的日期和最后一次成功登录的记录。这些记录集存储在数据库中,是 PyPI 上的私有信息。

6. 电话或设备号码(包括注册 Internet 协议地址)。

每个用户的所有 IP 地址都是共享的。这些是从数据库记录中获取的,并且是 PyPI 私有的。

7. 支付方式和来源(包括任何信用卡或银行账户号码)和账单记录。

PyPI 不设置用户使用费,因此不存在信用卡支付记录或账单记录。

8. 与给定用户名相关的所有 Python 软件包索引(PyPI)上传的记录。

提供了与每个用户名关联的所有项目的列表。这些是从数据库记录中获取的,并且是 PyPI 私有的。

9. 与给定用户名相关的任何 Python 软件包索引(PyPI)上传的 IP 下载日志。

PyPI 不保存包含 IP 地址的包下载日志。下载日志会经过一个处理流程,其中包括由 CDN 报告的 GeoIP 信息,并从 Google BigQuery 公共数据集中获取。

其实,根据公告也不难看出,虽然 PSF 不愿,但是依然还是会将数据提供给司法部门,至于此举会不会引发更多用户对 PyPI 的不信任,以及会带来哪些影响,目前尚未可知。

公告全文详见:

https://blog.pypi.org/posts/2023-05-24-pypi-was-subpoenaed/

相关推荐

MySQL修改密码_mysql怎么改密码忘了怎么办

拥有原来的用户名账户的密码mysqladmin-uroot-ppassword"test123"Enterpassword:【输入原来的密码】忘记原来root密码第一...

数据库密码配置项都不加密?心也太大了吧!

先看一份典型的配置文件...省略...##配置MySQL数据库连接spring.datasource.driver-class-name=com.mysql.jdbc.Driverspr...

Linux基础知识_linux基础入门知识

系统目录结构/bin:命令和应用程序。/boot:这里存放的是启动Linux时使用的一些核心文件,包括一些连接文件以及镜像文件。/dev:dev是Device(设备)的缩写,该目录...

MySQL密码重置_mysql密码重置教程

之前由于修改MySQL加密模式为mysql_native_password时操作失误,导致无法登陆MySQL数据库,后来摸索了一下,对MySQL数据库密码进行重置后顺利解决,步骤如下:1.先停止MyS...

Mysql8忘记密码/重置密码_mysql密码忘了怎么办?

Mysql8忘记密码/重置密码UBUNTU下Mysql8忘记密码/重置密码步骤如下:先说下大概步骤:修改配置文件,使得用空密码可以进入mysql。然后置当前root用户为空密码。再次修改配置文件,不能...

MySQL忘记密码怎么办?Windows环境下MySQL密码重置图文教程

有不少小白在使用Windows进行搭建主机的时候,安装了一些环境后,其中有MySQL设置后,然后不少马大哈忘记了MySQL的密码,导致在一些程序安装及配置的时候无法进行。这个时候怎么办呢?重置密码呗?...

10种常见的MySQL错误,你可中招?_mysql常见错误提示及解决方法

【51CTO.com快译】如果未能对MySQL8进行恰当的配置,您非但可能遇到无法顺利访问、或调用MySQL的窘境,而且还可能给真实的应用生产环境带来巨大的影响。本文列举了十种MySQL...

Mysql解压版安装过程_mysql解压版安装步骤

Mysql是目前软件开发中使用最多的关系型数据库,具体安装步骤如下:第一步:Mysql官网下载最新版(mysql解压版(mysql-5.7.17-winx64)),Mysql官方下载地址为:https...

MySQL Root密码重置指南:Windows新手友好教程

如果你忘记了MySQLroot密码,请按照以下简单步骤进行重置。你需要准备的工具:已安装的MySQL以管理员身份访问命令提示符一点复制粘贴的能力分步操作指南1.创建密码重置文件以管理员...

安卓手机基于python3搜索引擎_python调用安卓so库

环境:安卓手机手机品牌:vivox9s4G运行内存手机软件:utermux环境安装:1.java环境的安装2.redis环境的安装aptinstallredis3.elasticsearch环...

Python 包管理 3 - poetry_python community包

Poetry是一款现代化的Python依赖管理和打包工具。它通过一个pyproject.toml文件来统一管理你的项目依赖、配置和元数据,并用一个poetry.lock文件来锁定所有依赖的精...

Python web在线服务生产环境真实部署方案,可直接用

各位志同道合的朋友大家好,我是一个一直在一线互联网踩坑十余年的编码爱好者,现在将我们的各种经验以及架构实战分享出来,如果大家喜欢,就关注我,一起将技术学深学透,我会每一篇分享结束都会预告下一专题最近经...

官方玩梗:Python 3.14(πthon)稳定版发布,正式支持自由线程

IT之家10月7日消息,当地时间10月7日,Python软件基金会宣布Python3.14.0正式发布,也就是用户期待已久的圆周率(约3.14)版本,再加上谐音梗可戏称为π...

第一篇:如何使用 uv 创建 Python 虚拟环境

想象一下,你有一个使用Python3.10的后端应用程序,系统全局安装了a2.1、b2.2和c2.3这些包。一切运行正常,直到你开始一个新项目,它也使用Python3.10,但需要...

我用 Python 写了个自动整理下载目录的工具

经常用电脑的一定会遇到这种情况:每天我们都在从浏览器、微信、钉钉里下各种文件,什么截图、合同、安装包、临时文档,全都堆在下载文件夹里。起初还想着“过两天再整理”,结果一放就是好几年。结果某天想找一个发...