4.15.07.00 - Note di rilascio di Apigee Edge for Private Cloud

Stai visualizzando la documentazione di Apigee Edge.
Consulta la documentazione di Apigee X.
info

Martedì 8 settembre 2015 abbiamo rilasciato una versione principale di Apigee Edge for Private Cloud.

Dalla precedente release trimestrale di Edge for Private Cloud (4.15.04.00), si sono verificate le seguenti release, che sono incluse in questa release trimestrale:

A quali versioni di Edge puoi eseguire l'upgrade 4.15.07.00

A seconda della versione attuale di Edge, puoi:

  • Esegui l'upgrade diretto alla versione 4.15.07.00
  • Esegui l'upgrade in modo incrementale, ovvero devi eseguire l'upgrade dalla versione attuale a un'altra versione di Edge, quindi eseguire l'upgrade alla versione 4.15.07.00.

Per ulteriori informazioni, consulta A quali versioni di Edge for Private Cloud puoi eseguire l'upgrade alla versione 4.15.07.00.

Prima di eseguire l'upgrade dalla versione 4.15.01.x o da una versione precedente

Prima di eseguire l'upgrade, assicurati di aver eseguito l'upgrade di Cassandra SSTable su ogni nodo Cassandra:
  1. Controlla la versione di Cassandra SSTable:
    1. Cambia directory in /<install-root>/apigee4/data/cassandra/data.
    2. Esegui un comando di ricerca,
      > find . -name *-ic-*
      I risultati dovrebbero restituire un insieme di file .db se esegui Cassandra 1.2 SSTable.
    3. Esegui questo comando di ricerca:
      > find . -name *-hf-*
      I risultati devono essere vuoti, il che significa che non sono presenti file .db nel formato hf. Se non vedi file in formato hf, hai terminato e puoi eseguire l'upgrade alla versione 4.15.07.00.

      Il formato hf è per le tabelle SSTable di Cassandra 1.0. Se hai file *.db nel formato hf, devi eseguire l'upgrade di SSTable come descritto nel resto di questa procedura.
  2. Se trovi file *.db nel formato hf, esegui l'upgrade di SSTable eseguendo il seguente comando su ogni nodo Cassandra finché non avrai eseguito l'upgrade di tutti i nodi Cassandra:
    > /<install-root>/apigee4/share/apache-cassandra/bin/nodetool -h localhost upgradesstables -a
  3. Ripeti il passaggio 1 per verificare che tutti i file *.db siano nel formato ic per la versione 1.2 di Cassandra.
  4. Ripeti i passaggi da 1 a 3 su ogni nodo Cassandra nell'installazione di Edge.
  5. Esegui l'upgrade a Edge 4.15.07.00.
  6. Dopo l'upgrade alla versione 4.15.07.00, controlla i file *.db per assicurarti che siano stati tutti aggiornati alla sstable in stile C* 2.0:
    > cd /<install-root>/apigee4/data/cassandra/data
    > find . -name *-jb-*

    Questo comando dovrebbe restituire un insieme di file .db se esegui Cassandra 2.0.

Nuove funzionalità e miglioramenti

Di seguito sono riportate le nuove funzionalità e i miglioramenti di questa release.

Installazione e upgrade

Upgrade e disinstallazione selettivi dei componenti

Gli script apigee-upgrade.sh e apigee-uninstall.sh ora ti consentono di selezionare i componenti Edge da aggiornare o disinstallare. In precedenza, eseguiva l'upgrade o la disinstallazione di tutti i componenti sul nodo. (OPDK-1377, OPDK-1175)

Rollback dell'upgrade

Se apigee-upgrade.sh non riesce durante un upgrade, ora puoi utilizzare lo script apigee-rollback.sh per eseguire il rollback dell'upgrade. Dopo aver risolto eventuali problemi di upgrade, puoi riprovare. (OPDK-1275)

Opzioni dello script di installazione abbreviato

Gli script di installazione non accettano più la forma estesa delle opzioni, ad esempio --help. Ora accettano solo opzioni con una sola lettera, ad esempio -h. (OPDK-1356)

Installazione di SmartDocs

Quando installi SmartDocs con lo script setup-smartdocs.sh, ti viene chiesto di inserire l'organizzazione, l'ambiente e l'host virtuale, il che garantisce che SmartDocs venga installato nella posizione prevista. In precedenza, questi valori erano codificati nello script. (OPDK-1310)

Esecuzione di update-cass-pwd-in-config.sh senza prompt

Lo script update-cass-pwd-in-config.sh può essere eseguito senza prompt se imposti le variabili di ambiente ENABLE_CASS_AUTH, CASS_USERNAME e CASS_PASSWORD. (OPDK-1309)

Piattaforma edge

Di seguito sono riportate le nuove funzionalità della piattaforma Edge incluse in questa release.

OpenJDK 1.7 supportato da Edge Private Cloud

Questa release di Edge supporta Oracle JDK 1.7 e OpenJDK 7 e non supporta più JDK 1.6. (OPDK-1187)

Supporto per sistemi operativi

Apigee Edge for Private Cloud ha ampliato il supporto del sistema operativo per includere Red Hat Enterprise Linux 6.6 e 7.0 (64 bit), CentOS 6.5, 6.6 e 7.0 (64 bit) e Oracle Linux 6.5.

Cassandra 2.0.15 incluso in OPDK 15.07

Questa release installa Cassandra 2.0.15. Se esegui l'upgrade da una release precedente, la tua versione di Cassandra verrà aggiornata. (OPDK-1197)

Supporto di SHA2 per l'hashing dei token OAuth

