Espai dels administradors

De Gwiki
Dreceres ràpides: navegació, cerca

Publicació noves versions

Neteja

  • Netejar carpeta feina guardies
  • Netejar carpeta images
  • Netejar logs
  • Eliminar carpeta gassist-server2, plesk, plesk-stat, nbproject
  • Eliminar carpeta upload_mails

Gassist lliure

  • Eliminar carpetes abs*, CCC*, ass_servei*, sort*, ctrl_prof
  • Modificar guard i esborrar
  • A func/constants, modificar la capçalera de dades sms
  • Obfuscar connect_sms.php
  • login de google
    • login_google.php - Capçalera
    • index.php - capçalera
    • logout.php
    • mobi/index.php
  • Buidar
    • imatges/ de professors i alumnes
    • Els upload de mails professors i alumnes
  • BBDD
    • Taula config a 0
    • user i pass d'admin i vlino
    • Dates de centre amb X

Gimport

Al server:

  • Re-etiquetar la carpeta gimport i afegir la nova carpeta
  • Pujar-ho
  • Retocar el "Munta el config()" a login-exec.php
  • Esborrar el fitxer config.php
  • Buidar l'upload

Activar Google Login in en instal.lacions lliures

Després d'haver fet l'actualització pertinent, per defecte el servei està deshabilitat. Per habilitarlo has de seguir els següents passos

  • Sol.licitar-nos la creació de credencials. Seguir les instruccions que us passarem per validar el domini
  • Una vegada rebudes les credencials i validat el domini
    • Actualitzar al fitxer login_google.php la informació que es veu a continuació amb la informació proporcionada
	//Insert your cient ID and secret 
	//You can get it from : https://console.developers.google.com/
	$client_id = 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'; 
	$client_secret = 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX';
	$redirect_uri = 'https://www.XXXXXXX.cat/tutoria_goo/login_google.php';
	$adrecaRetorn =  'https://www.XXXXXXX.cat/tutoria_goo/index.php?logout=1';
    • Actualitzar el fitxer index.php la informació que es veu a continuació amb la informació proporcionada
	//Insert your cient ID and secret 
	//You can get it from : https://console.developers.google.com/
	$client_id = 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'; 
	$client_secret = 'XXXXXXXXXXXXXXXXXXXXX';
	$redirect_uri = 'https://www.XXXXXXX.cat/tutoria_goo/login_google.php';

Activar Google Login in en instal.lacions hosting

Després d'haver fet l'actualització pertinent, per defecte el servei està deshabilitat. Per habilitarlo has de seguir els següents passos

  • Sol.licitar-nos la creació de credencials.Si s'escau, seguir les instruccions que us passarem per validar el domini
  • Una vegada rebudes les credencials i validat el domini
    • Actualitzar al fitxer login_google.php la informació que es veu a continuació amb la informació proporcionada
	//Insert your cient ID and secret 
	//You can get it from : https://console.developers.google.com/
	$client_id = 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'; 
	$client_secret = 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX';
	$redirect_uri = 'https://www.XXXXXXX.cat/tutoria_goo/login_google.php';
	$adrecaRetorn =  'https://www.XXXXXXX.cat/tutoria_goo/index.php?logout=1';
    • Actualitzar el fitxer index.php la informació que es veu a continuació amb la informació proporcionada
	//Insert your cient ID and secret 
	//You can get it from : https://console.developers.google.com/
	$client_id = 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'; 
	$client_secret = 'XXXXXXXXXXXXXXXXXXXXX';
	$redirect_uri = 'https://www.XXXXXXX.cat/tutoria_goo/login_google.php';

Login amb Google a Gassist

Per poder habilitar el login amb google a Gassist hem hagut de seguir els següents passos

Alta a la console developers

Hem de tenir un compte de google per poder-hi accedir

  • Hem de donar d'alta un projecte. En podem crear múltiples.
  • Una vegada creat, li hem de donar nom a "Pantalla de autorización de OAuth"
  • Durant el procés s'haurà de demostrar que som l'administrador del domini vinculat. Planteja diferents formes de demostrar-ho en funció dels diferents nivells d'accés que tinguem al hosting/servidor/domini
  • Una vegada donat d'alta,
    • Crear unes credencials.
    • Quan ens pregunti li hem de respondre "Id de cliente OAuth".
    • A continuació , "Web".
    • Una vegada creades les credencials, clicant a sobre ens dóna una informació que ens farà falta en la gestió de login via google: un id de client, una password secreta, i haurem de completar la URI de redireccionament autoritzat que ha de contenir el fitxer al que cridarà goolgle quan ja hagi validat , o no, l'usuari. Pot trigar uns minuts en estar actiu

