Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
I am facing a strange request which is difficult for me to fulfil.
I have developed an QV app and allocated to users with NTNAME section access.
Section Access example is shown below.
Section Access;
LOAD
ACCESS as ACCESS,
UPPER(NAME) as NTNAME,
UPPER(DEPARTMENT) as DEPARTMENT
INLINE
[
ACCESS, NAME, DEPARTMENT
ADMIN, DOMAIN\MANISH, *
USER, DOMAIN\A, DEPT1
USER, DOMAIN\B, DEPT2
USER, DOMAIN\C, DEPT3
USER, DOMAIN\D, DEPT4
USER, DOMAIN\E, DEPT5
ADMIN, JAMES, *
];
Section Application;
I am having an admin rights. But JAMES our IT Head also want to have Admin rights but he wants to open this application from his Personal computer without joining to Network so no domain name (Not on Access Point)
Is there any way to handle this in QlikView?
Hi Manish,
You just need to blend both NTNAME and USERID/PASSWORD access, and use a * for fields not used. So to start from your code, you would have:
Section Access;
LOAD
ACCESS as ACCESS,
UPPER(NTNAME) as NTNAME,
UPPER(USERID) as USERID,
PASSWORD as PASSWORD,
UPPER(DEPARTMENT) as DEPARTMENT
INLINE
[
ACCESS, NTNAME, USERID, DEPARTMENT, PASSWORD
ADMIN, DOMAIN\MANISH, *, *, *
USER, DOMAIN\A, *, DEPT1, *
USER, DOMAIN\B, *, DEPT2, *
USER, DOMAIN\C, *, DEPT3, *
USER, DOMAIN\D, *, DEPT4, *
USER, DOMAIN\E, *, DEPT5, *
ADMIN, *, JAMES, *, P@55W06D
];
Now, if someone goes in that matches a given NTNAME they will go straight in. Anyone that does not match will be prompted for a Username and Password combo. The only one that will work is JAMES.
The only downside of this approach is that users with no access will get a username password prompt - where previously they will have been told straight away they have no access.
You can combine NTNAME and USERID in various ways. For example, I have had a combination of NTNAME and USERID with both populated, so that the NTNAME dictates that a user could get in, but once a user was authenticated they could use a USERID to dictate what subset of data they saw within the app.
Hope that helps,
Steve
Hi
Just change the name with domain\username (Username is computer name).
Add one line Star is * ; next to Section access ;
Hope it helps
Can't change name to domain\username. It's easy...
Question is he is having a personal computer without domain.
On front end side use OSuser() . Copy that name and replace it with James name.
Hope it helps
Hi Manish,
You just need to blend both NTNAME and USERID/PASSWORD access, and use a * for fields not used. So to start from your code, you would have:
Section Access;
LOAD
ACCESS as ACCESS,
UPPER(NTNAME) as NTNAME,
UPPER(USERID) as USERID,
PASSWORD as PASSWORD,
UPPER(DEPARTMENT) as DEPARTMENT
INLINE
[
ACCESS, NTNAME, USERID, DEPARTMENT, PASSWORD
ADMIN, DOMAIN\MANISH, *, *, *
USER, DOMAIN\A, *, DEPT1, *
USER, DOMAIN\B, *, DEPT2, *
USER, DOMAIN\C, *, DEPT3, *
USER, DOMAIN\D, *, DEPT4, *
USER, DOMAIN\E, *, DEPT5, *
ADMIN, *, JAMES, *, P@55W06D
];
Now, if someone goes in that matches a given NTNAME they will go straight in. Anyone that does not match will be prompted for a Username and Password combo. The only one that will work is JAMES.
The only downside of this approach is that users with no access will get a username password prompt - where previously they will have been told straight away they have no access.
You can combine NTNAME and USERID in various ways. For example, I have had a combination of NTNAME and USERID with both populated, so that the NTNAME dictates that a user could get in, but once a user was authenticated they could use a USERID to dictate what subset of data they saw within the app.
Hope that helps,
Steve
Hi,
All you have to do is for that user you should use the computername as Domain name. SO the script will be
Section Access;
LOAD
ACCESS as ACCESS,
UPPER(NAME) as NTNAME,
UPPER(DEPARTMENT) as DEPARTMENT
INLINE
[
ACCESS, NAME, DEPARTMENT
ADMIN, DOMAIN\MANISH, *
USER, DOMAIN\A, DEPT1
USER, DOMAIN\B, DEPT2
USER, DOMAIN\C, DEPT3
USER, DOMAIN\D, DEPT4
USER, DOMAIN\E, DEPT5
ADMIN, COMPNAME\JAMES, *
];
Regards,
Kaushik Solanki
I would be slightly concerned though about your app being exposed to the internet without users first being authenticated.
Can you not use some kind of VPN solution to authenticate him on the domain?
Steve
Hi Steve,
Thanks for your quick response. I will test this and come back to you on this.
Hi Kaushik,
Will try this and let you know the result.
Hi,
What I have suggested (Deleted comment) already is working fine in my personal laptop. Use Osuser() function to get the computer Name\windows login id and copy paste the same in NTNAME field.
In your case,
Section Access;
LOAD
ACCESS as ACCESS,
UPPER(NAME) as NTNAME,
UPPER(DEPARTMENT) as DEPARTMENT
INLINE
[
ACCESS, NAME, DEPARTMENT
ADMIN, DOMAIN\MANISH, *
USER, DOMAIN\A, DEPT1
USER, DOMAIN\B, DEPT2
USER, DOMAIN\C, DEPT3
USER, DOMAIN\D, DEPT4
USER, DOMAIN\E, DEPT5
ADMIN, XXXX\TAMIL, *
];
Section Application;
XXXX is a computer name or it can be domain name.
When you install Windows, installer ask you to enter your name, and optionally, the organization name. You can check what has been entered by click Start, click Control Panel and then click System.
So, he can open the application in the personal computer by using his computername\loginID in NTNAME field.