Per proteggere meglio i token OAuth in caso di violazione della sicurezza del database, Edge supporta gli algoritmi SHA2 per l'hashing dei token OAuth (oltre a SHA1). Con le nuove proprietà a livello di organizzazione, puoi attivare e configurare l'hashing per i nuovi token, nonché conservare l'hashing legacy per i token esistenti prima di questa nuova funzionalità. In precedenza in Edge for Private Cloud, una proprietà denominata hash.oauth.tokens.enabled nel file keymanagement.properties (sul server di gestione e sui processori di messaggi) consentiva l'hashing SHA1 automatico dei token OAuth. Questa proprietà è ora deprecata.

Se in precedenza hai utilizzato la proprietà hash.oauth.tokens.enabled per attivare l'hashing SHA1, lo script di upgrade per questa release genera automaticamente le nuove proprietà a livello di organizzazione. Per eseguire la verifica dopo l'upgrade, esegui una richiesta GET come amministratore di sistema con questa API: https://{host}:{port}/v1/o/{your_org}.

  • Per informazioni sull'attivazione dell'hashing dei token nella tua organizzazione con le nuove proprietà, consulta "Hashing dei token nel database" nell'argomento Richiesta di token di accesso.
  • Per informazioni sull'hashing collettivo dei token esistenti, consulta la guida operativa di Edge for Private Cloud. (APIRT-1389)

Struttura di directory piatta per i file di log

Puoi configurare Edge in modo che memorizzi i file di log in una struttura di directory piatta impostando una nuova proprietà enable.flat.directory.structure su true nel file message-logging.properties. Per saperne di più, consulta le norme relative alla registrazione dei messaggi. (APIRT-1394)

Prestazioni della cache dell'ambiente

Per una migliore gestione e utilizzo della cache in memoria, le impostazioni "Numero massimo di elementi in memoria" nelle risorse della cache dell'ambiente sono state ritirate. Il numero totale di elementi presenti in tutte le risorse della cache (inclusa la cache predefinita) dipende dalla memoria totale allocata alla cache. Per impostazione predefinita, la memoria totale allocata per la memorizzazione nella cache in memoria su un determinato processore di messaggi è il 40% della memoria totale disponibile, determinata dalle impostazioni della proprietà della cache nel file cache.properties del processore di messaggi. Gli elementi verranno eliminati dalla cache in memoria solo quando la memoria della cache è insufficiente o gli elementi scadono.

Per ripristinare il vecchio comportamento di utilizzo della proprietà "Numero massimo di elementi in memoria" per la gestione della cache, imposta la proprietà overrideMaxElementsInCacheResource=false nel file cache.properties. (APIRT-1140)


Servizi API

Di seguito sono riportate le nuove funzionalità di API Services incluse in questa release.

Nuovo editor proxy come predefinito

Il nuovo editor proxy API è abilitato per impostazione predefinita nella UI di gestione. Il nuovo editor include molti miglioramenti dell'usabilità, tra cui visualizzazioni più complete dei flussi condizionali e degli endpoint nella pagina Panoramica, tutta la configurazione nella pagina Sviluppa, aggiunta più intuitiva di flussi condizionali, endpoint e criteri, visualizzazioni XML più complete anziché piccoli snippet, ricerca che esegue la scansione di nomi di file e testo e altro ancora. (MGMT-2279)

Nuovo criterio Elimina informazioni OAuth v2.0

Una nuova norma "Elimina informazioni OAuth v2.0" consente di eliminare i token di accesso e i codici di autorizzazione OAuth v2. Il criterio sostituisce la funzionalità precedentemente fornita dall'API di gestione. Per saperne di più, consulta le norme relative alle informazioni OAuthV2. (MGMT-2257)

Nuovo criterio Elimina informazioni OAuth v1.0

Un nuovo criterio "Elimina informazioni OAuth v1.0" ti consente di eliminare i token di richiesta, i token di accesso e i codici di verifica OAuth v1.0. Il criterio sostituisce la funzionalità precedentemente fornita dall'API di gestione. Per maggiori informazioni, consulta le norme relative all'eliminazione delle informazioni OAuth V1. (APIRT-1351)

Criterio di controllo dell'accesso

Il criterio di controllo dell'accesso è stato migliorato per consentire una valutazione più granulare degli indirizzi IP per le liste consentite e le liste bloccate quando gli indirizzi IP sono contenuti nell'intestazione HTTP X-FORWARDED-FOR.

Se è abilitato il controllo di più indirizzi IP nell'intestazione (contatta l'assistenza per impostare la funzionalità feature.enableMultipleXForwardCheckForACL), un nuovo elemento <ValidateBasedOn> nel criterio ti consente di eseguire il controllo in base al primo IP, all'ultimo IP o a tutti gli IP nell'intestazione. Per saperne di più, consulta la policy di controllo dell'accesso.

Nuove entità nella policy Access Entity

Il criterio Entità di accesso fornisce l'accesso alle seguenti nuove entità: consumerkey-scopes, authorizationcode, requesttoken e verifier. Per saperne di più, consulta Policy di accesso all'entità.

Policy di Statistics Collector: conversione automatica del nome delle statistiche in minuscolo

Quando crei una raccolta di analisi personalizzata nell'editor proxy API (pagina Sviluppo > Strumenti > Raccolta di analisi personalizzata), la variabile (statistica) del raccoglitore "Nome" deve essere in minuscolo. Se inserisci il nome con lettere maiuscole, lo strumento converte automaticamente il nome della statistica in minuscolo nel criterio di raccolta delle statistiche. (MGMT-740)

Rimozione di Trace classico nell'editor proxy API

L'ultima versione della funzionalità Trace nell'editor proxy API è passata dalla versione beta alla disponibilità generale. L'accesso alla "traccia classica" con il link "Accedi alla versione classica della traccia" non è più disponibile.

Accesso alla community Apigee dal menu Guida della UI di gestione

