Solved

Microsoft Dynamics AX user log in

Posted on 2009-07-10
10
1,532 Views
Last Modified: 2012-05-07
By default AX logs you into AX using the windows username.  Can you change AX on a server level to require a username and password?  I have a client that has floor machine that several users use at the same time and do not want to have to log out of windows every time they need to switch AX users.  Or can I make AX prompt them for a password for specific things like deleting inventory.
0
Comment
Question by:Shawnp3533
  • 5
  • 5
10 Comments
 
LVL 7

Expert Comment

by:quale-kaizen
ID: 24831442
There are several options.

One option would be to use a third-party application to log-in the users with the
appropriate credentials. I guess you can write such a program yourself.

OR

If you already have something like Citrix or Terminal Server, you can use it instead.
Without Terminal Server you can connect upto 2+1 remote desktop users.

When it comes to modifying the standard behavior of AX, yes you can do pretty much
anything you want. I can provide you with sample X++ code if you need to.

Regards,
QK
0
 
LVL 1

Author Comment

by:Shawnp3533
ID: 24833043
That would be great.  Basically I need to have the ability to have a generic login for windows and specific log-ins for AX (The computers are windows XP pro).
0
 
LVL 7

Expert Comment

by:quale-kaizen
ID: 24833126
The simplest possible solution is to force the users to log-in with remote desktop on a machine with AX client installed. This would guarantee each user would use different AD account.

Is this an option for you?

Regards,
QK
0
 
LVL 1

Author Comment

by:Shawnp3533
ID: 24833220
NO Because that is would take to long to log into windows (remotely) let it come up and then log into AX.  Each time a differant User logged in.  I need to be able to have a generic Windows login and then Individual log in's for ax. We could setup the individual users in ad so AX could pull them to add them to the account but AX can't pull the log in info from the user logged into windows.
0
 
LVL 7

Expert Comment

by:quale-kaizen
ID: 24834301
The 2nd best option (in my opinion) would be to have a starter application, in order to impersonate the users trying to run AX. Here is how it works:

1) The client machine is logged in the domain as a user who has restircted  rights (or no rights at all)  in AX. The point is, users should use the strater application in order to start AX.

2) There is  a different  Active Directory user for each user trying to access AX. In AX you can use security groups to setup group permissions, so this shouldn't be a problem.

3)  The users on the client machine run the starter application, and everytime they try to run AX,  they are asked for AD username & password. In this way you can reuse the standard security framework of AX.

On the downside users should close the AX client when they finish their work (you can setup a timeout in AX as well).

The advantage of this solution is that you reuse the standard AX security framework.
And what's more, this saves you the extra time and effort to implement and maintain a parallel user authentication  & security system in AX.
0
IT, Stop Being Called Into Every Meeting

Highfive is so simple that setting up every meeting room takes just minutes and every employee will be able to start or join a call from any room with ease. Never be called into a meeting just to get it started again. This is how video conferencing should work!

 
LVL 1

Author Comment

by:Shawnp3533
ID: 24834360
How would I do the starter application?
0
 
LVL 7

Expert Comment

by:quale-kaizen
ID: 24834428
I can compile one for you (tomorrow).
0
 
LVL 1

Author Comment

by:Shawnp3533
ID: 24835748
Thanks look forward to it.
0
 
LVL 7

Accepted Solution

by:
quale-kaizen earned 500 total points
ID: 24841206
Now that I have AX in front of me, it turns out you don't really need the starter application:
the users can right-click on the AX icon and use the "run as..." option.
This way they can login as different users in AX without resetting their windows session.


PS:

This below is the C# source code for the AX starter application, I promissed yesterday.
For some reason I can't attach the entire project to my expert-exchange post.
If you need the entire project you can email me (see my profile) and I will send you the project.


using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Windows.Forms;

using System.Configuration;

using System.Security;

using System.Diagnostics;
 
 

namespace impersonateForm

{

    public partial class ImpersonateForm : Form

    {

        public ImpersonateForm()

        {

            InitializeComponent();

        }
 

        private void buttonLogin_Click(object sender, EventArgs e)

        {

            try

            {

                String path = "ax32.exe";

                String user = textBoxUser.Text;

                String userDomain = textBoxDomain.Text;
 

                SecureString password = new SecureString();
 

                foreach (char ch in textBoxPassword.Text)

                {

                    password.AppendChar(ch);

                }
 

                System.Diagnostics.ProcessStartInfo myProcess = new ProcessStartInfo(path);

                myProcess.Domain = userDomain;

                myProcess.UserName = user;

                myProcess.Password = password;

                myProcess.UseShellExecute = false;
 

                Process.Start(myProcess);

            }

            catch (Exception ex)

            {

                MessageBox.Show(ex.Message);

            }         

        }
 

        private void ImpersonateForm_Load(object sender, EventArgs e)

        {

            textBoxDomain.Text = System.Environment.UserDomainName;            

        }

    }

Open in new window

0
 
LVL 1

Author Comment

by:Shawnp3533
ID: 24846115
Thanks I think the run-as will work but I will also email becuase I would like to see the starter appilcation.
0

Featured Post

How to run any project with ease

Manage projects of all sizes how you want. Great for personal to-do lists, project milestones, team priorities and launch plans.
- Combine task lists, docs, spreadsheets, and chat in one
- View and edit from mobile/offline
- Cut down on emails

Join & Write a Comment

Automatically creating a Trello card using data from a Microsoft Dynamics CRM record turned out to be an easy project that yielded great results.  Here's how I did this for an internal team at General Code.
A short article about a problem I had getting the GPS LocationListener working.
An introduction to basic programming syntax in Java by creating a simple program. Viewers can follow the tutorial as they create their first class in Java. Definitions and explanations about each element are given to help prepare viewers for future …
Viewers will learn how to properly install Eclipse with the necessary JDK, and will take a look at an introductory Java program. Download Eclipse installation zip file: Extract files from zip file: Download and install JDK 8: Open Eclipse and …

760 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

22 Experts available now in Live!

Get 1:1 Help Now