Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >使用windows身份验证在python中访问sharepoint站点

使用windows身份验证在python中访问sharepoint站点
EN

Stack Overflow用户
提问于 2014-09-10 11:46:31
回答 3查看 21.6K关注 0票数 10

我正在尝试使用使用windows身份验证的sharepoint站点。我可以使用requests模块访问该站点,但它要求我显式地声明我的windows密码。

代码语言:javascript
运行
AI代码解释
复制
import requests
from requests_ntlm import HttpNtlmAuth

SITE = "https://sharepointsite.com/"
PASSWORD = "pw"
USERNAME = "domain\\user"

response = requests.get(SITE, auth=HttpNtlmAuth(USERNAME,PASSWORD))
print response.status_code

有没有办法让Python通过windows身份验证访问站点,这样我就不需要提供密码了?这似乎可以通过requests_nltm实现,但我不知道如何实现。

EN

回答 3

Stack Overflow用户

发布于 2014-09-10 13:00:32

如果你不想显式声明你的windows密码,你可以使用getpass模块:

代码语言:javascript
运行
AI代码解释
复制
import requests
from requests_ntlm import HttpNtlmAuth
import getpass

SITE = "https://sharepointsite.com/"
USERNAME = "domain\\user"

response = requests.get(SITE, auth=HttpNtlmAuth(USERNAME, getpass.getpass()))
print response.status_code

这样,您就不必以纯文本形式存储密码。

查看requests_ntlmcode,如果不向HttpNtlmAuth提供您的密码或密码的哈希,就无法使用它

票数 10
EN

Stack Overflow用户

发布于 2020-10-16 10:42:09

接受的答案仍然使用存储的密码。通过Windows SSPI界面使用集成身份验证的选项如下:

代码语言:javascript
运行
AI代码解释
复制
import requests
from requests_negotiate_sspi import HttpNegotiateAuth

cert = 'path\to\certificate.cer'
 
response = requests.get(
    r'http://mysharepoint.com/_api',
    auth=HttpNegotiateAuth(),
    verify=cert)

print(response.status_code)

有关详细信息,请参阅here

票数 1
EN

Stack Overflow用户

发布于 2016-12-02 14:21:24

您是否考虑过将用户名和密码作为环境变量存储在运行脚本的计算机上?这将使您不必将敏感信息存储在脚本本身中。然后,只有机器的管理员才能访问/修改敏感信息。

通过cmd prompt设置所需的变量(以下语法用于Windows机):

代码语言:javascript
运行
AI代码解释
复制
SET username=domain\\user
SET password=your_password

为了确保您正确地设置了变量,在cmd prompt中键入SET并查看是否列出了变量。

正确设置后,使用python的os模块访问变量并根据需要使用:

代码语言:javascript
运行
AI代码解释
复制
import os
import requests
from requests_ntlm import HttpNtlmAuth

username = os.environ.get('username')
password = os.environ.get('password')

SITE = "https://sharepointsite.com/"

response = requests.get(SITE, auth=HttpNtlmAuth(username, password))

重要注意事项:

  1. 如果关闭cmd prompt窗口,您刚才设置的环境变量将被擦除,并且脚本将抛出“我找不到环境变量”错误。要避免这种情况,请在脚本运行时始终保持cmd窗口打开,或者永久设置环境变量(用于Windows计算机的说明here。注意:这些说明指的是更改PATH环境变量,但是您将了解如何创建/修改自己的variables).
  2. Be,小心不要覆盖现有的环境变量。首先,通过列出所有变量来仔细检查名称是否可用(在cmd prompt).
  3. Environment变量中键入SET变量存储为string
票数 -3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25764595