Puoi accedere alla community Apigee dal menu Guida della UI di gestione.

Messaggi di errore nell'interfaccia utente di gestione

Di seguito sono riportati i miglioramenti dei messaggi di errore nell'interfaccia utente di gestione:

  • L'interfaccia utente di gestione utilizzata per raggruppare e visualizzare tutti i messaggi di errore nell'interfaccia utente per l'intera sessione di accesso, a meno che non li abbia chiusi. Con questo aggiornamento, i messaggi di errore vengono cancellati automaticamente quando esci dalla pagina in cui si sono verificati. (MGMT-2254)
  • L'interfaccia utente di gestione non elimina più i messaggi di errore duplicati. (MGMT-2242)

Miglioramenti delle prestazioni e degli errori dell'interfaccia utente

Sono stati apportati miglioramenti generali a diverse aree dell'interfaccia utente di gestione, tra cui il rendimento della visualizzazione delle pagine e la pulizia dei messaggi di errore.

Nella pagina Utenti dell'organizzazione dell'interfaccia utente di gestione (Amministrazione > Utenti dell'organizzazione), i nomi dei ruoli ora sono collegamenti ipertestuali, che ti consentono di accedere rapidamente alle pagine dei ruoli. (MGMT-1055)

Nuove variabili di destinazione nel flusso di messaggi

Le nuove variabili nei flussi di messaggi forniscono informazioni più complete sull'URL per gli endpoint di destinazione e i server di destinazione:

  • TargetEndpoint: request.url sostituisce target.basepath.with.query.
  • TargetServer: loadbalancing.targetserver sostituisce targetserver.name. Inoltre, target.basepath viene compilato solo quando l'elemento <Path> viene utilizzato nell'elemento HTTPTargetConnection <LoadBalancer> di TargetEndpoint.

Supporto dell'indicazione nome server (SNI)

Edge supporta l'utilizzo di Server Name Indication in uscita (dal processore di messaggi agli endpoint di destinazione). Se vuoi utilizzare SNI, contatta l'assistenza Apigee Edge.

È necessario Java 1.7.

Con SNI, un'estensione di TLS/SSL, è possibile pubblicare più target HTTPS dallo stesso indirizzo IP e dalla stessa porta senza richiedere che tutti i target utilizzino lo stesso certificato.

Non è necessaria alcuna configurazione specifica per Edge. Se il tuo ambiente è configurato per SNI in uscita (il cloud perimetrale è predefinito), Edge lo supporta.

Edge estrae automaticamente il nome host dall'URL della richiesta e lo aggiunge alla richiesta di handshake SSL. Ad esempio, se l'host di destinazione è https://example.com/request/path, Edge aggiunge l'estensione server_name come mostrato di seguito:

Per ulteriori informazioni su SNI, visita la pagina http://en.wikipedia.org/wiki/Server_Name_Indication.

"Algoritmo di firma" nei dettagli dei certificati SSL

Un nuovo campo "Algoritmo di firma" è stato aggiunto ai dettagli del certificato SSL, visualizzabile nell'interfaccia utente di gestione (Amministrazione > Certificati SSL) e nell'API di gestione (Ottieni dettagli certificato da un keystore o un truststore). Il campo mostra "sha1WithRSAEncryption" o "sha256WithRSAEncryption", a seconda del tipo di algoritmo di hashing utilizzato per generare il certificato.

Visualizzazione dei certificati SSL in scadenza

La pagina Certificati SSL nell'interfaccia utente di gestione (Amministrazione > Certificati SSL) indica quando i certificati SSL scadono entro 10, 15, 30 o 90 giorni, a seconda della selezione nel nuovo campo a discesa per la scadenza.

Errore di configurazione della protezione dalle minacce

Per impostazione predefinita, Edge genera un codice di stato HTTP 500 Internal Server Error e un errore ExecutionFailed se un messaggio non supera un criterio di protezione dalle minacce JSON o XML. Puoi modificare questo comportamento di errore con una nuova proprietà a livello di organizzazione. Quando imposti la proprietà dell'organizzazione features.isPolicyHttpStatusEnabled su true, si verifica il seguente comportamento:

  • Richiesta: con una norma di protezione dalle minacce allegata a qualsiasi flusso di richieste, i messaggi non validi restituiscono un codice di stato 400, insieme a un messaggio di errore della norma corrispondente.
  • Risposta: con una policy di protezione dalle minacce collegata a qualsiasi flusso di risposta, i messaggi non validi restituiscono comunque un codice di stato 500 e viene generato uno dei messaggi di errore della policy corrispondenti (anziché solo ExecutionFailed).

I clienti Cloud devono contattare l'assistenza Apigee Edge per impostare la proprietà dell'organizzazione. Questa funzionalità sarà disponibile per i clienti di Edge Private Cloud nella prossima release trimestrale di Private Cloud.

Schemi aggiornati per endpoint, proxy e altre entità

Gli schemi di riferimento sono stati aggiornati per le entità non correlate alle norme, come TargetEndpoint, ProxyEndpoint, APIProxy e molte altre. Vedi https://github.com/apigee/api-platform-samples/tree/master/schemas. (APIRT-1249)


Servizi per gli sviluppatori

Di seguito sono riportate le nuove funzionalità di Developer Services incluse in questa release.

Disponibilità generale di SmartDocs

Smart Docs passerà dalla versione beta alla disponibilità generale. Gli aggiornamenti e le nuove funzionalità includono:

  • Supporto di Swagger 2.0, incluso l'importazione per file o URL, incluso il supporto per oggetti di sicurezza con nome personalizzato.
  • Miglioramenti al design visivo nei modelli che generano Smart Docs.
  • Miglioramenti dell'usabilità e del flusso di lavoro nel portale per sviluppatori, disponibili tramite il menu Contenuti > Smart Docs in Drupal.
  • L'autenticazione nota come "token personalizzato" è ora denominata "chiave API".
  • Oggetti "sicurezza" di autenticazione definiti a livello di revisione.
  • Configurazione dell'autenticazione client a livello di modello. Le nuove revisioni non reimpostano più le credenziali client SmartDocs preconfigurate.

Per ulteriori descrizioni delle funzionalità, consulta questo post del blog.

Per la documentazione di SmartDocs, consulta Utilizzare SmartDocs per documentare le API.

Nome dell'app dello sviluppatore visualizzato nell'interfaccia utente di gestione

Le app per sviluppatori in Edge hanno sia un nome interno che non cambia sia un nome visualizzato che puoi modificare. In una pagina dell'app per sviluppatori nell'interfaccia utente di gestione (Pubblica > App per sviluppatori > nome dell'app), il "Nome" interno dell'app viene visualizzato insieme al "Nome visualizzato", il che semplifica l'identificazione visiva delle app in base ai loro nomi interni per la risoluzione dei problemi e la gestione delle API.


Servizi di analisi

Di seguito sono riportate le nuove funzionalità di Analytics Services incluse in questa release.

Limite di tempo per i dati conservati

Quando generi report di analisi con l'API o la UI di gestione, i dati precedenti a sei mesi rispetto alla data corrente non sono accessibili per impostazione predefinita. Se vuoi accedere a dati più vecchi di sei mesi, contatta l'assistenza Apigee Edge.

Rimozione della versione classica dei report personalizzati dall'interfaccia utente di gestione

La versione classica facoltativa dei report di analisi personalizzati non è più disponibile nell'interfaccia utente di gestione.

Rendimento del widget Coinvolgimento dello sviluppatore

Il widget Funnel nella dashboard principale di Analytics (sezione Coinvolgimento degli sviluppatori) è stato migliorato per offrire prestazioni migliori.


Monetizzazione

Di seguito sono riportate le nuove funzionalità di monetizzazione incluse in questa release.

Notifiche via email per i piani tariffari

Un nuovo tipo di notifica via email del piano tariffario ti consente di avvisare gli sviluppatori quando raggiungono un determinato limite di transazioni o di spesa nei piani tariffari a fasce di volume o in bundle che hanno acquistato. Per maggiori dettagli, vedi Configurare le notifiche utilizzando i modelli di notifica.

Sincronizzazione dei periodi di commissione ricorrente e base di aggregazione

In un piano tariffario, erano potenzialmente in vigore due periodi di tempo diversi:

  • Periodo di commissione ricorrente, configurato nella scheda Commissioni di un piano tariffario, che determinava quando agli sviluppatori veniva addebitata una commissione ricorrente.
  • Periodo base di aggregazione, definito nella scheda tariffaria per i piani a volumi o bundle, che ha determinato quando l'utilizzo del bundle è stato reimpostato per gli sviluppatori.

Ora i due periodi sono sincronizzati. Quando in un piano tariffario esistono sia una commissione ricorrente diversa da zero sia una scheda tariffaria a volumi o bundle, viene utilizzato il periodo della commissione ricorrente per entrambi. Ad esempio, se esiste una tariffa mensile ricorrente, anche i bundle delle schede tariffarie vengono reimpostati mensilmente (per impostazione predefinita all'inizio del mese).

Se non esiste una tariffa ricorrente, i bundle vengono reimpostati in base alla base di aggregazione definita nella scheda tariffaria. Ad esempio, se uno sviluppatore inizia a utilizzare una tariffa il 19 del mese e la base di aggregazione è mensile, l'utilizzo del bundle viene reimpostato un mese dopo il 19.

La base di aggregazione verrà ritirata e rimossa dalla monetizzazione in una futura release. Per ulteriori informazioni, consulta la sezione Specificare i dettagli del piano con tariffario.

Attributi personalizzati nei report di riepilogo sulle entrate

Le norme di registrazione delle transazioni ti consentono di acquisire facoltativamente i dati degli attributi personalizzati dalle transazioni e ora puoi includere questi attributi personalizzati delle transazioni nei report riepilogativi sulle entrate. Se aggiungi una proprietà MINT.SUMMARY_CUSTOM_ATTRIBUTES alla tua organizzazione, puoi indicare quali attributi personalizzati vengono aggiunti alle tabelle del database per essere utilizzati nei report.

I clienti di Apigee Edge for Private Cloud possono impostare il flag con la seguente chiamata API e le credenziali di amministratore di sistema.

curl -u email:password -X PUT -H "Content-type:application/xml" http://host:8080/v1/o/myorg -d \
"<Organization type="trial" name="MyOrganization">
    <Properties>
        <Property name="features.isMonetizationEnabled">true</Property>
        <Property name="MINT.SUMMARY_CUSTOM_ATTRIBUTES">[&quot;my_attribute_1&quot;,&quot;my_attribute_2&quot;]</Property>
        <Property name="features.topLevelDevelopersAreCompanies">false</Property>
    </Properties>
</Organization>"

Tieni presente che l'array di attributi personalizzati nella chiamata API è codificato come URL.


Procedura di upgrade di Smart Docs

Se hai già utilizzato SmartDocs durante il periodo beta, le nuove funzionalità nella versione di disponibilità generale richiedono l'upgrade di SmartDocs nel tuo portale per sviluppatori.

Tutte le pagine Smart Docs già pubblicate nel tuo portale per sviluppatori continueranno a funzionare, ma devi seguire la procedura di aggiornamento prima di modificare o pubblicare eventuali modifiche alle pagine esistenti o nuove.

Tieni presente che, sebbene tu possa eseguire il rendering e pubblicare SmartDocs all'interno del tuo portale per sviluppatori, SmartDocs vengono generate dal modello API che si trova all'interno dei servizi di gestione delle API Edge di Apigee. Le modifiche apportate a un modello API in Edge saranno le stesse in tutti gli ambienti Pantheon (in modo simile a come gli sviluppatori esistono negli ambienti Pantheon).

Per eseguire l'upgrade dalla versione beta di Smart Docs alla disponibilità generale

  1. Aggiorna e testa la release 15.05.27 negli ambienti dev o test su Pantheon.
  2. Crea un nuovo modello per sostituire qualsiasi modello API esistente che hai utilizzato.
    • Se hai importato documenti Swagger o WADL, importali di nuovo in una nuova revisione.
    • Se hai gestito il modello API tramite il modulo SmartDocs, esportalo come SmartDocs JSON e importalo nel nuovo modello utilizzando l'allegato di file.
  3. Imposta le proprietà di sicurezza della revisione del modello. Nella pagina Contenuti > Smart Docs > modello, seleziona Impostazioni di sicurezza.
  4. Controlla l'eventuale autenticazione preconfigurata nella pagina delle impostazioni del modello (Contenuti > Smart Docs) facendo clic su Impostazioni nella colonna Operazioni.
  5. Aggiorna tutti i modelli personalizzati in modo che utilizzino la versione 6 degli asset CSS e JS e apporta modifiche per riflettere eventuali nuovi nomi di oggetti, come authSchemes e apiSchema. Per informazioni sull'aggiornamento dei modelli SmartDocs, consulta Utilizzare SmartDocs per documentare le API.
  6. Esegui di nuovo il rendering e pubblica la revisione del modello.
  7. Dopo aver convalidato la nuova documentazione, aggiorna il portale produzione alla release 15.05.27.

Se sei un cliente aziendale di Edge e hai domande o dubbi sulla procedura di upgrade, invia un'email a marsh@apigee.com e cnovak@apigee.com. In caso contrario, utilizza la community Apigee per ottenere la risposta migliore.


Modifiche e miglioramenti futuri delle funzionalità

Questa sezione mostra in anteprima le modifiche e i miglioramenti futuri previsti per le funzionalità:

Modifica il comportamento della policy di memorizzazione nella cache delle risposte

In una release futura (da determinare), il comportamento predefinito dell'elemento <ExcludeErrorResponse> del criterio Cache di risposta cambierà.

Comportamento attuale: l'elemento <ExcludeErrorResponse> nel criterio di cache delle risposte è false per impostazione predefinita. Ciò significa che, per impostazione predefinita, le risposte con qualsiasi codice di stato HTTP possibile (incluso 3xx) vengono memorizzate nella cache dal criterio di memorizzazione nella cache delle risposte.

Comportamento futuro: l'elemento <ExcludeErrorResponse> nel criterio di memorizzazione nella cache delle risposte verrà impostato su true per impostazione predefinita. Ciò significa che, per impostazione predefinita, verranno memorizzate nella cache solo le risposte con codici di stato HTTP da 200 a 205. Per ignorare questo comportamento e memorizzare nella cache le risposte per tutti i codici di stato, devi impostare in modo esplicito l'elemento <ExcludeErrorResponse> su true.

Soluzione alternativa attuale: per Private Cloud 4.15.07.00 e versioni precedenti, se vuoi memorizzare nella cache le risposte solo con i codici di stato da 200 a 205, devi impostare esplicitamente l'elemento <ExcludeErrorResponse> su true.


Bug corretti

In questa release sono stati corretti i seguenti bug.

ID problema Descrizione
OPDK-1521 Problema di crittografia della password
OPDK-1201 Impossibile ripristinare i dati dell'interfaccia utente
OPDK-1112 La policy della password LDAP personalizzata non viene applicata all'utente amministratore Apigee
OPDK-1097 Eccezione dello spazio delle chiavi durante l'upgrade di OPDK
OPDK-1068 Possibilità di modificare la password amministratore se l'installazione non va a buon fine
OPDK-1053 Zookeeper è in esecuzione come root
OPDK-967 Quando imposti l'avvio automatico di OpenLDAP utilizzando set-autostart.sh, all-status.sh lo segnala come inattivo
OPDK-905 Smartdocs prod already registered in group axgroup001
OPDK-899 Errore durante l'onboarding
OPDK-847 L'utente creato durante l'onboarding non riceve un'email per il reimpostazione della password
OPDK-817 Gli script init.d generano un errore
OPDK-815 Lo script ax-purge.sh richiede l'eliminazione delle tabelle di campionamento
MGMT-2246 La pagina di creazione del report personalizzato non viene visualizzata correttamente nell'interfaccia utente di gestione
MGMT-2235 Per i certificati SSL in scadenza, il tempo relativo di scadenza può essere arrotondato in modo fuorviante
Per i certificati SSL in scadenza, il tempo relativo della data di scadenza viene sempre visualizzato in giorni anziché essere arrotondato per eccesso a mesi, quando il certificato scade entro 90 giorni o meno.
MGMT-2193 Indicatore di caricamento durante la modifica di un'API
MGMT-2173 L'interfaccia utente di Trace non consente URL legali
L'interfaccia utente di Trace ora ti consente di inviare richieste con valori dei parametri di query che contengono parametri di query nidificati.
MGMT-2162 Problema di compilazione di JavaScript
MGMT-2124 Le autorizzazioni del ruolo cliente vengono reimpostate al salvataggio delle autorizzazioni nell'interfaccia utente
MGMT-2114 L'IP Syslog non valido nella policy MessageLogging deve generare l'errore appropriato durante il deployment
MGMT-2067 Trace: se la revisione del proxy API è stata eseguita il deployment in due ambienti, la selezione della revisione e dell'ambiente non funziona correttamente
MGMT-2061 La funzionalità "Password dimenticata" deve inviare email solo agli utenti registrati
Il link "Hai dimenticato la password?" nella pagina di accesso dell'interfaccia utente di gestione invia email solo agli utenti Apigee registrati.
MGMT-2048 L'utente con un ruolo personalizzato che limita le autorizzazioni di deployment a un ambiente può eseguire il deployment in altri
MGMT-2041 Rimuovi l'elemento FaultRules dal modello di collegamento predefinito
L'elemento FaultRules, che non viene utilizzato nei passaggi dei proxy API o delle norme, non viene più aggiunto automaticamente quando crei proxy API o aggiungi norme.
MGMT-2034 Il recupero di WSDL restituisce l'errore: "Errore di recupero di WSDL: errore durante l'elaborazione di WSDL".
MGMT-1986 Errore dell'interfaccia utente durante l'aggiunta dello sviluppatore
MGMT-1983 L'API Get an OAuth 2.0 authorization code restituisce lo stato errato
MGMT-1962 Errore di accesso all'interfaccia utente di gestione con password complessa
L'accesso all'interfaccia utente con determinati caratteri speciali, ad esempio il segno percentuale, non ha più esito negativo.
MGMT-1947 Ruoli non intuitivi nell'interfaccia utente di gestione
Se un utente non dispone dell'autorizzazione per creare o modificare una policy di registrazione delle transazioni, i pulsanti dell'interfaccia utente per creare e modificare una policy di registrazione delle transazioni sono ora disattivati.
MGMT-1899 Percorsi delle risorse eliminati dopo il salvataggio delle impostazioni del prodotto
Quando si modifica un prodotto API, i percorsi delle risorse del prodotto potrebbero essere eliminati se l'utente ha fatto doppio clic sul pulsante Salva. Il problema è stato risolto.
MGMT-1894 La pagina App per sviluppatori non viene mai caricata per la colonna Sviluppatore
MGMT-1882 Il nuovo proxy API da WSDL mostra solo i dettagli dell'ultimo parametro
MGMT-1878 Se in un ambiente vengono implementate più revisioni, Trace ne mostra solo una
MGMT-1872 Impossibile scaricare i report personalizzati
MGMT-1863 I log di Node.js non sono visualizzabili nell'interfaccia utente di gestione
MGMT-1843 Il proxy API non si apre
MGMT-1833 L'utente sysadmin non deve avere la possibilità di modificare la password nell'interfaccia utente per OPDK
MGMT-1825 Bug cross-site scripting (XSS)
MGMT-1824 Errore di recupero WSDL durante l'importazione del file WSDL con estensione .xml
MGMT-1812 Aggiungi la convalida di TargetEndpoint durante l'importazione
Analogamente a ProxyEndpoint, TargetEndpoint verrà convalidato per lo schema corretto e le espressioni utilizzate nelle condizioni durante l'importazione del proxy API.
MGMT-1804 L'API Node.js invia JSON non validi in alcuni casi
La schermata dei log di Node.js mostrava i log non formattati se i dati JSON contenevano caratteri non validi. Questo problema è stato risolto in questa release e ora l'interfaccia utente mostra i log di Node.js in formato corretto.
MGMT-1802 URL di reimpostazione della password #118
Se l'interfaccia utente di gestione si trova dietro un server di terminazione SSL, ora genera correttamente un'email di reimpostazione della password con un link a un URL https anziché a un URL http.
MGMT-1799 Vulnerabilità di sicurezza dell'interfaccia utente che invia la richiesta in Trace
MGMT-1777 Impossibile aggiungere un utente con un indirizzo email con TLD .acn
MGMT-1735 Branding "Error while fetching W"
A partire da oggi, abbiamo rimosso il supporto del branding personalizzato in Edge OPDK. Sebbene ci rendiamo conto che questa decisione potrebbe deludere i pochi clienti che la utilizzavano, questa non è una funzionalità che migliora direttamente le capacità di Edge in termini di gestione delle API.
MGMT-1569 Problema di collegamento del proxy API al prodotto API esistente
È stato risolto il problema di collegamento di un proxy API a un prodotto API nell'interfaccia utente di gestione quando il proxy API aveva una risorsa per il percorso "/".
MGMT-1563 Il pulsante Invia su Trace rimane disattivato se si verifica un errore
MGMT-1362 L'email Password dimenticata non funziona se l'indirizzo email contiene '_'
Risolve il problema di reimpostazione della password in OPDK con indirizzi email contenenti un trattino basso.
MGMT-1345 L'importazione di WSDL con più spazi dei nomi genera un passaggio Build SOAP errato
MGMT-1193 Il salvataggio del proxy come nuova revisione modifica in modo imprevisto la regola di routing
MGMT-1061 Smart Docs: la descrizione del parametro del tipo di corpo nella definizione Swagger non viene visualizzata nell'interfaccia utente della documentazione
MGMT-800 La creazione di una risorsa con il nome "default" comporta un'interfaccia utente danneggiata
MGMT-787 Problema di usabilità dell'avviso dell'interfaccia utente
Nell'interfaccia utente di gestione, quando fai clic su + API Proxy e viene visualizzata la finestra di dialogo Nuovo proxy API, puoi premere Esc per chiuderla.
MGMT-619 Attiva la paginazione nella pagina dell'interfaccia utente del proxy API
MGMT-602 Visualizzazione Sviluppo proxy API: aggiungi un criterio di cache della risposta quando l'endpoint non ha PreFlow/PostFlow causa un errore
MGMT-460 La ridenominazione della policy comporta un comportamento anomalo, una policy duplicata che non può essere rimossa
DEVRT-1644 Ricerca delle notifiche per nome che causa l'invio dell'email sbagliata
DEVRT-1583 L'interfaccia utente della monetizzazione mostra il badge "Futuro" per un piano tariffario corrente
DEVRT-1546 Limiti del piano non funzionanti
DEVRT-1511 Errore mint.resourceDoesNotExist per uno sviluppatore esistente
CORERT-639 TCPSysLogSocket must be async
CORERT-613 Errori di handshake SSL dovuti a "unrecognized_name"
AXAPP-1728 Ignorare le variabili di monetizzazione in Analytics
AXAPP-1708 L'API Analytics sembra produrre numeri diversi per la stessa statistica a seconda di come la chiedo
AXAPP-1707 Migliorare il rendimento dell'analisi dei pod senza costi
AXAPP-1690 "Errore API non valido" nei report personalizzati
AXAPP-1533 La mappa geografica di Analytics genera l'errore Chiamata API non valida
AXAPP-1493 Statistiche sul rendimento della cache errate
APIRT-1436 Crea uno strumento/script per eseguire l'hashing dei token non sottoposti a hashing
APIRT-1425 L'attributo continueOnError se impostato su "true" non ha effetto nel criterio JavaCallout
APIRT-1346 OAuth2.0 - Hashed value is returned in access token response when hash.oauth.tokens.enabled is true
APIRT-1206 target_ip non viene registrato nella tabella dei fatti per gli errori 503 e la maggior parte degli errori 504
APIRT-1170 Il file di risorse mancante ha impedito a MP di caricare un ambiente
APIRT-1148 GET della variabile {message.version} in ResponseFlow, per una destinazione Node.js genera NPE
APIRT-1054 La registrazione dei messaggi non riesce quando si tenta di eseguire la registrazione in una directory diversa da quella predefinita
APIRT-387 Fai in modo che OrganizationService venga eseguito nella variante "others" su MP
APIRT-67 Il criterio OAuth GenerateAccessToken non imposta correttamente la variabile oauthV2.failed
APIRT-52 Report personalizzati: il codice di stato della risposta per molte API è null

Problemi noti

Questa release presenta i seguenti problemi noti.

ID problema Descrizione
OPDK-1586

Il portale API BaaS non viene avviato se il supporto IPV6 non è abilitato
La soluzione alternativa consiste nel commentare la seguente riga IPV6 in /<install-dir>/apigee4/conf/nginx/conf.d/loadbalancer.conf per avviare il portale API BaaS o abilitare il supporto IPV6:

# listen [::]:8080;

OPDK-1785

Installa il componente di monetizzazione nell'ambiente di installazione di Edge aggiornato
Se esegui l'upgrade di un'installazione di Edge alla versione 4.15.07.00 e non utilizzavi già la monetizzazione prima dell'upgrade, non puoi installarla nella versione 4.15.07.00 di Edge.

La soluzione alternativa consiste nell'impostare la versione corretta di Monetizzazione nel file apigee-env.sh prima di tentare di installare Monetizzazione. Per ottenere la versione Monetization in 4.15.07 (dopo aver già eseguito l'upgrade a Edge 4.15.07), esegui:
> source /{install-dir}/apigee4/bin/apigee-env.sh

> VER=`basename $(find $SHARE_DIR/installer/monetization -name "mint-*.zip") | cut -d "-" -f 2,3,4`
Per impostazione predefinita, install-dir è /opt.
Il valore di VER riportato sopra deve essere impostato in apigee-env.sh:
> sed -i "s/^MONETIZATION_VERSION=.*/MONETIZATION_VERSION=$VER/" /install-dir/apigee4/bin/apigee-env.sh
Se hai tentato di installare la monetizzazione senza eseguire i passaggi precedenti, l'installazione non va a buon fine e probabilmente è presente un symlink non funzionante nella directory condivisa. Devi rimuovere il link simbolico:
> rm /install-dir/apigee4/share/monetization
Dopo aver rimosso il collegamento simbolico, esegui i passaggi precedenti per impostare la versione di Monetizzazione, quindi riprova a installare Monetizzazione.
OPDK-1857 Versione Python 2.6 codificata in bin/qpid-stat.sh e bin/qpid-config.sh

Su CentOS e RedHat 7.0, diversi script in bin/qpid-stat.sh e bin/qpid-config.sh sono codificati in modo permanente per utilizzare Python versione 2.6.

La soluzione alternativa a questo problema consiste nel modificare la riga che esporta PYTHONPATH in qpid-stat.sh e qpid-config.sh nella directory apigee4/bin.

export PYTHONPATH="${QPID_DIR}/lib/python2.6/site-packages"

Per determinare la versione di Python sul tuo sistema, controlla la versione di Python nella directory /opt/apigee4/share/apache-qpid/lib. La directory è molto probabilmente python2.7.

Dopodiché devi aggiornare l'impostazione PYTHONPATH in qpid-stat.sh e qpid-config.sh con il percorso corretto. Ad esempio:

export PYTHONPATH="${QPID_DIR}/lib/python2.7/site-packages"

DEVRT-1574 Saldo e utilizzo incoerenti per gli sviluppatori con più piani tariffari attivi
Nella monetizzazione, se uno sviluppatore è attivo su più di un piano tariffario che prevede addebiti per chiamata API, l'utilizzo del saldo monetario potrebbe a volte essere incoerente.
APIBAAS-1647 Dopo l'accesso come amministratore di sistema, l'interfaccia utente BaaS mostra il messaggio "Errore durante il recupero dei ruoli"
Questo messaggio di errore viene visualizzato al primo accesso al sistema da parte dell'amministratore di sistema dopo l'upgrade dalla versione 4.15.01 alla 4.15.07. Puoi ignorare questo messaggio.
DEVRT-1834 Upgrade della monetizzazione alla versione 4.15.07
Lo script apigee-upgrade.sh stampa il seguente messaggio alla fine, invitandoti a eseguire un altro script:
**************************************
In order to complete the monetization upgrade please run:
sudo /opt/apigee4/share/monetization/schema/migration/MOPDK4.15.04.00/
365-create-notification-condition.sh
**************************************

Puoi ignorare questo messaggio. Questo script non è obbligatorio e non può essere eseguito.

DEVRT-1951 Configurazioni di notifica mancanti per la nuova installazione della monetizzazione
In una nuova installazione di Apigee Edge for Private Cloud versione 4.15.07.00, mancano le seguenti configurazioni per le notifiche di monetizzazione. Questi corrispondono ai tipi di notifiche nella pagina Amministrazione > Notifiche nell'UI di gestione.
mint.scheduler.${ORG_ID}.adhocnotify@@@management
mint.scheduler.${ORG_ID}.expiringrateplannotify@@@management
mint.scheduler.${ORG_ID}.newpkgnotify@@@management
mint.scheduler.${ORG_ID}.newproductnotify@@@management
mint.scheduler.${ORG_ID}.newrateplannotify@@@management
mint.scheduler.${ORG_ID}.tncacceptancenotify@@@management
Per risolvere il problema, segui questi passaggi. Avrai bisogno dell'indirizzo IP della tua istanza di Cassandra. Per trovarlo, cerca in <installation-root>/apigee4/conf/cassandra/cassandra.yaml o <installation-root>/apigee4/conf/cassandra/cassandra-topology.properties.
  1. Esegui questi comandi. Lascia la variabile {ORG_ID} così com'è, ma sostituisci <org_name>, <installation-root> e <cassandra_ip_address>.
    sed -e "s/\${ORG_ID}/<org_name>/g" <installation-root>/apigee4/share/monetization/schema/cassandra/org/ui/mint-org-specific-ui-schedulers.txt > /tmp/mint-org-specific-ui-schedulers.txt
    
    <installation-root>/apigee4/share/apache-cassandra/bin/cassandra-cli -h <cassandra_ip_address> -f /tmp/mint-org-specific-ui-schedulers.txt
  2. Riavvia il server di gestione.
DEVRT-1952 Aggiornamento della monetizzazione dalla versione 4.14.07.00 con configurazioni di notifica mancanti
In un upgrade di Apigee Edge for Private Cloud dalla versione 4.14.07.00 alla 4.15.07.00, le seguenti configurazioni per le notifiche di monetizzazione non sono presenti, il che causa il funzionamento errato dei report sulla monetizzazione.
mint.scheduler.${ORG_ID}.chargedaily@@@management
mint.scheduler.${ORG_ID}.chargehourly@@@management
Per risolvere il problema, segui questi passaggi. Avrai bisogno dell'indirizzo IP della tua istanza di Cassandra. Per trovarlo, cerca in <installation-root>/apigee4/conf/cassandra/cassandra.yaml o <installation-root>/apigee4/conf/cassandra/cassandra-topology.properties.
  1. Esegui questi comandi. Lascia la variabile {ORG_ID} così com'è, ma sostituisci <org_name>, <installation-root> e <cassandra_ip_address>.
    sed -e "s/\${ORG_ID}/<org_name>/g" <installation-root>/apigee4/share/monetization/schema/cassandra/org/system/mint-org-specific-system-schedulers.txt > /tmp/mint-org-specific-system-schedulers.txt
    
    <installation-root>/apigee4/share/apache-cassandra/bin/cassandra-cli -h <cassandra_ip_address> -f /tmp/mint-org-specific-system-schedulers.txt
  2. Riavvia il server di gestione.
OPDK-1878 Impossibile impostare il nome del pod nell'installazione di più data center
La guida all'installazione di Edge specifica di impostare i nomi dei pod come "gateway-1" e "gateway-2" nei file di installazione automatica per un'installazione di più data center. Tuttavia, se rinomini il pod, i router e i processori di messaggi non vengono registrati correttamente e non sono accessibili. Questo problema impedisce inoltre allo script setup-org.sh di trovare i Message Processor disponibili.

La soluzione alternativa consiste nell'impostare il nome del pod, utilizzando la proprietà MP_POD, su "gateway" nel file di installazione invisibile all'utente per entrambi i data center.
OPDK-1886

Il nodo non può accedere agli indirizzi IP locali come 192.168.x.y
Quando tenti di accedere a un indirizzo IP locale, viene visualizzato l'errore "connect EINVAL".
La soluzione alternativa consiste nel modificare il file /<install_dir>/apigee4/conf/apigee/message-processor/nodejs.properties sui nodi del processore di messaggi per commentare la seguente riga:

connect.ranges.denied=10.0.0.0/8,192.168.0.0/16,127.0.0.1/32

Quindi, riavvia i nodi del processore di messaggi:

<install_dir>/apigge4/bin/apigee-service message-processor restart 
OPDK-1958 Durante l'upgrade, tutti i nodi richiedono l'accesso alla porta 8080 sul server di gestione
In fase di runtime, i seguenti componenti richiedono l'accesso alla porta 8080 sul server di gestione: router, processore di messaggi, UI, Postgres e Qpid. Tuttavia, durante l'upgrade, tutti i nodi richiederanno l'accesso alla porta 8080 sul server di gestione, inclusi i nodi Cassandra e Zookeeper.
OPDK-1962 È necessario riconfigurare SSL per l'API Edge dopo l'upgrade
Se hai configurato l'API Edge per utilizzare SSL prima dell'upgrade alla versione 4.15.07.00, devi riconfigurare SSL dopo l'upgrade. Consulta la guida operativa di Edge per la procedura di configurazione di SSL per l'API Edge.