diff --git a/src/frontend/app/administration/user/user-administration.component.html b/src/frontend/app/administration/user/user-administration.component.html
index b81d74506d97dba7e707e20594f0d57f33c595d5..bb5a3ecc067c01ad7d472c1c4cca620d459f74ae 100755
--- a/src/frontend/app/administration/user/user-administration.component.html
+++ b/src/frontend/app/administration/user/user-administration.component.html
@@ -174,7 +174,7 @@
                                     <mat-form-field>
                                         <input matInput type="tel" id="phone" name="phone" title="{{lang.phoneNumber}}"
                                             placeholder="{{lang.phoneNumber}}" [(ngModel)]="user.phone"
-                                            pattern="\+?((|\ |\.|\(|\)|\-)?(\d)*)*\d$">
+                                            pattern="\+?((|\ |\.|\(|\)|\-)?(\d)*)*\d$" [disabled]="!canManagePersonalDatas || !canViewPersonalDatas">
                                     </mat-form-field>
                                 </div>
                             </div>
@@ -356,8 +356,8 @@
                             </mat-tab-group>
                         </div>
                     </mat-tab>
-                    <mat-tab *ngIf="!creationMode" label="{{lang.signatures}}">
-                        <div dnd-droppable matTooltip="{{lang.uploadSignFileInfo}}"
+                    <mat-tab *ngIf="!creationMode" label="{{lang.signatures}}" [disabled]="!canViewPersonalDatas">
+                        <div *ngIf="canManagePersonalDatas" dnd-droppable matTooltip="{{lang.uploadSignFileInfo}}"
                             (click)="clickOnUploader('uploadSignFile')" [class.dndFileHighlighted]="highlightMe"
                             (dragover)="highlightMe=true" (dragleave)="highlightMe=false"
                             (onDropSuccess)="test($event);highlightMe=false;" class="dndFile">
@@ -372,10 +372,10 @@
                                             <mat-form-field floatLabel="never">
                                                 <input matInput type="text" [(ngModel)]="signature.signature_label"
                                                     name="selectedSignatureLabel" placeholder="{{lang.label}}"
-                                                    (change)="updateSignature(i)">
+                                                    (change)="updateSignature(i)" [disabled]="!canManagePersonalDatas">
                                                 <button mat-button matSuffix mat-icon-button
                                                     (click)="deleteSignature(signature)" color="warn"
-                                                    matTooltip="{{lang.delete}}">
+                                                    matTooltip="{{lang.delete}}" [disabled]="!canManagePersonalDatas">
                                                     <mat-icon class="fa fa-times"></mat-icon>
                                                 </button>
                                             </mat-form-field>
@@ -386,7 +386,7 @@
                                 </div>
                             </div>
                             <div>
-                                <button *ngIf="user.signatures.length > 0" mat-icon-button color="primary" (click)="syncMP()"
+                                <button *ngIf="user.signatures.length > 0 && canManagePersonalDatas" mat-icon-button color="primary" (click)="syncMP()"
                                     matTooltip="{{lang.syncSignsToMaarchParapheur}}"
                                     [disabled]="!user.external_id.maarchParapheur || loadingSign">
                                     <mat-icon class="fa fa-sync-alt fa-2x" [class.fa-spin]="loadingSign"></mat-icon>
diff --git a/src/frontend/app/administration/user/user-administration.component.ts b/src/frontend/app/administration/user/user-administration.component.ts
index 74b340d251da6c9bfe23e32b8affe349a5c3fbe5..03a66279e0fda935b3fbd1d9c711b9db5e083a2f 100755
--- a/src/frontend/app/administration/user/user-administration.component.ts
+++ b/src/frontend/app/administration/user/user-administration.component.ts
@@ -15,6 +15,7 @@ import { SelectionModel } from '@angular/cdk/collections';
 import { AccountLinkComponent } from './account-link/account-link.component';
 import { AppService } from '../../../service/app.service';
 import { MenuShortcutComponent } from '../../menu/menu-shortcut.component';
+import { PrivilegeService } from '../../../service/privileges.service';
 
 declare function $j(selector: any): any;
 
