Esempio di Python Oauth2

Esempio di Python Oauth2

L'OAuth2 è un protocollo utilizzato nella lingua Python per fornire la funzionalità della comunicazione client-server. Viene utilizzato per scambiare alcuni dati tra client e server attraverso l'autorizzazione. L'utente si autorizzerebbe prima dal server e ne trarrebbe il token. Il server fornirà quindi i dati dell'utente ad esso. Quindi, in questa guida, ti forniremo una breve spiegazione di Python Oauth2 nell'Ubuntu 20.04 Sistema.

Il pacchetto "PIP" è un prerequisito per il pacchetto Python. Senza di essa, Python non sarà installato sul tuo sistema Linux. Prima di installare Python versione 3 sul tuo sistema, assicurati di avere il pacchetto "PIP" già configurato. In caso contrario, usa il comando seguente sulla shell per farlo.

$ sudo apt Installa python3 -pip

La versione 3 è l'ultima; Ecco perché si consiglia. Ora, per installare l'ultima versione di Python, prova il comando mostrato nell'immagine sottostante. Tocca il tasto "Invio" dopo aver scritto la riga di comando. Potrebbe chiederti di inserire la password dell'account root. Scrivi la tua password di root e premi "Invio". Inizierà a installare Python3 e lo completerà entro pochi secondi.

$ sudo apt Installa python3

Ora, abbiamo bisogno anche di alcuni editor di codice. Quindi, abbiamo usato l'editore "nano". Se non ne hai uno, prova a ottenerlo con il comando di seguito. Puoi anche utilizzare l'editor "VIM".

$ sudo apt install nano

Dopo aver fatto con i prerequisiti, devi aver installato anche il pacchetto Python "OAuth2" nel tuo sistema. Senza l'installazione del pacchetto per l'API di autorizzazione, non possiamo far funzionare il nostro codice. Quindi installa l'API OAuth2 Python con l'aiuto di un repository "PIP". L'istruzione per la sua installazione è mostrata di seguito. Scaricherà innanzitutto il file zip oauth2 e quindi lo estraggerà per installarlo. Entro 1-2 minuti, verrà installato completamente e pronto per essere utilizzato.

$ pip Installa Python-oauth2

Esempio 0auth2:

Crea un nuovo file chiamato "OAuth2.py ”con un'estensione Python in esso. Devi usare la query "Touch" nella shell come segue:

$ touch oauth2.Py

Dopo la creazione di un file Python, apriamolo con un editor installato. Abbiamo utilizzato qui l'editore GNU Nano. Puoi anche usarne altri. Il comando è il seguente:

$ nano oauth2.Py
$ python3 oauth2.Py

Poiché il file viene aperto correttamente, devi scrivere il codice mostrato di seguito così com'è. In primo luogo, è necessario importare il pacchetto di richieste, che è fondamentalmente dall'API OAuth2. Alcune variabili sono state definite come tipi di stringa. Queste variabili sono le credenziali del cliente da autorizzare.

Il primo è "client_id" che verrebbe dato al tuo client-server sull'applicazione Web che hai creato. Il "client_secret" è la chiave segreta che è stata fornita nel portale delle applicazioni. Quindi arriva una variabile "rediRect_url". Viene utilizzato per reindirizzarti verso la pagina web o l'URL quando sei stato autorizzato con successo. Qui l'URL Gmail è fornito come URL di reindirizzamento. "Authorize_url" è l'URL da cui il cliente si autorizzerà. La variabile "Access_token_url" contiene l'URL di scambiare il token di accesso con il codice di autorizzazione per il client. La riga successiva utilizza le "richieste" del modulo per ottenere o chiedere il codice di autorizzazione tramite il metodo "Get".

Il metodo prende tre argomenti qui. Dopo l'accesso riuscito, l'utente acconsente alla domanda di verifica. Il server autorizzato ti reindirizzerà all'URL Web che hai fornito nella variabile "Redirect_url". Ti fornirà il codice di autenticazione all'interno dell'URL dell'URL della pagina di reindirizzamento.

