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 scegliere come autorizzare gli utenti dell'applicazione; una delle opzioni è 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à
Durante le definizioni OAuth a tre fasi (flusso implicito, flusso di password del proprietario della risorsa e flusso di codice di accesso (autorizzazione), all'utente viene presentato un modulo attraverso il quale concede l'autorizzazione a un'applicazione per accedere ai propri dati tramite l'API per loro conto. È 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 verrà analizzato e trasformato da API Connect per inserire 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 sostituirà con i campi di input necessari per il 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 il test per evitare che questo messaggio di errore venga visualizzato all'utente finale.
- Facoltativo: è possibile aggiungere al modulo elementi HTML che caricheranno funzioni da origini esterne, come le immagini o JavaScript.
Ad esempio, <script src="http://www.example.com/example.js"
/>
- Inserire la spaziatura e gli elementi aggiuntivi richiesti. Completando i passi 1 fino a 6 si ottiene un modulo simile al 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 è stato ancora fatto, configurare il provider OAuth nativo per utilizzare un modulo HTML personalizzato per l'autorizzazione per la sicurezza utente. 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.