Registrieren Sie Benutzer mit Google Admin SDK (Python)

Einführung

Ich habe Benutzer mit GSuite (GoogleApps) verwaltet und musste eine große Datenmenge eingeben. Ich habe im Tutorial oft Artikel wie das Lesen von Daten gesehen, aber es gab nicht viele Artikel zur Registrierung. Deshalb werde ich einen Artikel schreiben, wenn es hilft.

Was Sie tun müssen, bevor Sie Code schreiben

Projektregistrierung

Erstellen Sie ein Projekt mit einem geeigneten Namen in Developer Console. プロジェクトの登録.png

Kehren Sie zum Dashboard zurück, wählen Sie das von Ihnen erstellte Projekt aus und fügen Sie die API hinzu. APIを有効にする.png

Bitte aktivieren Sie "Admin SDK" und erstellen Sie einen Authentifizierungsschlüssel. --Erstellen Sie Anmeldeinformationen mit OAuth

Ein Authentifizierungsschlüssel wird erstellt und in der Liste angezeigt. Laden Sie ihn herunter und speichern Sie ihn an einem geeigneten Ort. (Im Codebeispiel: Speichern Sie es als "client_secret_test.jso.json" unter [Ihrem Ausgangsverzeichnis] /.test_secrets/)

Fast bereit zu arbeiten.

Tatsächlicher Code

create.rb


# -*- coding: utf-8 -*-

import os
import httplib2
from apiclient import discovery
from oauth2client import client
from oauth2client import tools
from oauth2client.file import Storage

def main():
	try:
		import argparse
		parser = argparse.ArgumentParser(parents=[tools.argparser])
		flags = parser.parse_args()
	except ImportError:
		flags = None

	#Verzeichnis zum Speichern von Anmeldeinformationen ".Einstellung "Credits". Erstellen, wenn kein Verzeichnis vorhanden ist
	credential_dir = os.path.join(os.path.expanduser('~'), '.test_credentials')
	if not os.path.exists(credential_dir):
		os.makedirs(credential_dir)

	#Legen Sie den Pfad der Authentifizierungsdatei fest und lesen Sie ihn
	credential_path = os.path.join(credential_dir, 'admin-directory_v1_test.json')
	store = Storage(credential_path)
	credentials = store.get()

	#Erstellen, wenn keine Authentifizierungsdatei vorhanden ist
	if not credentials or credentials.invalid:

		#Stellen Sie den zu verwendenden Funktionsbereich ein
		scopes = [
			'https://www.googleapis.com/auth/admin.directory.user',
		]

		#Einstellung des Authentifizierungsschlüssels
		secret_dir = os.path.join(os.path.expanduser('~'), '.test_secrets')
		if not os.path.exists(secret_dir):
			os.makedirs(secret_dir)

		#Generieren Sie eine Instanz einer Klasse, die die Authentifizierungsverarbeitung aus dem Authentifizierungsschlüssel ausführt
		flow = client.flow_from_clientsecrets(
			os.path.join(secret_dir, 'client_secret_test.json'), scopes)

		#Anwendungsname
		flow.user_agent = 'User register Test Tool'

		if flags:
				credentials = tools.run_flow(flow, store, flags)
		else: # Python 2.6 Kompatibilitätsverarbeitung
			credentials = tools.run(flow, store)
		print('Ich habe das Zertifikat gespeichert:' + credential_path)

	#Authentifizieren
	http = credentials.authorize(httplib2.Http())
	app_admin_service = discovery.build('admin', 'directory_v1', http=http)

	#Erstellen Sie zu erstellende Benutzerinformationen
	register_data = {
		'primaryEmail':'[email protected]',
		'name':{
			'givenName':'Taro',
			'familyName':'Yamada',
		},
		'suspended':False, #Setzen Sie das Konto nicht gesperrt
		'password':'p-a-s-s-w-o-r-d',
	}

	#Ausführung der Registrierung
	results = app_admin_service.users().insert(body=register_data).execute()

	if(int(results['id']) > 0):
		print("Erstellen Sie ein Google-Konto!")
	else:
		print("Google-Konto konnte nicht erstellt werden")


if __name__ == '__main__':
	main()

Wenn Sie das Programm ausführen, wird der Browser gestartet und Sie werden um Erlaubnis gebeten. Klicken Sie auf OK, um es auszuführen. 許可リスエスト.png

Referenz

G Suite Admin SDK Directory API

Recommended Posts

Registrieren Sie Benutzer mit Google Admin SDK (Python)
Lernen Sie Python mit Google Colaboratory
Greifen Sie mit Python auf Google Drive zu
Versuchen Sie, Python mit Google Cloud-Funktionen zu verwenden
Arbeiten mit OpenStack mit dem Python SDK
[GCP] Betreiben Sie Google Cloud Storage mit Python
Berühren Sie einen virtuellen Roboter mit Peppers Python SDK
[Fortsetzung] Versuchen Sie den Zugriff auf das SPS-Register mit Python
Laden Sie Bilder mit Python auf Google Drive hoch
FizzBuzz in Python3
CSV-Ausgabe der Google-Suche mit [Python]! 【Einfach】
Scraping mit Python
Spielen Sie mit Google Spread Sheet mit Python (OAuth)
Scraping mit Python
Python mit Go
Versuchen Sie, Google Chrome mit Python und Selenium auszuführen
Twilio mit Python
In Python integrieren
Spielen Sie mit 2016-Python
AES256 mit Python
Getestet mit Python
Python beginnt mit ()
mit Syntax (Python)
Bingo mit Python
Zundokokiyoshi mit Python
Laden Sie Dateien mit Lambda (Python) auf Google Drive hoch.
[Python] Fehlerbehebung vor dem Zugriff auf Google Spreadsheet mit gspread
Excel mit Python
Mikrocomputer mit Python
Mit Python besetzen
Verschiedene Memoranden bei Verwendung von SDK der LINE Messaging API mit Python (2.7.9) + Google App Engine
Flottenbereitstellung mit AWS IoT SDK für Python v2
Einfache Möglichkeit, mit Google Colab mit Python zu kratzen
Registrieren Sie Tickets mit der Redmine-API mithilfe von Python-Anforderungen
Erste Schritte mit Google App Engine für Python und PHP
Serielle Kommunikation mit Python
Authentifizieren Sie Google mit Django
Zip, entpacken mit Python
Django 1.11 wurde mit Python3.6 gestartet
Python mit Eclipse + PyDev.
Socket-Kommunikation mit Python
Datenanalyse mit Python 2
Scraping in Python (Vorbereitung)
Versuchen Sie es mit Python.
Python lernen mit ChemTHEATER 03
Sequentielle Suche mit Python
"Objektorientiert" mit Python gelernt
Umgang mit Yaml mit Python
Löse AtCoder 167 mit Python
Serielle Kommunikation mit Python
[Python] Verwenden Sie JSON mit Python
Python lernen mit ChemTHEATER 05-1
Lerne Python mit ChemTHEATER
Führen Sie prepDE.py mit python3 aus
1.1 Erste Schritte mit Python
Tweets mit Python sammeln
Binarisierung mit OpenCV / Python
3. 3. KI-Programmierung mit Python
Kernel-Methode mit Python
Scraping mit Python + PhantomJS