diff --git a/htdocs/user/class/user.class.php b/htdocs/user/class/user.class.php
index b5337425376dfb8f4975c6a4621d8e3832a1ea35..9dc387dc8b6db1c9f17013629ab865b052da3dc2 100644
--- a/htdocs/user/class/user.class.php
+++ b/htdocs/user/class/user.class.php
@@ -41,6 +41,8 @@ class User extends CommonObject
 	protected $ismultientitymanaged = 1;	// 0=No test on entity, 1=Test with field entity, 2=Test with link by societe
 
 	var $id=0;
+	var $ref;
+	var $ref_ext;
 	var $ldap_sid;
 	var $search_sid;
 	var $nom;		// TODO deprecated
diff --git a/htdocs/webservices/server_user.php b/htdocs/webservices/server_user.php
index 08f720b7921d689052be1bc7cd8311cba9686f56..55b991fb93f70dd77870af2af43c0e9c9030fe1b 100644
--- a/htdocs/webservices/server_user.php
+++ b/htdocs/webservices/server_user.php
@@ -178,7 +178,10 @@ function getUser($authentication,$id,$ref='',$ref_ext='')
     {
         $fuser->getrights();
 
-        if ($fuser->rights->user->user->lire || ($fuser->rights->user->self->creer && $fuser->id = $id))
+        if ($fuser->rights->user->user->lire
+        	|| ($fuser->rights->user->self->creer && $id && $id=$fuser->id)
+        	|| ($fuser->rights->user->self->creer && $ref && $ref=$fuser->login)
+        	|| ($fuser->rights->user->self->creer && $ref_ext && $ref_ext=$fuser->ref_ext))
         {
             $user=new User($db);
             $result=$user->fetch($id,$ref,$ref_ext);