| Technical/Interview Questions on XML / Internet Information Server (IIS) |
Home
|
|
 |
Interview questions on XML / IIS.
Please share with me if you have more on this subject.
Errors and ommisions are expected so please ingore
if you find any.
For printer friendly version of this questionare Click here PRINT THIS PAGE
XML
Explain the concept of data island?
How to use XML DOM model on client side using
JavaScript.
What are the ways to create a tree view control using XML, XSL &
JavaScript?
What is XPathNavigator. (Also read the other classes in System.XML
Namespace)
What is Use of Template in XSL?
What is “Well Formed XML” and “Valid XML”
How you will do SubString in XSL
Can we do sorting in XSL ? how do you deal sorting columns dynamically
in XML.
What is “Async” property of XML Means ?
What is XPath Query ?
Difference Between Element and Node.
What is CDATA Section.
DOM & SAX parsers explanation and difference
What is GetElementbyname method will do?
What is selectnode method will give?
What is valid xml document? What a well formed xml document?
What is the Difference between XmlDocument and XmlDataDocument?
Explain what a DiffGram is, and a good use for one? A DiffGram
is an XML format that is used to identify current and original versions of
data elements. When sending and retrieving a DataSet from an XML Web
service, the DiffGram format is implicitly used. The DataSet uses
the DiffGram format to load and persist its contents, and to serialize its
contents for transport across a network connection. When a DataSet is
written as a DiffGram, it populates the DiffGram with all the necessary
information to accurately recreate the contents, though not the schema, of the
DataSet, including column values from both the Original and
Current row versions, row error information, and row
order. DiffGram Format The DiffGram format is divided into
three sections: the current data, the original (or "before") data, and an
errors section, as shown in the following example.
<?xml
version="1.0"?> <diffgr:diffgram xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" xmlns:diffgr="urn:schemas-microsoft-com:xml-diffgram-v1" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<DataInstance> </DataInstance>
<diffgr:before> </diffgr:before>
<diffgr:errors> </diffgr:errors> </diffgr:diffgram>
The DiffGram format consists of the following blocks of data:
- <DataInstance>
- The name of this element, DataInstance, is used for
explanation purposes in this documentation. A DataInstance
element represents a DataSet or a row of a DataTable. Instead
of DataInstance, the element would contain the name of the
DataSet or DataTable. This block of the DiffGram format
contains the current data, whether it has been modified or not. An element,
or row, that has been modified is identified with the
diffgr:hasChanges annotation.
- <diffgr:before>
- This block of the DiffGram format contains the original version of a
row. Elements in this block are matched to elements in the
DataInstance block using the diffgr:id annotation.
- <diffgr:errors>
- This block of the DiffGram format contains error information for a
particular row in the DataInstance block. Elements in this
block are matched to elements in the DataInstance block using
the diffgr:id annotation.
If I replace my Sqlserver with XML files and how about handling the
same?
Write syntax to serialize class using XML Serializer?
IIS
In which process does IIS runs (was asking about the EXE
file) inetinfo.exe is the Microsoft IIS server running, handling
ASP.NET requests among other things. When an ASP.NET request is received
(usually a file with .aspx extension), the ISAPI filter aspnet_isapi.dll takes
care of it by passing the request to the actual worker process aspnet_wp.exe.
Where are the IIS log files stored? C:\WINDOWS\system32\Logfiles\W3SVC1
OR c:\winnt\system32\LogFiles\W3SVC1
What are the different IIS authentication modes in IIS 5.0 and Explain?
Difference between basic and digest authentication modes? IIS
provides a variety of authentication schemes:
Anonymous (enabled by default)
- Basic
- Digest
- Integrated Windows authentication (enabled by default)
- Client Certificate Mapping
- Anonymous
Anonymous authentication gives users access to the
public areas of your Web site without prompting them for a user name or
password. Although listed as an authentication scheme, it is not technically
performing any client authentication because the client is not required to
supply any credentials. Instead, IIS provides stored credentials to Windows
using a special user account, IUSR_machinename. By default, IIS
controls the password for this account. Whether or not IIS controls the
password affects the permissions the anonymous user has. When IIS controls the
password, a sub authentication DLL (iissuba.dll) authenticates the user using
a network logon. The function of this DLL is to validate the password supplied
by IIS and to inform Windows that the password is valid, thereby
authenticating the client. However, it does not actually provide a password to
Windows. When IIS does not control the password, IIS calls the LogonUser() API
in Windows and provides the account name, password and domain name to log on
the user using a local logon. After the logon, IIS caches the security token
and impersonates the account. A local logon makes it possible for the
anonymous user to access network resources, whereas a network logon does
not. Basic Authentication IIS Basic authentication as an
implementation of the basic authentication scheme found in section 11 of the
HTTP 1.0
specification. As the specification makes clear, this method is, in
and of itself, non-secure. The reason is that Basic authentication assumes a
trusted connection between client and server. Thus, the username and password
are transmitted in clear text. More specifically, they are transmitted using
Base64 encoding, which is trivially easy to decode. This makes Basic
authentication the wrong choice to use over a public network on its own.
Basic Authentication is a long-standing standard supported by nearly all
browsers. It also imposes no special requirements on the server side -- users
can authenticate against any NT domain, or even against accounts on the local
machine. With SSL to shelter the security credentials while they are in
transmission, you have an authentication solution that is both highly secure
and quite flexible. Digest Authentication The Digest
authentication option was added in Windows 2000 and IIS 5.0. Like Basic
authentication, this is an implementation of a technique suggested by Web
standards, namely RFC 2069
(superceded by RFC 2617).
Digest authentication also uses a challenge/response model, but it is much
more secure than Basic authentication (when used without SSL). It achieves
this greater security not by encrypting the secret (the password) before
sending it, but rather by following a different design pattern -- one that
does not require the client to transmit the password over the wire at all.
Instead of sending the password itself, the client transmits a one-way
message digest (a checksum) of the user's password, using (by default) the MD5
algorithm. The server then fetches the password for that user from a Windows
2000 Domain Controller, reruns the checksum algorithm on it, and compares the
two digests. If they match, the server knows that the client knows the correct
password, even though the password itself was never sent. (If you have ever
wondered what the default ISAPI filter "md5filt" that is installed with IIS
5.0 is used for, now you know. Integrated Windows
Authentication Integrated Windows
authentication (formerly known as NTLM authentication and Windows NT
Challenge/Response authentication) can use either NTLM or Kerberos V5
authentication and only works with Internet Explorer 2.0 and later.
When Internet Explorer attempts to access a protected resource, IIS
sends two WWW-Authenticate headers, Negotiate and NTLM.
- If Internet Explorer recognizes the Negotiate header, it will choose it
because it is listed first. When using Negotiate, the browser will return
information for both NTLM and Kerberos. At the server, IIS will use Kerberos
if both the client (Internet Explorer 5.0 and later) and server (IIS 5.0 and
later) are running Windows 2000 and later, and both are members of the same
domain or trusted domains. Otherwise, the server will default to using NTLM.
- If Internet Explorer does not understand Negotiate, it will use NTLM.
- So, which mechanism is used depends upon a negotiation between Internet
Explorer and IIS.
When used in conjunction with Kerberos v5
authentication, IIS can delegate security credentials among computers running
Windows 2000 and later that are trusted and configured for delegation.
Delegation enables remote access of resources on behalf of the delegated user.
Integrated Windows authentication is the best authentication scheme in an
intranet environment where users have Windows domain accounts, especially when
using Kerberos. Integrated Windows authentication, like digest authentication,
does not pass the user's password across the network. Instead, a hashed value
is exchanged. Client Certificate Mapping A certificate is a
digitally signed statement that contains information about an entity and the
entity's public key, thus binding these two pieces of information together. A
trusted organization (or entity) called a Certification Authority (CA) issues
a certificate after the CA verifies that the entity is who it says it is.
Certificates can contain different types of data. For example, an X.509
certificate includes the format of the certificate, the serial number of the
certificate, the algorithm used to sign the certificate, the name of the CA
that issued the certificate, the name and public key of the entity requesting
the certificate, and the CA's signature. X.509 client certificates simplify
authentication for larger user bases because they do not rely on a centralized
account database. You can verify a certificate simply by examining the
certificate. http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vsent7/html/vxconIISAuthentication.asp
How to configure the sites in Web server (IIS)?
Advantages in IIS 6.0? http://www.microsoft.com/windowsserver2003/iis/evaluation/features/default.mspx
http://www.microsoft.com/technet/treeview/default.asp?url=/technet/prodtechnol/windowsserver2003/proddocs/datacenter/gs_whatschanged.asp
IIS Isolation Levels? Internet Information Server introduced the
notion "Isolation Level", which is also present in IIS4 under a different
name. IIS5 supports three isolation levels, that you can set from the Home
Directory tab of the site's Properties dialog:
- Low (IIS Process): ASP pages run in INetInfo.Exe, the main IIS
process, therefore they are executed in-process. This is the fastest
setting, and is the default under IIS4. The problem is that if ASP crashes,
IIS crashes as well and must be restarted (IIS5 has a reliable restart feature
that automatically restarts a server when a fatal error occurs).
- Medium (Pooled): In this case ASP runs in a different
process, which makes this setting more reliable: if ASP crashes IIS won't.
All the ASP applications at the Medium isolation level share the same process,
so you can have a web site running with just two processes (IIS and ASP
process). IIS5 is the first Internet Information Server version that supports
this setting, which is also the default setting when you create an IIS5
application. Note that an ASP application that runs at this level is run under
COM+, so it's hosted in DLLHOST.EXE (and you can see this executable in the
Task Manager).
- High (Isolated): Each ASP application runs out-process in its own
process space, therefore if an ASP application crashes, neither IIS nor any
other ASP application will be affected. The downside is that you consume more
memory and resources if the server hosts many ASP applications. Both IIS4 and
IIS5 supports this setting: under IIS4 this process runs inside MTS.EXE, while
under IIS5 it runs inside DLLHOST.EXE.
- When selecting an isolation level for your ASP application, keep in mind
that out-process settings - that is, Medium and High - are less efficient than
in-process (Low). However, out-process communication has been vastly improved
under IIS5, and in fact IIS5's Medium isolation level often deliver better
results than IIS4's Low isolation. In practice, you shouldn't set the Low
isolation level for an IIS5 application unless you really need to serve
hundreds pages per second.
|
Top
| |
|
|
|
Other Channels |
|
| |