Ich habe einen Azure -Ad -Dämon -Antrag, der versucht, Aufgaben von einem gewünschten Planer zu ergreifen. Ich habe die erforderlichen Antragsberechtigungen zur Verfügung gestellt, um den Plan zu erfassen. Ich erhalte immer wieder einen Fehler "Das angeforderte Element wird nicht gefunden", obwohl ich die richtige Planer -ID verwendet habe, um die Daten zu erfassen. Gibt es eine Erlaubnis, die mir fehlt oder ein Problem mit meinem Code? Ich verwende normalerweise den VS -Code, um die Python -Datei mit dem Befehl python application.py parameters.json .import sys # For simplicity, we'll read config file from 1st CLI param sys.argv[1]
import json
import logging
import requests
import msal
# Optional logging
# logging.basicConfig(level=logging.DEBUG)
config = json.load(open(sys.argv[1]))
# Create a preferably long-lived app instance which maintains a token cache.
app = msal.ConfidentialClientApplication(
config["client_id"], authority=config["authority"],
client_credential=config["secret"],
# token_cache=... # Default cache is in memory only.
# You can learn how to use SerializableTokenCache from
# https://msal-python.rtfd.io/en/latest/# ... TokenCache
)
# The pattern to acquire a token looks like this.
result = None
# Firstly, looks up a token from cache
# Since we are looking for token for the current app, NOT for an end user,
# notice we give account parameter as None.
result = app.acquire_token_silent(config["scope"], account=None)
if not result:
logging.info("No suitable token exists in cache. Let's get a new one from AAD.")
result = app.acquire_token_for_client(scopes=config["scope"])
if "access_token" in result:
# Calling graph using the access token
graph_data = requests.get( # Use token to call downstream service
config["endpoint"],
headers={'Authorization': 'Bearer ' + result['access_token']}, ).json()
print("Graph API call result: ")
print(json.dumps(graph_data, indent=2))
else:
print(result.get("error"))
print(result.get("error_description"))
print(result.get("correlation_id")) # You may need this when reporting a bug
< /code>
Unten finden Sie die Parameter. JSON Ich verwende mit den verschiedenen IDs, mit denen die Anwendung < /p>
ausgeführt wird{
"authority": "https://login.microsoftonline.com/tenant_id",
"client_id": "client_id",
"scope": [ "https://graph.microsoft.com/.default" ],
"secret": "Secret_Client",
"endpoint": "https://graph.microsoft.com/v1.0/planner/plans/plan_id"
}
< /code>
Die ID -Namen sind nur Platzhalter. Stellen Sie sich vor, sie sind dort. Hilfe wäre geschätzt.>
"Der angeforderte Element ist nicht gefunden"; Azure AD -Anwendung mit Python mit Planer ⇐ Python
-
- Similar Topics
- Replies
- Views
- Last post