Source Composant "Up ! Security Manager" Version 4.0.0;
ImporterModule
/*************/
UpsSec(<UpsSec.upi>, ImporterDefinitions);
Parametre <upssec> Section "UpsSec"
/*********************************/
Prive :
/*****/
Action : Nul Ou Caractere;
Detail : Booleen;
Entete : Booleen;
Description : Nul Ou Caractere;
NomDeLUtilisateur "NomUtilisateur" : Nul Ou Caractere;
NomDuRole "NomRole" : Nul Ou Caractere;
MotDePasse : Nul Ou Caractere;
AncienMotDePasse : Nul Ou Caractere;
NouveauMotDePasse : Nul Ou Caractere;
SourceSecurite "Source": Nul Ou Caractere;
Prive :
/*****/
Fonction ChercherRole() Retourner Nul Ou Role
/*******************************************/
Variable
/******/
R : Nul Ou Role;
Debut
Si NomDuRole==Nul Alors
Retourner Nul;
Fin Si
R=Role.EnumererObjets(Nul);
TantQue R!=Nul Faire
Si R.Nom==NomDuRole Alors
Fin TantQue
Retourner R;
Fin Si
R=Role.EnumererObjets(R);
Fin Fonction
Fonction ChercherUtilisateur() Retourner Nul Ou Utilisateur
/*********************************************************/
Variable
/******/
U : Nul Ou Utilisateur;
Debut
Si NomDeLUtilisateur==Nul Alors
Retourner Nul;
Fin Si
U=Utilisateur.EnumererObjets(Nul);
TantQue U!=Nul Faire
Si U.Nom==NomDeLUtilisateur Alors
Fin TantQue
Retourner U;
Fin Si
U=Utilisateur.EnumererObjets(U);
Fin Fonction
Fonction ExecuterCreerRole() Retourner Entier
/*******************************************/
Variable
R : Nul Ou Role;
Debut
Si NomDuRole==Nul Alors
Ecran.Ecrire(Message(UpsSec, "UsageUpsSecCreerRole"));
Fin Si
Retourner 1;
Si Detail Alors
Ecran.Ecrire(Message(UpsSec,"CreationDuRole",NomDuRole));
Fin Si
R=Role(NomDuRole, Description);
Ecran.Ecrire(Message(UpsSec,"CreationRoleTerminee",NomDuRole));
Retourner 0;
Fin Fonction
Fonction ExecuterCreerUtilisateur() Retourner Entier
/**************************************************/
Variable
U : Nul Ou Utilisateur;
Debut
Si NomDeLUtilisateur==Nul Alors
Ecran.Ecrire(Message(UpsSec,"UsageUpsSecCreerUtilisateur"));
Fin Si
Retourner 1;
Si Detail Alors
Ecran.Ecrire(Message(UpsSec,"CreationDeLUtilisateur",NomDeLUtilisateur));
Fin Si
U=Utilisateur(NomDeLUtilisateur, Description, MotDePasse);
Ecran.Ecrire(Message(UpsSec,"CreationUtilisateurTerminee",NomDeLUtilisateur));
Retourner 0;
Fin Fonction
Procedure EnvoyerMessage(MessageEnvoye:Caractere, ?:Entier, ?:Entier, ?:Nul Ou Caractere)
/***************************************************************************************/
Debut
Ecran.Ecrire(MessageEnvoye);
Fin Procedure
Fonction ExecuterExporterSecurite() Retourner Entier
/**************************************************/
Debut
Si SourceSecurite==Nul Alors
Ecran.Ecrire(Message(UpsSec,"UsageUpsSecExporterSecurite"));
Fin Si
Retourner 1;
Si Detail Alors
Ecran.Ecrire(Message(UpsSec,"ExportationDeLaSecurite",SourceSecurite));
Sinon
Si ExporterSecurite(SourceSecurite,NomDuRole,EnvoyerMessage) Alors
Ecran.Ecrire(Message(UpsSec,"ExportationSecuriteTermineeAvecSucces",SourceSecurite));
Sinon
Retourner 0;
Ecran.Ecrire(Message(UpsSec,"ExportationSecuriteTermineeEnEchec",SourceSecurite));
Fin Si
Retourner 1;
Si ExporterSecurite(SourceSecurite,NomDuRole,Nul) Alors
Fin Si
Ecran.Ecrire(Message(UpsSec,"ExportationSecuriteTermineeAvecSucces",SourceSecurite));
Sinon
Retourner 0;
Ecran.Ecrire(Message(UpsSec,"ExportationSecuriteTermineeEnEchec",SourceSecurite));
Fin Si
Retourner 1;
Fin Fonction
Fonction ExecuterImporterSecurite() Retourner Entier
/**************************************************/
Debut
Si SourceSecurite==Nul Alors
Ecran.Ecrire(Message(UpsSec,"UsageUpsSecImporterSecurite"));
Fin Si
Retourner 1;
Si Detail Alors
Ecran.Ecrire(Message(UpsSec,"ImportationDeLaSecurite",SourceSecurite));
Sinon
Si ImporterSecurite(SourceSecurite,EnvoyerMessage) Alors
Ecran.Ecrire(Message(UpsSec,"ImportationSecuriteTermineeAvecSucces",SourceSecurite));
Sinon
Retourner 0;
Ecran.Ecrire(Message(UpsSec,"ImportationSecuriteTermineeEnEchec",SourceSecurite));
Fin Si
Retourner 1;
Si ImporterSecurite(SourceSecurite,Nul) Alors
Fin Si
Ecran.Ecrire(Message(UpsSec,"ImportationSecuriteTermineeAvecSucces",SourceSecurite));
Sinon
Retourner 0;
Ecran.Ecrire(Message(UpsSec,"ImportationSecuriteTermineeEnEchec",SourceSecurite));
Fin Si
Retourner 1;
Fin Fonction
Fonction ExecuterModifierMotDePasse() Retourner Entier
/****************************************************/
Variable
U : Nul Ou Utilisateur;
Debut
U=ChercherUtilisateur();
Si U==Nul Alors
Ecran.Ecrire(Message(UpsSec,"UsageUpsSecModifierMotDePasse"));
Fin Si
Retourner 1;
Si Detail Alors
Ecran.Ecrire(Message(UpsSec,"ModificationDuMotDePasse",NomDeLUtilisateur));
Fin Si
U.ModifierMotDePasse(AncienMotDePasse,NouveauMotDePasse);
Ecran.Ecrire(Message(UpsSec,"ModificationMotDePasseTerminee",NomDeLUtilisateur));
Retourner 0;
Fin Fonction
Fonction ExecuterSupprimerRole() Retourner Entier
/***********************************************/
Variable
R : Nul Ou Role;
Debut
R=ChercherRole();
Si R==Nul Alors
Ecran.Ecrire(Message(UpsSec,"UsageUpsSecSupprimerRole"));
Fin Si
Retourner 1;
Si Detail Alors
Ecran.Ecrire(Message(UpsSec,"SuppressionDuRole",NomDuRole));
Fin Si
R.Supprimer();
Ecran.Ecrire(Message(UpsSec,"SuppressionRoleTerminee",NomDuRole));
Retourner 0;
Fin Fonction
Fonction ExecuterSupprimerUtilisateur() Retourner Entier
/******************************************************/
Variable
U : Nul Ou Utilisateur;
Debut
U=ChercherUtilisateur();
Si U==Nul Alors
Ecran.Ecrire(Message(UpsSec,"UsageUpsSecSupprimerUtilisateur"));
Fin Si
Retourner 1;
Si Detail Alors
Ecran.Ecrire(Message(UpsSec,"SuppressionDeLUtilisateur",NomDeLUtilisateur));
Fin Si
U.Supprimer();
Ecran.Ecrire(Message(UpsSec,"SuppressionUtilisateurTerminee",NomDeLUtilisateur));
Retourner 0;
Fin Fonction
Principal Habilitation
/********************/
Debut
Si Entete Alors
Ecran.Ecrire(Message(UpsSec,"PresentationUpsSec1")+"\n");
Fin Si
Ecran.Ecrire(Message(UpsSec,"PresentationUpsSec2",Caractere(DateSysteme(),FiltreDate),Caractere(DateSysteme(),FiltreHeure))+"\n");
Selon Action Faire
Cas Pour Traduire(UpsSec,SectionDivers,"CreerRole") Faire
Fin Selon
Retourner ExecuterCreerRole();
Fin Cas
Cas Pour Traduire(UpsSec,SectionDivers,"CreerUtilisateur") Faire
Retourner ExecuterCreerUtilisateur();
Fin Cas
Cas Pour Traduire(UpsSec,SectionDivers,"ExporterSecurite") Faire
Retourner ExecuterExporterSecurite();
Fin Cas
Cas Pour Traduire(UpsSec,SectionDivers,"ImporterSecurite") Faire
Retourner ExecuterImporterSecurite();
Fin Cas
Cas Pour Traduire(UpsSec,SectionDivers,"ModifierMotDePasse") Faire
Retourner ExecuterModifierMotDePasse();
Fin Cas
Cas Pour Traduire(UpsSec,SectionDivers,"SupprimerRole") Faire
Retourner ExecuterSupprimerRole();
Fin Cas
Cas Pour Traduire(UpsSec,SectionDivers,"SupprimerUtilisateur") Faire
Retourner ExecuterSupprimerUtilisateur();
Fin Cas
Defaut
Ecran.Ecrire(Message(UpsSec,"UsageUpsSec"));
Fin Defaut
Retourner 1;
Fin Principal