/ / Utilizzo di Drupal per l'autenticazione non Drupal - apache, drupal

Utilizzo di Drupal per l'autenticazione non Drupal - apache, drupal

Ho un server web Apache con Drupal sul webradice. Ho anche alcuni contenuti non Drupal nelle sottodirectory della radice. Vorrei che il contenuto non Drupal non fosse accessibile a meno che l'utente non abbia effettuato prima l'accesso a Drupal.

"Mi sono imbattuto usando mod_auth_mysql (inserisci la descrizione del collegamento qui), ma non è esattamente quello che voglio. Richiede che l'utente acceda due volte (una volta a Drupal e una volta per il contenuto non Drupal).

Immagino che la soluzione sarebbe qualcosa come avere .htaccess che esegue uno script per determinare se l'utente ha effettuato l'accesso. Questo script dovrebbe essere collegato al sistema Drupal.

È possibile utilizzare .htaccess per eseguire uno script per determinare se l'accesso deve essere concesso?

O c'è una soluzione migliore?

risposte:

1 per risposta № 1

L'ho implementato caricando parzialmente Drupal (tramite DRUPAL_BOOTSTRAP_SESSION), quindi controllando $ user global.

<?php
$base_url = "http://".$_SERVER["HTTP_HOST"];
$drupal_path = "../../";
$cdir = getcwd();
chdir($drupal_path);
require_once "includes/bootstrap.inc";
drupal_bootstrap(DRUPAL_BOOTSTRAP_SESSION);
chdir($cdir);

global $user;

$access_granted = in_array("authenticated user", $user->roles);
if (!$access_granted):
//Show page
else:
//Show access denied
endif;
?>