Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/66.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python:关于在Python中隐藏mysql数据库的身份验证数据的工作流_Python_Mysql - Fatal编程技术网

Python:关于在Python中隐藏mysql数据库的身份验证数据的工作流

Python:关于在Python中隐藏mysql数据库的身份验证数据的工作流,python,mysql,Python,Mysql,我有一个关于Python和MySQL的问题。我有PHP的背景,我想知道Python中的工作流会是怎样的。我在网上找不到任何好的答案,希望有人能帮助我理解这件事。所以,让我快速解释一下我被什么绊倒了: 在PHP中,我结合MySQL做了很多小事情,这意味着从数据库加载数据并写入数据库。只要存储php文件的服务器设置正确,就可以进行保存。与数据库的连接(包括用户名、服务器名、密码和数据库名)保存在php文件中。由于php文件存储在服务器上,并且源代码不会显示给用户本身,因此用户无法看到连接到数据库的身

我有一个关于Python和MySQL的问题。我有PHP的背景,我想知道Python中的工作流会是怎样的。我在网上找不到任何好的答案,希望有人能帮助我理解这件事。所以,让我快速解释一下我被什么绊倒了:

在PHP中,我结合MySQL做了很多小事情,这意味着从数据库加载数据并写入数据库。只要存储php文件的服务器设置正确,就可以进行保存。与数据库的连接(包括用户名、服务器名、密码和数据库名)保存在php文件中。由于php文件存储在服务器上,并且源代码不会显示给用户本身,因此用户无法看到连接到数据库的身份验证数据

现在,我想知道如何以一种安全的方式将整个概念转移到Python中,以便用户看不到源文本中的身份验证数据。 我计划编写一个Python程序,用户必须在其中进行身份验证。假设我在Web服务器上创建了一个MySQL数据库,用户可以在Python程序中登录。一旦用户单击登录按钮,就完成了与web数据库的连接。这意味着在我的源代码中,我需要写下必要的数据,比如用户名、密码、数据库名和特定数据库的服务器名。这里是我的问题:这意味着每个人都可以看到认证数据,这将是非常不安全的,不是吗?即使用户只有一个.pyc文件,他也可以重新编译它并查看标准的.py文件,在该文件中他可以看到所有非常敏感的数据


因此,我想知道如何安全地向稍后将使用我的Python程序的用户隐藏身份验证数据。

作为一名很久以前在php中工作的Python工程师,我想我知道你在追求什么

首先,HTML代码将不包含任何数据库凭据,除非将它们放入HTML视图中。构造进入HTML视图的内容的一种简单方法是使用类似的框架。它处理web应用程序的MVC并连接数据库

如果希望数据库凭据非常安全,可以让web应用程序在启动时请求它们,这样就不会将它们写在文件中。使用keypass或类似的密码存储系统确保其安全。 通过这种方式,它们也不会签入任何版本控制系统,因为在该系统中,数据库密码泄漏最常见


如果您是python网络应用程序编程的新手,我建议您遵循一条it应该可以帮助您走上正轨的路线。

我认为我没有正确理解您的意思,但PHP和python在如何使用数据库方面没有区别。这两种语言都是解释语言,代码存储在简单的文本文件中,任何人都可以查看这些文件。显然,你不应该硬编码密码或用户名之类的东西。你需要实现服务器/客户端通信。在PHP中,正如您已经编写的那样,您有一个特殊情况,即客户机可以同时作为服务器。在几乎所有其他情况下,您都实现了一个隐藏数据库连接并处理用户交互的服务器。感谢您的快速回答。也许我理解错了,但是在Python文件中,我需要连接到mysql数据库,以便从中获取一些数据。在php中,一切都很好,因为用户永远看不到实际的php文件本身,他只看到由php文件形成的html文件。因此,用户永远无法看到敏感的身份验证数据。在Python中,他可以,因为它在Python源代码中。或者python源代码是否需要将用户名和passowrd发送到web服务器,其他一些php文件将检查输入的值?只要我们讨论web应用程序,python也是如此。HTML将被形成,并将准确地包含您将要放在那里的内容。用户只看到前端(html页面),而不是python代码,它将处理来自用户/连接数据库etcUnderstand的请求。但我试着做一些不同的事情。Pracitaly说:我为nuke开发了一些python脚本,这是一个合成软件。用户下载脚本并安装它。在nuke中,他可以运行脚本。例如,当我点击一个按钮时,会弹出一个窗口,显示我服务器上mysql数据库中的数据。总而言之:python脚本在艺术家的计算机上;在该python脚本中,完成了与Web服务器上的mysql数据库的连接;+出于安全原因,用户自己可能无法查看身份验证数据来访问web数据库。非常感谢,firelynx。我会看看Django:-)我还建议你们熟悉这本书,这是练习50:特别是你们的第一个网站