Retocs en el programa

  • Afegir mod_login_google a la base de dades amb el valor 1. Per defecte, 0
  • Afegir la carpeta google
  • Afegir login_google.php.
    • Recordar de treure la informació de l'id, secret key i URI de retorn
    • Personalitzar l'adreça de retorn
  • Traspassar la imatge amb el logo de logout amb la "G" de google. es troba a images/icons/icon_exit_red_G.png
  • retocar index.php
    • Afegir a partir de la línia 12
        require_once ('./google/libraries/Google/autoload.php');

	//Insert your cient ID and secret 
	//You can get it from : https://console.developers.google.com/
	$client_id = 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'; 
	$client_secret = 'XXXXXXXXXXXXXXXXXXXXXXX';
	$redirect_uri = 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX';
        $hosting        = XXXXXX; 

	//incase of logout request, just unset the session var
	if (isset($_GET['logout'])) {
	  unset($_SESSION['access_token']);
	}

	/************************************************
	  Make an API request on behalf of a user. In
	  this case we need to have a valid OAuth 2.0
	  token for the user, so we need to send them
	  through a login flow. To do this we need some
	  information from our API console project.
	 ************************************************/
	$client = new Google_Client();
	$client->setClientId($client_id);
	$client->setClientSecret($client_secret);
	$client->setRedirectUri($redirect_uri);
	$client->addScope("email");
	$client->addScope("profile");

	/************************************************
	  When we create the service here, we pass the
	  client to it. The client then queries the service
	  for the required scopes, and uses that when
	  generating the authentication URL later.
	 ************************************************/
	$service = new Google_Service_Oauth2($client);

	/************************************************
	  If we have a code back from the OAuth 2.0 flow,
	  we need to exchange that with the authenticate()
	  function. We store the resultant access token
	  bundle in the session, and redirect to ourself.
	*/
	  
	if (isset($_GET['code'])) {
	  $client->authenticate($_GET['code']);
	  $_SESSION['access_token'] = $client->getAccessToken();
	  header('Location: ' . filter_var($redirect_uri, FILTER_SANITIZE_URL));
	  exit;
	}

	/************************************************
	  If we have an access token, we can make
	  requests, else we generate an authentication URL.
	 ************************************************/
	if (isset($_SESSION['access_token']) && $_SESSION['access_token']) {
	  $client->setAccessToken($_SESSION['access_token']);
	  
	} else {
	  $authUrl = $client->createAuthUrl();
	 }

    • Entre la <tr> de contrasenya i la <tr> de captcha afegir aquestes línies
   <tr>
      <td> </td> 
      <td align="left">
      <?php	
      $modul_login_google = getModulsActius()->mod_login_google;
      if ($modul_login_google)
          {						
	  if (isset($authUrl)){ echo '<a class="login" href="' . $authUrl . '"><img src="./google/images/google-login-button.png" /></a>';}                
	  }
      else
	  {
	  print( '<img src="./google/images/google-login-button.png" />');
	  }
       ?>
       </td>
    </tr>
  • Retocar home.php
    • Després de la funció sortir afegir la funció següent
   function sortirg(idprofessors) {
   var url = './ctrl_prof/ctrl_prof_reg_out_home.php';
			
   if (idprofessors == 0) {
	location.href = './logout.php?google=1'; 
	}
   else {
	$.messager.confirm('Confirmar','VOLS SORTIR DE GASSIST I GOOGLE?',function(r){  
	if (r){
   	     location.href = './logout.php?google=1';
	}
	});
	}
       }

Després de la línia td amb l'icon_key.png substituir

    <td valign="top" align="right" width="40">
    <a href="javascript:void(0)" title="Sortir del sistema" onClick="sortir(<?=$idprofessors?>)" class="easyui-tooltip">
    <img src="./images/icons/icon_exit_red.png" width="35" height="35" border="0"></a>
     
    </td>

per

   <?php
   $modul_login_google = getModulsActius()->mod_login_google;
   if (isset($_SESSION['access_token']) && $_SESSION['access_token'] && $modul_login_google) 
	{
        ?>	
	<td valign="top" align="right" width="40">
	<a href="javascript:void(0)" title="Sortir de Gassist" onClick="sortir(<?=$idprofessors?>)" class="easyui-tooltip">
	<img src="./images/icons/icon_exit_red.png" width="35" height="35" border="0"></a> 
	</td>
	<td valign="top" align="right" width="40">   
	<a href="javascript:void(0)" title="Sortir de Gassist i Google" onClick="sortirg(<?=$idprofessors?>)" class="easyui-tooltip">
	<img src="./images/icons/icon_exit_red_G.png" width="35" height="35" border="0"></a> 
	</td>
	<?php
	}
   else
	{
	?>			
	<td valign="top" align="right" width="40">
        <a href="javascript:void(0)" title="Sortir del sistema" onClick="sortir(<?=$idprofessors?>)" class="easyui-tooltip">
	<img src="./images/icons/icon_exit_red.png" width="35" height="35" border="0"></a>
	 
	</td>				
	<?php	} ?>
  • Retocar el fitxer logout
    • Retocar l'adreça de retorn
    • Substituir el header del final del fitxer per
   $adrecaRetorn =  'https://www.XXXXX.XXX/tutoria/index.php?logout=1';
      if ($_GET['google'] == 1)
	{
	header('Location: https://www.google.com/accounts/Logout?continue=https://appengine.google.com/_ah/logout?continue='.$adrecaRetorn.'');
	}
      else
	{header('Location: index.php');}