richieste di importazione
Client_id = "894230029083500605"
Client_secret = "zbez83wzl_evoat81vkwex-epdpioma"
Redirect_url = "https: // gmail.com "
Authorize_url = "https: // discord.com/api/oauth2/autorizza "access_token_url =" https: // discord.com/api/oauth2/token "richieste.Ottenere('?risposta_type = code & client_id = & rediirect_url = '.Formato (Authorize_Url, client_id, redirect_url))
richieste.inviare(
Access_token_url,
data =
'Grant_Type': 'Authorization_Code',
'Codice': '1234567890',
'client_id': client_id,
'client_secret': client_secret, 'rediirect_url': rediirect_url
)
richieste.get ('https: // gmail.com,
headers = 'autorizzazione': 'bears your_access_token')
richieste.inviare(
Access_token_url,
data =
'Grant_Type': 'Refresh_Token',
'client_id': client_id,
'client_secret': client_secret,
'refresh_token': 'your_refresh_token')

Puoi copiare quel codice dall'URL. Abbiamo utilizzato la funzione di "post" dal pacchetto di richieste. In questa funzione, abbiamo fornito la variabile "Access_token_url" nel primo parametro, mentre l'altro parametro "dati" contiene le coppie di valore chiave del tipo di dizionario. All'interno di questo dizionario, abbiamo specificato il tipo di sovvenzione del cliente, i.e., codice di autorizzazione.

Il "codice" chiave è stato usato qui per ottenere il codice di autorizzazione, che hai ottenuto dall'URL. Incolla Access_Code come valore al "codice" chiave. Quindi abbiamo fornito le coppie di valore chiave di ID client, segreto client e il suo URL di reindirizzamento. La funzione è chiusa qui. Quindi, ora siete tutti pronti. Abbiamo usato un'altra funzione per utilizzare i dettagli di autorizzazione che abbiamo ottenuto. Devi fornire la schermata principale del tuo cliente, io.e., discordia. Se hai fornito l'accesso_code corretto nella funzione sopra, ti restituirà le informazioni relative all'utente. L'ultima funzione, "post" è stata utilizzata qui per aggiornare il token fino al tempo specificato.

Quindi, se hai ottenuto la pagina di autorizzazione in ritardo, puoi semplicemente aggiornarla o fare di nuovo lo stesso processo. Ti verrà fornito un codice. Devi menzionare il tipo di codice di codice che hai usato, io.e., refrow_token. Le variabili, l'ID client, il segreto client e il refresh_token saranno forniti nel suo dizionario. Quando esegui il file del codice, avrà successo.

$ nano oauth2.Py
$ python3 oauth2.Py

Diamo una GUI Guarda Oauth2 sulla discordia.com client-server. Devi prima accedere da esso e fare un nuovo server su di esso con qualsiasi nome. Successivamente, apri la pagina del suo sviluppatore e vai all'opzione "Applicazioni". Crea una nuova applicazione con qualsiasi nome, io.e., Puoi usare anche il tuo nome utente. Tocca l'area "bot" e tocca il pulsante "build-a-bot". Sul tuo schermo apparirebbe un dialogo. Devi solo nominare il tuo bot e crearlo. Puoi vedere che abbiamo creato un bot "aqsayasin" qui. Puoi vedere anche il bot "token".

Passa verso l'opzione "OAuth2". Vedrai l'output di seguito. Hai il tuo ID client, segreto client, qui. Devi usare questi due nel tuo codice. Puoi vedere la sezione dei reindirizzamenti. Puoi aggiungere qualsiasi URL di reindirizzamento qui a tua scelta. Incolla lo stesso nel tuo codice.

Ora tocca il testo evidenziato blu "Scopri di più su Oauth2" da esplorare dall'immagine sopra. O semplicemente toccare l'opzione di documentazione dalla barra laterale. Verrai navigato verso un'altra pagina, io.e., Documentazione. Vedrai gli URL elencati lì. Usali nel tuo codice dove richiesto.

Torna alla sezione dell'applicazione e scorri un po '. Vedrai la sezione di ammissioni di ambiti e bot qui. Seleziona qualsiasi ambito che desideri definire il controllo e assicurati di dare i diritti all'amministratore sul bot. Copia l'URL mostrato nella casella di testo tra ambiti e autorizzazione del bot e incollalo al browser.

Devi toccare il pulsante Authorize per essere autorizzato correttamente. Ti mostrerà il codice al reindirizzamento dell'URL di reindirizzamento. Usa quel codice nel tuo script.

Conclusione:

Questo articolo contiene una breve descrizione e illustrazione dell'API Python OAuth2 per la comunicazione client-server. Spiega il concetto con il processo di autorizzazione del codice Python e anche l'illustrazione dell'interfaccia GUI. Speriamo che questo articolo sia utile per i nostri utenti mentre si effettua la comunicazione cline-server e lo scambio di dati.