PDA

View Full Version : ADFS secondario ritorna errore 400


daniomass
09-08-2020, 11:32
Salve a tutti,

Ho aggiunto al mio adfs server un adfs secondario, creando una farm.

Digitando i seguenti URL l'adfs primario risponde correttamente:

https://<ip_address_adfs_primario>/adfs/ls
https://<ip_address_adfs_primario>/FederationMetadata/2007-06/FederationMetadata.xml
https://<ip_address_adfs_primario>/adfs/ls/federationserverservice.asmx
https://<ip_address_adfs_primario>/adfs/ls/idpinitiatedsignon.htm
etc..

https://<fqdn_adfs_primario>/adfs/ls
https://<fqdn_adfs_primario>/FederationMetadata/2007-06/FederationMetadata.xml
https://<fqdn_adfs_primario>/adfs/ls/federationserverservice.asmx
https://<fqdn_adfs_primario>/adfs/ls/idpinitiatedsignon.htm
etc..

Ma chiamando l'adfs secondario, se utilizzo il suo indirizzo ip ritorna un errore 400:

https://<ip_address_adfs_secondario>/adfs/ls --> 400
https://<ip_address_adfs_secondario>/adfs/portal/updatepassword --> 400
https://<ip_address_adfs_secondario>/FederationMetadata/2007-06/FederationMetadata.xml --> risponde correttamente
https://<ip_address_adfs_secondario>/adfs/ls/federationserverservice.asmx --> risponde correttamente
https://<ip_address_adfs_secondario>/adfs/ls/idpinitiatedsignon.htm --> 400
etc..

Ma utilizzando il suo fqdn tutto funziona:

https://<fqdn_adfs_secondario>/adfs/ls --> risponde correttamente
https://<fqdn_adfs_secondario>/adfs/portal/updatepassword --> risponde correttamente
https://<fqdn_adfs_secondario>/FederationMetadata/2007-06/FederationMetadata.xml --> risponde correttamente
https://<fqdn_adfs_secondario>/adfs/ls/federationserverservice.asmx --> risponde correttamente
https://<fqdn_adfs_secondario>/adfs/ls/idpinitiatedsignon.htm --> risponde correttamente
etc..

Ho la necessità di far si che il mio adfs secondario risponda correttamente anche se chiamato dal suo indirizzo IP, poiché aggiungendo un Network Load Balancer, nel caso che il nodo primario (adfs_primario) vada offline, le chiamate verranno instradate direttamente a quello secondario (adfs_secondario).

Ho effettuato dei test, mettendo i server in cluster effettivamente dal momento che i due nodi sono online l'adfs risponde correttamente (perchè instradati all'adfs_primario), se spengo il nodo primario, entra in gioco l'adfs secondario, ritornando errori 400.
Qualche aiuto?

OUTATIME
10-08-2020, 08:11
E' sicuramente un problema della configurazione di IIS, prova ad aprire entrambi i server e vedi nelle impostazioni se ci sono differenze.
Comunque l'IP solitamente non si usa, molto meglio l'FQDN, che puoi creare anche per l'indirizzo del load balancer.

daniomass
10-08-2020, 14:55
E' sicuramente un problema della configurazione di IIS, prova ad aprire entrambi i server e vedi nelle impostazioni se ci sono differenze.
Comunque l'IP solitamente non si usa, molto meglio l'FQDN, che puoi creare anche per l'indirizzo del load balancer.

Ho verificato, le impostazioni sono le medesime, ma comunque l'IIS server del secondario è configurato correttamente, poichè ad ogni https://fqdn_secondario/someurl risponde correttamente. Sembra che ci sia qualche problema di misconfigurazione per il secondo adfs, ho provato a togliere IIS dal secondario, e giustamente il suo fqdn non risponde più, ma le chiamate https://ip_secondario/someurl, continuano a dare questo errore.
Mi chiedo se questo comportamento sia by design a questo punto.

1. E' possibile che ci sia qualche problema di compatibilità tra i due server? (sto usando W2012 r2 e W2019).

2. Utilizzando NLB è possibile configurarlo per effettuare le chiamate direttamente tramite fqdn? Perchè se così fosse avrei risolto il problema, ma a quanto pare NLB "splitta" le chiamate solo tra i due indirizzi ip, così se butto giu il nodo primario, le chiamate al secondario sono sempre errore 400, non so se sono stato chiaro.

OUTATIME
10-08-2020, 15:37
Problemi di compatibilità non credo, anche se solitamente non si tiene un ambiente misto se non in fase di migrazione.
Per l'FQDN da quello che ricordo si, ma è molto che non vedo di queste configurazioni.