@@ -45,17 +45,33 @@ class AdminForthAuth implements IAdminForthAuth {
4545
4646 getClientIp ( headers : object ) {
4747 const clientIpHeader = this . adminforth . config . auth . clientIpHeader ;
48-
48+ console . log ( '👊🏿👊🏿👊🏿get client Ip method called 👊🏿👊🏿👊🏿' )
4949 const headersLower = Object . keys ( headers ) . reduce ( ( acc , key ) => {
5050 acc [ key . toLowerCase ( ) ] = headers [ key ] ;
51+ console . log ( `Header: ${ key . toLowerCase ( ) } = ${ headers [ key ] } ` ) ;
52+ console . log ( "Returning acc:" , acc ) ;
5153 return acc ;
5254 } , { } ) ;
5355 if ( clientIpHeader ) {
56+ console . log ( `Using custom client IP header: ${ clientIpHeader } ` ) ;
5457 return headersLower [ clientIpHeader . toLowerCase ( ) ] || 'unknown' ;
5558 } else {
5659 // first try common headers which can't bee spoofed, in other words
5760 // most common to nginx/traefik/apache
5861 // then fallback to less secure headers
62+ console . log ( 'Using default client IP header detection' ) ;
63+ console . log ( "returning:" , headersLower [ 'x-forwarded-for' ] ?. split ( ',' ) . shift ( ) . trim ( ) ||
64+ headersLower [ 'x-real-ip' ] ||
65+ headersLower [ 'x-client-ip' ] ||
66+ headersLower [ 'x-cluster-client-ip' ] ||
67+ headersLower [ 'forwarded' ] ||
68+ headersLower [ 'remote-addr' ] ||
69+ headersLower [ 'client-ip' ] ||
70+ headersLower [ 'client-address' ] ||
71+ headersLower [ 'client' ] ||
72+ headersLower [ 'x-host' ] ||
73+ null ) ;
74+
5975 return headersLower [ 'x-forwarded-for' ] ?. split ( ',' ) . shift ( ) . trim ( ) ||
6076 headersLower [ 'x-real-ip' ] ||
6177 headersLower [ 'x-client-ip' ] ||
0 commit comments