Microsoft Graph convenience library
Project description
wmgraph Microsoft Graph convenience library
This library aids with the Microsoft graph API for Office 365 business. It uses certificates for the OAuth 2.0 client credentials flow to authenticate a daemon application registered in Azure AD. This makes it suitable to be used in console applications.
Configuration
as described in A simple Python daemon console application calling Microsoft Graph with its own identity, client certificate variation
- Register an application in Azure AD
- Prepare a config.json and certificates for a MS Application
- Upload the server.crt to AAD
see Client Credentials for AzureAD msal
Create Certificates:
#!/bin/sh
openssl genrsa -out server.pem 2048
openssl req -new -key server.pem -out server.csr
openssl x509 -req -days 365 -in server.csr -signkey server.pem -out server.crt
openssl x509 -noout -fingerprint -sha1 -inform pem -in server.crt |sed -e 's=:==g' > server.fpr
config.json:
{
"authority": "https://login.microsoftonline.com/TENANT_ID",
"client_id": "CLIENT_ID",
"scope": [ "https://graph.microsoft.com/.default" ],
"thumbprint": "SRERVER.CRT.FINGERPRINT",
"private_key_file": "PATH_TO_CERTS(can be relative)/server.pem",
"endpoint": "https://graph.microsoft.com/v1.0"
}
Usage
import
from wmgraph.api import MgraphApi
from wmgraph.api.exceptions import MgraphApiError
connect
api = MgraphApi(params='./config.json')
use
userdata = api.get_user(args.user_id)
or
for user in api.list_users():
print(user)`
Development requirements
twine wheel
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
wmgraph-0.7.1.tar.gz
(9.6 kB
view hashes)
Built Distribution
wmgraph-0.7.1-py3-none-any.whl
(12.9 kB
view hashes)