I moduli HTML personalizzati possono essere creati per la sicurezza dell'utente durante la fase di autorizzazione in OAuth.
La configurazione del provider OAuth nativo include l'autorizzazione utente quando si utilizzano i tipi di concessione password Implicit, Codice di accesso o Proprietario risorsa. È possibile selezionare la modalità di autorizzazione degli utenti dell'applicazione e una delle scelte è Modulo HTML personalizzato. Per ulteriori informazioni, consultare Configurazione di un provider OAuth nativo quando si utilizza API Manager o Configurazione di un provider OAuth nativo quando si utilizza Cloud Manager. Questo argomento descrive come creare il modulo HTML personalizzato per l'autorizzazione.
Informazioni su questa attività
Nelle definizioni OAuth a tre livelli (flusso implicito, flusso della password del proprietario della risorsa e flusso del codice di accesso (autorizzazione)), l'utente concede il permesso a un'applicazione di accedere ai suoi dati attraverso un modulo di autorizzazione. È possibile presentare un modulo personalizzato o un modulo predefinito. Il modulo personalizzato deve soddisfare determinati requisiti.
Importante: i campi utilizzati da IBM® API Connect per inserire informazioni nel modulo hanno nomi di campi sensibili al maiuscolo / minuscolo.
Per creare un modulo di autorizzazione personalizzato per il provider OAuth nativo, completare la seguente procedura:
- Creare un documento XHTML con formato corretto. Questo viene analizzato da API Connect per iniettare campi nascosti.
- Per il modulo XHTML, impostare il metodo come POST, il tipo di codifica come application/x-www-form-urlencodede l'azione come authorize. Aggiungere eventuali altri parametri richiesti.
Ad esempio:
<form method="POST" enctype="application/x-www-form-urlencoded" action="authorize">
- Aggiungere la linea <AZ-INJECT-HIDDEN-INPUT-FIELDS/>. Questa riga è un segnaposto che API Connect sostituisce con i campi di input necessari al completamento del processo OAuth.
- Creare due pulsanti con il codice seguente in modo che l'utente possa concedere o negare l'autorizzazione. Modificare il testo in base alle proprie preferenze.
<button class="cancel" type="submit" name="approve" value="false">No Thanks</button>
<button class="submit" type="submit" name="approve" value="true">Allow Access</button>
- Facoltativo: visualizzare un messaggio di errore quando un errore nel modulo personalizzato ne impedisce la corretta visualizzazione all'utente. Utilizzare la tag <AZ-INTERNAL-CUSTOM-FORM-ERROR/>; il testo del messaggio viene generato automaticamente. È necessario rilevare tali errori durante i test per evitare che venga visualizzato questo messaggio di errore all'utente.
- Opzionale: è possibile aggiungere al modulo elementi HTML che caricano caratteristiche da fonti esterne, come immagini o JavaScript.
Ad esempio, <script src="http://www.example.com/example.js"
/>
- Inserite spaziature ed elementi aggiuntivi secondo le vostre esigenze. Completando i passaggi da 1 a 6 si ottiene un modulo simile a quello dell'esempio seguente:
<html lang="en" xml:lang="en">
<head><title>Request for permission</title></head>
<body class="customconsent">
<div>
<div>
<form method="post" enctype="application/x-www-form-urlencoded" action="authorize">
<AZ-INJECT-HIDDEN-INPUT-FIELDS/>
<p>Greeting..</p><DISPLAY-RESOURCE-OWNER/>
<p>This app </p><OAUTH-APPLICATION-NAME/><p> would like to access your data.</p>
<div>
<button class="cancel" type="submit" name="approve" value="false">No Thanks</button>
<button class="submit" type="submit" name="approve" value="true">Allow Access</button>
</div>
</form>
</div>
<AZ-INTERNAL-CUSTOM-FORM-ERROR/>
</div>
</body>
</html>
- Rendi disponibile il tuo modulo su un sito web di tua scelta ( URL ).
- Se non lo si è ancora fatto, configurare il provider OAuth nativo in modo che utilizzi un modulo HTML personalizzato per l'autorizzazione alla sicurezza degli utenti. Fornisci l' URL come punto finale in cui è disponibile il tuo modulo. Per ulteriori informazioni, consultare Configurazione di un provider OAuth nativo quando si utilizza API Manager o Configurazione di un provider OAuth nativo quando si utilizza Cloud Manager.