Message
from ExternalSystem: ‘Login failed for user ‘NT
AUTHORITY\IUSR’.’.
1. Go to MicrosoftSQL Server Management Studio
and connect to your database server.
2. Expand Security node and right-click Logins node and select New Login.
3. In the LoginName, enter IUSR and click Search…. This will open a new
search box. Enter IUSR in the object
name and click Check Names. Click OK.
4. You will notice that Login Name has been populated with MACHINENAME\IUSR where MACHINENAME is your machine name, for
example, in the figure below, you see SP2013\IUSR. SP2013 is my machine
name.
This is not what you want to add to the logins.
Change MACHINENAME to NT AUTHORITY so Login Name should read NT AUTHORITY\IUSR. Click OK.
5. Now you may think that the user has been added and
your external content type will work. Right? Wrong! You still have to map user to
the database otherwise you will get following error on the list page(where you
are trying to load external content type):
The
query against the database caused an error.
This error occurs, as I said, because user is not
mapped to the database yet.
6. To map user to the database, right-click NT AUTHORITY\IUSR in Logins and
select
Properties.
7. There are two ways to do this mapping. One way is to
add user to one of the server roles, for example, serveradminor sysadmin. This will give user full
rights to all databases and thus you won’t have to do explicit mapping. To do
this, on the properties page, click ServerRoles and check sysadmin. Click OK. Obviously you would not want to
do this in real environment. So the other option is to map the user directly
to the database that has been used in the external content
type.
To add user mapping, in LoginProperties, click User Mapping. Locate the database in the
list and then check the box in the Map column. As soon as you check
the box, NT AUTHORITY\IUSER appears
in the User column. That’s it. Click
OK to save the setting. By the way
on the same properties page, you can also assign database role membership to
the user for the database but that is not required.
Now, go back to the list page and reload it. You
will see results from the external data source.
No comments:
Post a Comment