【发布时间】:2021-09-30 20:13:51
【问题描述】:
我想制作一个 API 来访问图形 API,但没有登录页面和用户身份验证。
token_url = "https://login.microsoftonline.com/<tenantID>/oauth2/v2.0/token"
token_data = {
'grant_type': 'client_credentials',
'client_id': app_id,
'client_secret': client_secret,
'scope':'https://graph.microsoft.com/.default',
}
token_r = requests.post(token_url, data=token_data)
token = token_r.json().get('access_token')
print(token)
users_url = **"https://graph.microsoft.com/v1.0/drive/items/<FileID>/workbook/worksheets('Sheet1')/range(address='a1:v500')/UsedRange(valuesOnly=true)?$format=atom,$select=values"**
headers = {
'Authorization': 'Bearer {}'.format(token)
}
authHeader = {
'Content-Type':'application/json',
'Authorization':"Bearer " + token,
'ExpiresOn':str(token_r.json().get('expires_in'))
}
k = requests.get(users_url, headers=authHeader)
print(k.text)
现在它返回 {'error': {'code': 'AccessDenied', 'message': '无论是 scp 还是角色声明都需要存在于令牌中。',... }}强>
我知道,我需要从 Azure 提供授予管理员许可,但我们无权访问管理员门户。那么有没有其他方法可以在没有登录或管理员同意的情况下读取 XLSX 文件?
【问题讨论】:
标签: python flask azure-ad-graph-api