复制
相关文章
监控目录或文件变化
# watchdog介绍 Watchdog的中文的“看门狗”,有保护的意思。最早引入Watchdog是在单片机系统中,由于单片机的工作环境容易受到外界磁场的干扰,导致程序“跑飞”,造成整个系统无法正常工作,因此,引入了一个“看门狗”,对单片机的运行状态进行实时监测,针对运行故障做一些保护处理,譬如让系统重启。这种Watchdog属于硬件层面,必须有硬件电路的支持。 Linux也引入了Watchdog,在Linux内核下,当Watchdog启动后,便设定了一个定时器,如果在超时时间内没有对/dev/Watc
章工运维
2023/05/19
6920
将BCS的bucket文件保存到本地[PHP]
作者:matrix 被围观: 2,184 次 发布时间:2015-06-03 分类:兼容并蓄 零零星星 | 8 条评论 »
HHTjim 部落格
2022/09/26
2.1K0
将图片保存到XML文件的方法
一.保存图片到XML文件 /// <summary> /// 保存图片到XML文件 /// </summary> private void UploadImageToXml() { ///得到用户要上传的文件名 string strFilePathName = loFile.PostedFile.FileName; string strFileName = Path.GetFileName(strFilePathName); int FileLength = loFile.Post
跟着阿笨一起玩NET
2018/09/18
2.4K0
使用Python将数据保存到Excel文件
接下来,要知道的另一件重要事情是如何使用Python将数据保存回Excel文件。为什么要再回到Excel?嗯,因为我们大多数人只熟悉Excel,所以我们必须说他们的语言。但是,这并不妨碍我们使用另一种语言来简化我们的工作
fanjy
2021/11/10
19.3K0
使用Python将数据保存到Excel文件
linux 查找目录或文件详解
查找目录:find /(查找范围) -name '查找关键字' -type d 查找文件:find /(查找范围) -name 查找关键字 -print
流柯
2018/08/30
5.8K0
rm命令 – 移除文件或目录
rm是常用的命令,该命令的功能为删除一个目录中的一个或多个文件或目录,它也可以将某个目录及其下的所有文件及子目录均删除。对于链接文件,只是删除了链接,原有文件均保持不变。 rm也是一个危险的命令,使用的时候要特别当心,尤其对于新手,否则整个系统就会毁在这个命令(比如在/(根目录)下执行rm * -rf)。所以,我们在执行rm之前最好先确认一下在哪个目录,到底要删除什么东西,操作时保持高度清醒的头脑。
契合
2021/08/10
9160
cp命令 – 复制文件或目录
cp命令可以将多个文件复制到一个具体的文件名或一个已经存在的目录下,也可以同时复制多个文件到一个指定的目录中。
契合
2021/08/10
4.1K0
python新建文件或目录
python新建文件或目录: import os 新建文件: os.mknod("/home/aa.txt") 新建目录: os.mkdir("/home/aa") 新建多级目录: os.makedirs("/home/bb/cc")
py3study
2020/01/07
4.3K0
使用python将csv文件快速转存到mysql
因为一些工作需要,我们经常会做一些数据持久化的事情,例如将临时数据存到文件里,又或者是存到数据库里。
我被狗咬了
2019/09/23
6.3K0
使用python将csv文件快速转存到mysql
Linux cp 复制文件或目录命令
使用指令 cp 将当前目录 test/ 下的所有文件复制到新目录 newtest 下,输入如下命令:
用户4988376
2021/07/21
10.5K0
Linux 删除文件或目录 rm 命令
1. rm [OPTION]… FILE… ---- remove files or directories - 删除文件或目录 2. 参数选项 ---- -f(—force) 强制删除,不提示确认删除信息、不显示目标不存在的信息 -r(—recursive)递归删除,递归删除目录及其内容 -v(—verbose)显示删除的内容 3. 常见用法 ---- a. 删除指定的目录 rm -rf 目录名 b. 删除指定目录下的所有内容 rm -rf 目录名/* c. 删除当前目录下的所有内容 rm -rf
很酷的站长
2023/02/18
7.2K0
Linux 删除文件或目录 rm 命令
驱动开发:内核遍历文件或目录
在笔者前一篇文章《驱动开发:内核文件读写系列函数》简单的介绍了内核中如何对文件进行基本的读写操作,本章我们将实现内核下遍历文件或目录这一功能,该功能的实现需要依赖于ZwQueryDirectoryFile这个内核API函数来实现,该函数可返回给定文件句柄指定的目录中文件的各种信息,此类信息会保存在PFILE_BOTH_DIR_INFORMATION结构下,通过遍历该目录即可获取到文件的详细参数,如下将具体分析并实现遍历目录功能。
王瑞MVP
2023/06/12
5550
驱动开发:内核遍历文件或目录
linux移除文件或目录rm命令
rm是常用的命令,该命令的功能为删除一个目录中的一个或多个文件或目录,它也可以将某个目录及其下的所有文件及子目录均删除。对于链接文件,只是删除了链接,原有文件均保持不变。 rm也是一个危险的命令,使用的时候要特别当心,尤其对于新手,否则整个系统就会毁在这个命令(比如在/(根目录)下执行rm * -rf)。所以,我们在执行rm之前最好先确认一下在哪个目录,到底要删除什么东西,操作时保持高度清醒的头脑。
用户1685462
2021/07/24
2.5K0
bad interpreter 没有那个文件或目录
今天在linux上运行一个python脚本,总是报错bad interpreter,开始我以为是解释器的路径问题,可是whereis python告诉我路径没有错!
老高的技术博客
2022/12/27
1.3K0
驱动开发:内核遍历文件或目录
在笔者前一篇文章《驱动开发:内核文件读写系列函数》简单的介绍了内核中如何对文件进行基本的读写操作,本章我们将实现内核下遍历文件或目录这一功能,该功能的实现需要依赖于ZwQueryDirectoryFile这个内核API函数来实现,该函数可返回给定文件句柄指定的目录中文件的各种信息,此类信息会保存在PFILE_BOTH_DIR_INFORMATION结构下,通过遍历该目录即可获取到文件的详细参数,如下将具体分析并实现遍历目录功能。
王瑞MVP
2023/10/11
2570
驱动开发:内核遍历文件或目录
Linux cp 复制文件或目录命令
使用指令 cp 将当前目录 test/ 下的所有文件复制到新目录 newtest 下,输入如下命令:
用户4988085
2021/07/20
11.8K0
Android将应用程序的崩溃信息如何保存到本地文件,并上传至服务器
导语:最近实在是太忙了,没有怎么更新公众号,也没有怎么认真去写一些内容,在这里先给关注我的朋友说一声抱歉,可能在接下来的一段时间,还是很忙,但是我会争取抽空多分享一下技术文章,给大家看,共同进步,也希望有能力的人可以一起出来分享。 我们在做应用开发的时候,需要程序的崩溃信息,来进行bug的修复和版本的更新,每一个应用程序都会有bug,所以都需要在后台纪录这些bug日志,然后上传到服务器,让程序员看,并进行修复。现在也有很多第三方的jar包能实现这种功能,比如友盟统计等,但是终究不如自己写的方便。好了,废话不
非著名程序员
2018/02/02
2K0
点击加载更多

相似问题

将文件保存到目录

10

AWS Lambda,将S3文件保存到/tmp目录

20

我如何使用Pyspark将doc/docx/docm文件保存到目录或S3桶中?

18

将文件保存到s3

21

将文件保存到应用程序目录中

20
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文