@@ -84,6 +85,9 @@ export class UserAdministrationComponent implements OnInit {
     selectedTabIndex: number = 0;
     maarchParapheurConnectionStatus = true;
 
+    canViewPersonalDatas: boolean = false;
+    canManagePersonalDatas: boolean = false;
+
     @ViewChild('appShortcut', { static: false }) appShortcut: MenuShortcutComponent;
 
     @ViewChild(MatPaginator, { static: false }) paginator: MatPaginator;
@@ -118,7 +122,8 @@ export class UserAdministrationComponent implements OnInit {
         public dialog: MatDialog, 
         private headerService: HeaderService, 
         private _formBuilder: FormBuilder,
-        public appService: AppService
+        public appService: AppService,
+        private privilegeService: PrivilegeService
     ) {
         $j("link[href='merged_css.php']").remove();
         window['angularUserAdministrationComponent'] = {
@@ -137,6 +142,8 @@ export class UserAdministrationComponent implements OnInit {
 
                 this.headerService.setHeader(this.lang.userCreation);
                 this.creationMode = true;
+                this.canViewPersonalDatas = true;
+                this.canManagePersonalDatas = true;
                 this.loading = false;
             } else {
                 window['MainHeaderComponent'].setSnav(this.sidenavLeft);
@@ -148,6 +155,18 @@ export class UserAdministrationComponent implements OnInit {
                     .subscribe((data: any) => {
                         this.user = data;
 
+                        if (this.headerService.user.id === this.user.id) {
+                            this.canViewPersonalDatas = true;
+                            this.canManagePersonalDatas = true;
+                        } else {
+                            this.canViewPersonalDatas = this.privilegeService.hasCurrentUserPrivilege('view_personal_data');
+                            this.canManagePersonalDatas = this.privilegeService.hasCurrentUserPrivilege('manage_personal_data');
+                        }
+                        
+                        
+                        if (!this.canViewPersonalDatas) {
+                            this.user.phone = '****';
+                        }
                         this.data = data.history;
                         this.userId = data.user_id;
                         this.minDate = new Date(this.CurrentYear + '-' + this.currentMonth + '-01');
diff --git a/src/frontend/lang/lang-en.ts b/src/frontend/lang/lang-en.ts
index 5e96bca2ed96b644e8f86bc47b2936e2bbce7a4b..d2557ca0b339c1c1226383cb7f4b7ec48867ae75 100755
--- a/src/frontend/lang/lang-en.ts
+++ b/src/frontend/lang/lang-en.ts
@@ -1299,4 +1299,5 @@ export const LANG_EN = {
     "reallyWantToDeleteThisGroup"   : "Do you really want to remove this group ?",
     "contact_entity"   : "Entity",
     "contact_third"   : "Contact third",
+    "confidentialityAndSecurity"   : "Confidentiality and security",
 };
diff --git a/src/frontend/lang/lang-fr.ts b/src/frontend/lang/lang-fr.ts
index 8e39059ba0976c0a8785f4d95c47cd71bb69bc78..f1dc93e4d24f22ffc98269c0c1b3c1c5b7941443 100755
--- a/src/frontend/lang/lang-fr.ts
+++ b/src/frontend/lang/lang-fr.ts
@@ -1337,4 +1337,5 @@ export const LANG_FR = {
     "invalidToken" : "Le jeton est expiré ou n'existe plus",
     "contact_entity"   : "Entité",
     "contact_third"   : "Tier bénéficiaire",
+    "confidentialityAndSecurity"   : "Vie privée et sécurité",
 };
diff --git a/src/frontend/lang/lang-nl.ts b/src/frontend/lang/lang-nl.ts
index 6de2e03b5b04487b85ad123e0b05f1e95d0cb928..4ab77ef1f3741491e840fd752533e42844246371 100755
--- a/src/frontend/lang/lang-nl.ts
+++ b/src/frontend/lang/lang-nl.ts
@@ -1324,4 +1324,5 @@ export const LANG_NL = {
     "reallyWantToDeleteThisGroup"   : "Do you really want to remove this group ?", //_TO_TRANSLATE
     "contact_entity"   : "Entity", //_TO_TRANSLATE
     "contact_third"   : "Contact third", //_TO_TRANSLATE
+    "confidentialityAndSecurity"   : "Confidentiality and security", //_TO_TRANSLATE
 };
diff --git a/src/frontend/service/privileges.service.ts b/src/frontend/service/privileges.service.ts
index ea1fbfddf4f04f47de184d9d1c1044681e6ba963..a6179ac880b01299a4aaaab1a9c523fcc755a9b6 100644
--- a/src/frontend/service/privileges.service.ts
+++ b/src/frontend/service/privileges.service.ts
@@ -444,13 +444,13 @@ export class PrivilegeService {
             "id": "view_personal_data",
             "label": this.lang.viewPersonalData,
             "comment": this.lang.viewPersonalData,
-            "unit": 'application'
+            "unit": 'confidentialityAndSecurity'
         },
         {
             "id": "manage_personal_data",
             "label": this.lang.managePersonalData,
             "comment": this.lang.managePersonalData,
-            "unit": 'application'
+            "unit": 'confidentialityAndSecurity'
         }
     ];