Sommario
Nel presente articolo sono descritti i metodi web del Web Service LoginManager.
Elenco metodi web
Per facilitare la ricerca di uno specifico metodo sono di seguito elencati i metodi web trattati nel proseguo dell'articolo:
- ChangePassword
- EnumAllUsers
- EnumCompanies
- GetAuthenticationInformations
- GetAuthenticationNames
- GetCompanyLanguage
- GetCompanyLoggedUsersNumber
- GetCompanyUsers
- GetDatabaseType
- GetDbOwner
- GetLoggedUsers
- GetLoggedUsersNumber
- GetLoginInformation
- GetNonNTCompanyUsers
- GetRoleUsers
- GetSystemDBConnectionString
- GetUserInfo
- GetUserInfoID
- GetUserName
- GetUserRoles
- HasUserAlreadyChangedPasswordToday
- IsActivated
- IsCalAvailable
- IsValidToken
- LogOff
- Login
- LoginCompact
- ValidateUser
ChangePassword
Il metodo ChangePassword consente di cambiare la password di un utente.
int ChangePassword(
string userName,
string oldPassword,
string newPassword
)
Parametri input
Nome | Descrizione |
userName | nome dell'utente |
oldPassword | vecchia password dell'utente |
newPassword | nuova password dell'utente |
Valore di ritorno
Valore intero il cui significato è illustrato nella seguente tabella:
Valore | Significato |
0 | Nessun errore |
1 | E' fallita la connessione al database di sistema |
13 | L'utente non esiste nel database di sistema e/o password errata |
15 | Errore nella modifica della password |
16 | Password scaduta |
17 | Password troppo corta |
35 | L'utente è bloccato, è necessario sbloccarlo |
36 | Impossibile modificare la password molte volte nella stessa giornata |
EnumAllUsers
Il metodo EnumAllUsers permette di avere l'elenco di tutti gli utenti di tutte le aziende di Perfetto.
StringCollection EnumAllUsers()
Valore di ritorno
Collezione di stringhe contenente i nomi di tutti gli utenti di tutte le aziende.
EnumCompanies
Il metodo EnumCompanies fornisce l'elenco di tutte le aziende associate ad un specifico utente.
StringCollection EnumCompanies(string userName)
Parametri input
Nome | Descrizione |
userName | nome dell'utente |
Valore di ritorno
Collezione di stringhe contenente i nomi di tutte le aziende associate ad un specifico utente.
GetAuthenticationInformations
Il metodo GetAuthenticationInformations permette di ottenere le informazioni relative a un token di autentificazione.
bool GetAuthenticationInformations( string authenticationToken, out int loginId, out int companyId, out bool webLogin )
Parametri input
Nome | Descrizione |
authenticationToken | codice di autenticazione |
Parametri output
Nome | Descrizione |
loginId | valore ID dell'utente |
companyId | valore ID dell'azienda |
webLogin | true se l'utente è di tipo web (abilitato a EasyLook e MagicDocument) |
Valore di ritorno
Valore booleano che se impostato a true indica che il metodo è stato completato con successo.
GetAuthenticationNames
Il metodo GetAuthenticationNames consente di avere il nome dell'utente e il nome dell'azienda associati a un codice di autenticazione.
bool GetAuthenticationNames( string authenticationToken, out string userName, out string companyName )
Parametri input
Nome | Descrizione |
authenticationToken | codice di autenticazione |
Parametri output
Nome | Descrizione |
userName | nome dell'utente |
companyName | nome dell'azienda |
Valore di ritorno
Valore booleano che se impostato a true indica che il metodo è stato completato con successo.
GetCompanyLanguage
Il metodo GetCompanyLanguage permette di conoscere la lingua dell'interfaccia utente e dell'applicazione di una specifica azienda.
void GetCompanyLanguage( int companyID, out string cultureUI, out string culture )
Parametri input
Nome | Descrizione |
companyID | valore ID dell'azienda |
Parametri output
Nome | Descrizione |
cultureUI | lingua dell'interfaccia utente |
culture | lingua dell'applicazione |
GetCompanyLoggedUsersNumber
Il metodo GetCompanyLoggedUsersNumber fornisce il numero di utenti collegati ad un'azienda.
int GetCompanyLoggedUsersNumber(int companyId)
Parametri input
Nome | Descrizione |
companyId | valore ID dell'azienda |
Valore di ritorno
Numero di utenti collegati ad una specifica azienda.
GetCompanyUsers
Il metodo GetCompanyUsers permette di avere l'elenco dei nomi degli utenti aziendali.
StringCollection GetCompanyUsers(string companyName)
Parametri input
Nome | Descrizione |
companyName | nome dell'azienda |
Valore di ritorno
Collezione di stringhe contenente i nomi di tutti gli utenti associati ad una specifica azienda.
GetDatabaseType
Il metodo GetDatabaseType consente di ottenere il tipo di database.
string GetDatabaseType(string providerName)
Parametri input
Nome | Descrizione |
providerName | nome del database provider |
Valore di ritorno
Stringa contenente il valore del database.
GetDbOwner
Il metodo GetDbOwner restituisce il nome del proprietario del database di una azienda.
string GetDbOwner(int companyId)
Parametri input
Nome | Descrizione |
companyId | valore ID dell'azienda |
Valore di ritorno
Proprietario di un database.
GetLoggedUsers
Il metodo GetLoggedUsers fornisce una stringa in formato XML con i dettagli degli utenti registrati.
string GetLoggedUsers()
Valore di ritorno
Stringa valorizzata con le informazioni di tutti gli utenti.
La struttura della stringa XML è la seguente:
<AllUsers>
<SmartClient> <User name="" company="" process="" slotType="" />
</SmartClient>
<Web> <User name="" company="" process="" slotType="" />
</Web>
<Office> <User name="" company="" process="" slotType="" />
</Office>
</AllUsers>
Elemento | Attributo | Significato | Occorrenze |
AllUsers | definisce la radice | 1 | |
SmartClient | definisce gli utenti SmartClient | 1 | |
User | informazioni utente | n | |
name | nome utente | 1 | |
company | nome azienda | 1 | |
process | nome processo | 1 | |
slotType | valore tipo di slot:
|
1 | |
Web | definisce gli utenti Web | 1 | |
Office | definisce gli utenti Office | 1 |
GetLoggedUsersNumber
Il metodo GetLoggedUsersNumber consente di recuperare il numero degli utenti registrati.
int GetLoggedUsersNumber()
Valore di ritorno
Numero degli utenti registrati.
GetLoginInformation
Il metodo GetLoginInformation permette di ottenere tutte le informazioni relative a un token di autentificazione.
bool GetLoginInformation( string authenticationToken, out string userName, out int loginId, out string companyName, out int companyId, out bool admin, out string dbName, out string dbServer, out int providerId, out bool security, out bool auditing, out bool useKeyedUpdate, out bool transactionUse, out bool useUnicode, out string preferredLanguage, out string applicationLanguage, out string providerName, out string providerDescription, out bool useConstParameter, out bool stripTrailingSpaces, out string providerCompanyConnectionString, out string nonProviderCompanyConnectionString, out string dbUser, out string processName )
Parametri input
Nome | Descrizione |
authenticationToken | codice di autenticazione |
Parametri output
Nome | Descrizione |
userName | nome dell'utente |
loginId | valore ID dell'utente |
companyName | nome dell'azienda |
companyId | valore ID dell'azienda |
dbName | nome del database aziendale |
dbServer | nome del server dove risiede il database |
providerId | ID del provider |
security | true se l'azienda collegata all'utente è sottoposta a sicurezza |
auditing | true se l'azienda collegata all'utente è sottoposta a auditing |
useKeyedUpdate | true se il database usa KeyedUpdate |
transactionUse | true se il database usa le transazioni |
useUnicode | true se il tipo database è unicode |
preferredLanguage | lingua interfaccia utente |
applicationLanguage | lingua dell'applicazione |
providerName | nome del database provider |
providerDescription | descrizione del database |
useConstParameter | true se l'utente database usa parametri constanti |
stripTrailingSpaces | true se toglie gli spazi finali |
providerCompanyConnectionString | stringa di connessione al database aziendale |
nonProviderCompanyConnectionString | stringa di connessione al database aziendale senza provider |
dbUser | utente database aziendale |
processName | nome del processo che ha effettuato il processo |
Valore di ritorno
Valore booleano che se impostato a true indica che il metodo è stato completato con successo.
GetNonNTCompanyUsers
Il metodo GetNonNTCompanyUsers permette di avere l'elenco dei nomi degli utenti aziendali che non sono soggetti a sicurezza integrata.
StringCollection GetNonNTCompanyUsers(string companyName)
Parametri input
Nome | Descrizione |
companyName | nome dell'azienda |
Valore di ritorno
Collezione di stringhe contenente i nomi degli utenti, associati ad una specifica azienda, che non sono soggetti a sicurezza integrata.
GetRoleUsers
Il metodo GetRoleUsers consente di conoscere tutti gli utenti aziendali con un ruolo specifico.
StringCollection GetRoleUsers(string companyName, string roleName)
Parametri input
Nome | Descrizione |
companyName | nome dell'azienda |
roleName | nome del ruolo |
Valore di ritorno
Collezione di stringhe contenente i nomi di tutti gli utenti con uno specifico ruolo, associati ad una particolare azienda.
GetSystemDBConnectionString
Il metodo GetSystemDBConnectionString restituisce la stringa di connessione al database di sistema.
string GetSystemDBConnectionString(string authenticationToken)
Parametri input
Nome | Descrizione |
authenticationToken | codice di autenticazione |
Valore di ritorno
Stringa di connessione al database di sistema.
GetUserInfo
Il metodo GetUserInfo fornisce una stringa in formato XML con le informazioni utente contenute nel file UserConfig.config.
string GetUserInfo()
Valore di ritorno
Stringa valorizzata con le informazioni utente.
La struttura della stringa XML è la seguente:
<UserInfo xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\"
xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\"> <Name></Name> <Company></Company> <VatNumber></VatNumber> <Address></Address> <VatNumber></VatNumber> <ZipCode></ZipCode> <City></City> <CityCode></CityCode> <Country></Country> <Phone></Phone> <Fax></Fax> <Email></Email> <InternalAgreement></InternalAgreement> <ExtensiveAgreement></ExtensiveAgreement> </UserInfo>
GetUserInfoID
Il metodo GetUserInfoID fornisce una stringa con il valore dell'ID utente.
string GetUserInfoID()
Valore di ritorno
Stringa contenete l'ID utente.
GetUserName
Il metodo GetUserName restituisce il nome dell'utente dato ID utente.
string GetUserName(int loginId)
Parametri input
Nome | Descrizione |
loginId | valore ID dell'utente |
Valore di ritorno
Stringa valorizzata con il nome dell'utente.
GetUserRoles
Il metodo GetUserRoles fornisce l'elenco dei ruoli associati ad un specifico utente di una particolare azienda.
StringCollection GetUserRoles(string companyName, string userName)
Parametri input
Nome | Descrizione |
companyName | nome dell'azienda |
userName | nome dell'utente |
Valore di ritorno
Collezione di stringhe contenente i ruoli associati ad un specifico utente di una azienda.
HasUserAlreadyChangedPasswordToday
Il metodo HasUserAlreadyChangedPasswordToday consente di verificare se un utente oggi ha già cambiato password.
bool HasUserAlreadyChangedPasswordToday(string user)
Parametri input
Nome | Descrizione |
user | nome dell'utente |
Valore di ritorno
Valore booleano che se impostato a true indica che l'utente oggi ha già cambiato password.
IsActivated
Il metodo IsActivated permette di sapere se una funzionalità o un modulo fisico sono stati attivati.
bool IsActivated(string application, string functionality)
Parametri input
Nome | Descrizione |
application | nome dell'applicazione |
functionality | nome della funzionalità o del modulo |
Valore di ritorno
Valore booleano che se impostato a true indica che la funzionalità o il modulo è attivo.
IsCalAvailable
Il metodo IsCalAvailable consente di verificare se esiste una CAL disponibile per una funzionalità o un modulo di un'applicazione e di associare ad essa l'utente connesso.
bool IsCalAvailable(string authenticationToken, string application, string functionality)
Parametri input
Nome | Descrizione |
authenticationToken | codice di autenticazione |
application | nome dell'applicazione |
functionality | nome della funzionalità o del modulo |
Valore di ritorno
Valore booleano che se valorizzato a true specifica che esiste una CAL disponibile.
IsValidToken
Il metodo IsValidToken permette di verificare se un codice di autenticazione è valido.
bool IsValidToken(string authenticationToken)
Parametri input
Nome | Descrizione |
authenticationToken | codice di autenticazione |
Valore di ritorno
Valore booleano che se impostato a true indica che il codice di autenticazione è valido.
LogOff
Il metodo LogOff consente di disconnettere un utente.
void LogOff(string authenticationToken)
Parametri input
Nome | Descrizione |
authenticationToken | codice di autenticazione |
Login
Il metodo Login permette ad un utente di un'azienda di accedere al prodotto e restituisce il codice di autenticazione e altre informazioni.
int Login( ref string userName, ref string companyName, string password,
string askingProcess,
bool overWriteLogin,
out bool admin,
out string authenticationToken,
out int companyId,
out string dbName,
out string dbServer,
out int providerId,
out bool security,
out bool auditing, out bool useKeyedUpdate, out bool transactionUse, out string preferredLanguage, out string applicationLanguage, out string providerName, out string providerDescription, out bool useConstParameter, out bool stripTrailingSpaces, out string providerCompanyConnectionString, out string nonProviderCompanyConnectionString, out string dbUser, out string activationDB
)
Parametri input
Nome | Descrizione |
userName | nome dell'utente |
companyName | nome dell'azienda |
password | password dell'utente |
askingProcess | nome del processo che effettua l'accesso, Producer Key |
overWriteLogin | true se la login può essere sovrascritta |
Parametri output
Nome | Descrizione |
userName | nome dell'utente |
companyName | nome dell'azienda |
admin | true se l'utente è amministratore |
authenticationToken | codice di autenticazione |
companyId | valore ID dell'azienda memorizzato nella tabella MSD_CompanyLogins |
dbName | nome del databese |
dbServer | nome del database server |
providerId | ID del provider |
security | true se l'azienda è soggetta a OSL security |
auditing | true se l'azienda è soggetta a OSL auditing |
useKeyedUpdate | true se l'aggiornamento è per chiave, false se l'aggiornamento è posizionale |
transactionUse | true se sono usate le transazioni |
preferredLanguage | lingua preferita |
applicationLanguage | lingua dell'applicazione |
providerName | nome provider |
providerDescription | descrizione provider |
useConstParameter | true se il provider supporta la sintassi ? = ? per i parametri |
stripTrailingSpaces | true se provider elimina tutti gli spazi bianchi da una stringa |
providerCompanyConnectionString | stringa di connessione aziendale usata da provader |
nonProviderCompanyConnectionString | stringa di connessione aziendale non usata da provader |
dbUser | utente del database |
activationDB | attivazione database |
Valore di ritorno
Valore intero il cui significato è illustrato nella seguente tabella:
Valore | Significato |
0 | Nessun errore |
1 | E' fallita la connessione al database di sistema |
2 | Errore in inizializzazione PathFinder |
3 | LoginManager non riesce ad inizializzare Activation Manager |
4 | Non esistono licenze per la funzione specificata |
6 | Errore in lettura tabella di licenza |
7 | Ritorna ID azienda memorizzato nella tabella del database di sistema MSD_CompanyLogins |
8 | L'utente è già collegato al sistema mediante una società diversa da quella specificata |
9 | L'utente è già collegato al sistema |
10 | Le licenze utente disponibili sono esaurite o è errato il valore della Producer Key |
11 | Impossibile associare l'utente alla licenza |
12 | Il codice di autenticazione è vuoto |
13 | L'utente non esiste nel database di sistema o password errata |
14 | Il processo non consente un accesso simultaneo |
15 | Errore in modifica password |
16 | Password scaduta |
17 | Password troppo corta |
18 | Il database aziendale è in uso da un altro utente |
19 | L'utente deve cambiare la password, ma la configurazione non lo permette |
20 | Errore di accesso generico |
21 | L'azienda specificata non esiste nel database di sistema |
22 | Il database di sistema non contiene le informazioni sul provider specificato per l'azienda |
23 | Impossibile leggere dal database di sistema i parametri di connessione per l'azienda |
24 | LoginManagerWrapper non inizializzata |
25 | LoginManager non registrato |
26 | Errore inizializzando LoginManager |
27 | LoginManager non inizializzato |
29 | Il database aziendale non esiste o non è possibile connettersi ad esso. Il database aziendale deve essere creato con l'Administration Console |
30 | Le tabelle del database aziendale non esistono. Devono essere create con l'Administration Console |
31 | Il database aziendale non è supportato dalla configurazione dell'applicazione |
32 | L'utente non può accedere alle applicazioni Web |
33 | L'utente non può accedere alle applicazioni SmartClient |
34 | Il componente EasyLook non è attivo |
35 | L'utente è bloccato, è necessario sbloccarlo |
36 | Non è possibile modificare la password più volte nella stessa giornata |
37 | Gli utenti soggetti a sicurezza integrata non possono utilizzare questa funzionalità |
38 | L'azienda specificata non è compatibile con il programma in uso |
39 | Prodotto non registrato |
40 | L'azienda specificata non è disponibile perchè non compatibile con la Standard Edition |
41 | Il modulo MagicDocuments non è utilizzabile perchè manca CAL |
42 | L'utente è già connesso al sistema con un'altra applicazione |
43 | Nel database di sistema ci sonon più utenti assegnati rispetto al numero di CAL |
LoginCompact
Il metodo LoginCompact consente l'accesso di un utente di un'azienda e restituisce il codice di autenticazione.
int LoginCompact( ref string userName, ref string companyName, string password,
string askingProcess,
bool overWriteLogin,
out string authenticationToken
)
Parametri input
Nome | Descrizione |
userName | nome dell'utente |
companyName | nome dell'azienda |
password | password dell'utente |
askingProcess | nome del processo che effettua l'accesso, Producer Key |
overWriteLogin | true se la login può essere sovrascritta |
Parametri output
Nome | Descrizione |
userName | nome dell'utente |
companyName | nome dell'azienda |
authenticationToken | codice di autenticazione |
Valore di ritorno
Valore intero il cui significato è illustrato nella seguente tabella:
Valore | Significato |
0 | Nessun errore |
1 | E' fallita la connessione al database di sistema |
2 | Errore in inizializzazione PathFinder |
3 | LoginManager non riesce ad inizializzare Activation Manager |
4 | Non esistono licenze per la funzione specificata |
6 | Errore in lettura tabella di licenza |
7 | Ritorna ID azienda memorizzato nella tabella del database di sistema MSD_CompanyLogins |
8 | L'utente è già collegato al sistema mediante una società diversa da quella specificata |
9 | L'utente è già collegato al sistema |
10 | Le licenze utente disponibili sono esaurite o è errato il valore della Producer Key |
11 | Impossibile associare l'utente alla licenza |
12 | Il codice di autenticazione è vuoto |
13 | L'utente non esiste nel database di sistema o password errata |
14 | Il processo non consente un accesso simultaneo |
15 | Errore in modifica password |
16 | Password scaduta |
17 | Password troppo corta |
18 | Il database aziendale è in uso da un altro utente |
19 | L'utente deve cambiare la password, ma la configurazione non lo permette |
20 | Errore di accesso generico |
21 | L'azienda specificata non esiste nel database di sistema |
22 | Il database di sistema non contiene le informazioni sul provider specificato per l'azienda |
23 | Impossibile leggere dal database di sistema i parametri di connessione per l'azienda |
24 | LoginManagerWrapper non inizializzata |
25 | LoginManager non registrato |
26 | Errore inizializzando LoginManager |
27 | LoginManager non inizializzato |
29 | Il database aziendale non esiste o non è possibile connettersi ad esso. Il database aziendale deve essere creato con l'Administration Console |
30 | Le tabelle del database aziendale non esistono. Devono essere create con l'Administration Console |
31 | Il database aziendale non è supportato dalla configurazione dell'applicazione |
32 | L'utente non può accedere alle applicazioni Web |
33 | L'utente non può accedere alle applicazioni SmartClient |
34 | Il componente EasyLook non è attivo |
35 | L'utente è bloccato, è necessario sbloccarlo |
36 | Non è possibile modificare la password più volte nella stessa giornata |
37 | Gli utenti soggetti a sicurezza integrata non possono utilizzare questa funzionalità |
38 | L'azienda specificata non è compatibile con il programma in uso |
39 | Prodotto non registrato |
40 | L'azienda specificata non è disponibile perchè non compatibile con la Standard Edition |
41 | Il modulo MagicDocuments non è utilizzabile perchè manca CAL |
42 | L'utente è già connesso al sistema con un'altra applicazione |
43 | Nel database di sistema ci sonon più utenti assegnati rispetto al numero di CAL |
ValidateUser
Il metodo ValidateUser consente di verificare le credenziali di un utente.
int ValidateUser(
string userName,
string password,
bool winNtAuthentication,
out StringCollection userCompanies, out int loginId, out bool userCannotChangePassword, out bool userMustChangePassword, out DateTime expiredDatePassword, out bool passwordNeverExpired, out bool expiredDateCannotChange
)
Parametri input
Nome | Descrizione |
userName | nome dell'utente |
password | password dell'utente |
winNtAuthentication | vero se l'utente è soggetto a sicurezza integrata |
Parametri output
Nome | Descrizione |
userCompanies | elenco delle aziende associate all'utente |
loginId | valore ID dell'utente |
userCannotChangePassword | true se l'utente non può modificare la password |
userMustChangePassword | true se l'utente deve cambiare la password |
expiredDatePassword | data di scadenza della password |
passwordNeverExpired | true se la password utente non scade mai |
expiredDateCannotChange | true se la data di scadenza non può cambiare |
Valore di ritorno
Valore intero il cui significato è illustrato nella seguente tabella:
Valore | Significato |
0 | Nessun errore |
1 | E' fallita la connessione al database di sistema |
13 | L'utente non esiste nel database di sistema e/o password errata |
19 | L'utente deve cambiare la password, ma la configurazione non lo consente |
35 | L'utente è bloccato, è necessario sbloccarlo |
37 | Gli utenti con sicurezza integrata non possono utilizzare questa funzionalità |
Commenti