Jump to content
  • 0
Stefano Costantini

Autenticare un'app esterna

Question

Stefano Costantini

Ciao a tutti, ho appena aggiornato alla versione 4.4.10, ho un quesito: volendo far autenticare un sito web esterno con le stesse credenziali che gli utenti usano sul forum c'è qualche suggerimento? Qualche plugin? O semplicemente qualche idea? :)

Grazie

Share this post


Link to post
Share on other sites

6 answers to this question

Recommended Posts

  • 0
Askancy
4 ore fa, Stefano Costantini ha scritto:

Ciao a tutti, ho appena aggiornato alla versione 4.4.10, ho un quesito: volendo far autenticare un sito web esterno con le stesse credenziali che gli utenti usano sul forum c'è qualche suggerimento? Qualche plugin? O semplicemente qualche idea? :)

Ciao Stefano, il sito come è fatto? WordPress, Laravel etc...? Abbiamo bisogno di conoscere cosa e come hai strutturato il tuo sito per darti una mano...

Share this post


Link to post
Share on other sites
  • 0
Stefano Costantini

La web app che dobbiamo autenticare è scritta da uno sviluppatore amico quindi direi che può farla come gli chiediamo. 

Share this post


Link to post
Share on other sites
  • 0
Askancy
20 minuti fa, BomAle ha scritto:

potresti utilizzare i file che trovi qui => https://github.com/sijad/IPS4RemoteLogin

Questo script non utilizza ancora ips_connect? Perché se così fosse è obsoleto...

 

28 minuti fa, Stefano Costantini ha scritto:

La web app che dobbiamo autenticare è scritta da uno sviluppatore amico quindi direi che può farla come gli chiediamo. 

Puoi utilizzare l'autenticazione tramite OAuth 2.0.

Share this post


Link to post
Share on other sites
  • 0
BomAle

non sono sicuro compareHashes sia ancora utilizzabile ma in alternativa può utilizzare il metodo standard di autentificazione https://invisioncommunity.com/forums/topic/445586-external-login-issue-with-43/?do=findComment&comment=2742731

Cita

With 4.3 onwards, we're now using the native PHP methods for password handling, you could use password_verify() to validate the hash, however, I would recommend using the built in methods.

If you explicitly want to check the internal authentication only, you could do something like this...


	require '/path/to/invision/community/init.php'; // Including init.php sets up framework
	
	$member = \IPS\Member::load( $_POST['username'], 'name' ); // Second parameter can be 'name', 'email' or not specified for member ID
	
	if ( $member->member_id )
	{
		if ( \IPS\Login\Handler::findMethod( 'IPS\Login\Handler\Standard' )->authenticatePasswordForMember( $member, \IPS\Request::i()->password ) )
		{				
			$device = \IPS\Member\Device::loadOrCreate( $member );
			$device->updateAfterAuthentication( TRUE ); // TRUE is "Remember Me"
			
			// Logged In!
		}
		else
		{
			// Password incorrect
		}
	}
	else
	{
		// Username doesn't exist
	}

 

Edited by BomAle

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. to insert a cookie message.