Ask a Question related to ASP.NET Web Services, Design and Development.
-
David M. Young #1
WSE 2.0 - The security token could not be authenticated or authori
I posted this to microsoft.public.dotnet.framework.webservices.enha ncements a few days ago, but I'm not getting any helpful responses. I hope someone can help.
Here's my code for the Web Service (SimpleWseServer.ServicesMain.asmx)
[WebMethod]
public string HelloWorld(string username)
{
SoapContext ctxt = RequestSoapContext.Current;
foreach(SecurityToken token in ctxt.Security.Tokens)
{
if(token is UsernameToken)
{
UsernameToken user = (UsernameToken)token;
if(user.Username==username)
{
if(user.Principal.IsInRole(System.Net.Dns.GetHostN ame() + @"\Kings"))
return "Hello, King " + username;
return "Hello, " + username;
}
}
}
return "Hello, Liar";
}
Here the client code (it's a button click event in a WindowsForm)
private void btn_login_Click(object sender, System.EventArgs e)
{
string username = txt_username.Text;
string password = txt_password.Text;
SimpleWseClient.localhost.ServicesMainWse proxy = new
SimpleWseClient.localhost.ServicesMainWse();
proxy.Url = "http://localhost/SimpleWseServer/ServicesMain.asmx";
proxy.RequestSoapContext.Security.Tokens.Add(new UsernameToken(username,
password, PasswordOption.SendPlainText));
txt_response.Text = proxy.HelloWorld(username);
}
Here's the exception stack:
Additional information: Microsoft.Web.Services2.Security.SecurityFault: The
security token could not be authenticated or authorized
at
Microsoft.Web.Services2.Security.Tokens.UsernameTo kenManager.OnLogonUserFail
ed(UsernameToken token)
at
Microsoft.Web.Services2.Security.Tokens.UsernameTo kenManager.LogonUser(Usern
ameToken token)
at
Microsoft.Web.Services2.Security.Tokens.UsernameTo kenManager.AuthenticateTok
en(UsernameToken token)
at
Microsoft.Web.Services2.Security.Tokens.UsernameTo kenManager.VerifyToken(Sec
urityToken securityToken)
at
Microsoft.Web.Services2.Security.Tokens.SecurityTo kenManager.LoadXmlSecurity
Token(XmlElement element)
at
Microsoft.Web.Services2.Security.Tokens.SecurityTo kenManager.GetTokenFromXml
(XmlElement element)
at Microsoft.Web.Services2.Security.Security.LoadXml( XmlElement element)
at
Microsoft.Web.Services2.Security.SecurityInputFilt er.ProcessMessage(SoapEnve
lope envelope)
at Microsoft.Web.Services2.Pipeline.ProcessInputMessa ge(SoapEnvelope
envelope)
at
Microsoft.Web.Services2.WebServicesExtension.Befor eDeserializeServer(SoapSer
verMessage message)
I can't figure out why Windows Authentication is failing? I've enable tracing on both the input and output. The input shows the correct username and password being passed.
The account I'm using is a local account and the group is local as well. I can log in locally with that same username/password combination. I've tried using the following for the username ( username and LOCALMACHINE\username). I've even used my domain login and all receive the same error. I've used the RunAs command to launch other applications as this user and that works.
I also downloaded the Hand-On-Lab (HOLDEVL34: WSE 2.0 Security and Policy) and have tried the supplied "SecureInvoiceA" exercises, but those give the same error as above.
I'd like to move on to implementing my own UsernameTokenManager, but can concieve of doing so until this simple (so it seems) solution can be made to work.
Any help is appreciated.
David M. Young Guest
-
Invalid Token
Greetings! I'm new to Dreamweaver. When we try to install the Publish Web Command downloaded from ... -
kerberos token
I get an error when i try: string targetPrincipalName = null; targetPrincipalName = "host/" + System.Net.Dns.GetHostName(); KerberosToken... -
IIS UNC Token
What's the IIS UNC token stated in ASP.NET impersonation docu? How do you set it? Thanks :) -
WSE - Username Token
Hello: I am trying to build a webservice and client that will pass a username and password in the SOAP header. However, when trying to call... -
Referenced security token could not be retrieved ERROR
Hello, I'm getting the error: Referenced security token could not be retrieved What could be wrong? here is the stack trace: ... -
dm_dal #2
Re: WSE 2.0 - The security token could not be authenticated or authori
Finally got a resolution.
On Win2k you have to grant "Act as part of operating system" in local
policies to the ASPNET account for this to work.
David
"David M. Young" <DMTDYoung_removethis_@comcast.net> wrote in message
news:31AF7ED3-241C-499B-A266-5C27A5096F83@microsoft.com...microsoft.public.dotnet.framework.webservices.enha ncements a few days ago,> I posted this to
but I'm not getting any helpful responses. I hope someone can help.The>
> Here's my code for the Web Service (SimpleWseServer.ServicesMain.asmx)
> [WebMethod]
> public string HelloWorld(string username)
> {
> SoapContext ctxt = RequestSoapContext.Current;
> foreach(SecurityToken token in ctxt.Security.Tokens)
> {
> if(token is UsernameToken)
> {
> UsernameToken user = (UsernameToken)token;
> if(user.Username==username)
> {
> if(user.Principal.IsInRole(System.Net.Dns.GetHostN ame() + @"\Kings"))
> return "Hello, King " + username;
> return "Hello, " + username;
> }
> }
> }
> return "Hello, Liar";
> }
>
> Here the client code (it's a button click event in a WindowsForm)
> private void btn_login_Click(object sender, System.EventArgs e)
> {
> string username = txt_username.Text;
> string password = txt_password.Text;
> SimpleWseClient.localhost.ServicesMainWse proxy = new
> SimpleWseClient.localhost.ServicesMainWse();
> proxy.Url = "http://localhost/SimpleWseServer/ServicesMain.asmx";
> proxy.RequestSoapContext.Security.Tokens.Add(new UsernameToken(username,
> password, PasswordOption.SendPlainText));
> txt_response.Text = proxy.HelloWorld(username);
> }
>
> Here's the exception stack:
> Additional information: Microsoft.Web.Services2.Security.SecurityFault:Microsoft.Web.Services2.Security.Tokens.UsernameTo kenManager.OnLogonUserFail> security token could not be authenticated or authorized
> at
>Microsoft.Web.Services2.Security.Tokens.UsernameTo kenManager.LogonUser(Usern> ed(UsernameToken token)
> at
>Microsoft.Web.Services2.Security.Tokens.UsernameTo kenManager.AuthenticateTok> ameToken token)
> at
>Microsoft.Web.Services2.Security.Tokens.UsernameTo kenManager.VerifyToken(Sec> en(UsernameToken token)
> at
>Microsoft.Web.Services2.Security.Tokens.SecurityTo kenManager.LoadXmlSecurity> urityToken securityToken)
> at
>Microsoft.Web.Services2.Security.Tokens.SecurityTo kenManager.GetTokenFromXml> Token(XmlElement element)
> at
>element)> (XmlElement element)
> at Microsoft.Web.Services2.Security.Security.LoadXml( XmlElementMicrosoft.Web.Services2.Security.SecurityInputFilt er.ProcessMessage(SoapEnve> at
>Microsoft.Web.Services2.WebServicesExtension.Befor eDeserializeServer(SoapSer> lope envelope)
> at Microsoft.Web.Services2.Pipeline.ProcessInputMessa ge(SoapEnvelope
> envelope)
> at
>tracing on both the input and output. The input shows the correct username> verMessage message)
>
> I can't figure out why Windows Authentication is failing? I've enable
and password being passed.I can log in locally with that same username/password combination. I've>
> The account I'm using is a local account and the group is local as well.
tried using the following for the username ( username and
LOCALMACHINE\username). I've even used my domain login and all receive the
same error. I've used the RunAs command to launch other applications as
this user and that works.and have tried the supplied "SecureInvoiceA" exercises, but those give the>
> I also downloaded the Hand-On-Lab (HOLDEVL34: WSE 2.0 Security and Policy)
same error as above.concieve of doing so until this simple (so it seems) solution can be made to>
> I'd like to move on to implementing my own UsernameTokenManager, but can
work.>
> Any help is appreciated.
dm_dal Guest
-
P #3
Re: WSE 2.0 - The security token could not be authenticated or authori
And of course you have to restart IIS afterward. Local security
settings will not take affect (even though it said so) until IIS got
re-started.
Pam
"dm_dal" <REMOVE_THIS.dmy75252@yahoo.com> wrote in message news:<#DCbJt8VEHA.644@tk2msftngp13.phx.gbl>...> Finally got a resolution.
>
> On Win2k you have to grant "Act as part of operating system" in local
> policies to the ASPNET account for this to work.
>
> David
>
> "David M. Young" <DMTDYoung_removethis_@comcast.net> wrote in message
> news:31AF7ED3-241C-499B-A266-5C27A5096F83@microsoft.com...> microsoft.public.dotnet.framework.webservices.enha ncements a few days ago,> > I posted this to
> but I'm not getting any helpful responses. I hope someone can help.> return "Hello, Liar";> >
> > Here's my code for the Web Service (SimpleWseServer.ServicesMain.asmx)
> > [WebMethod]
> > public string HelloWorld(string username)
> > {
> > SoapContext ctxt = RequestSoapContext.Current;
> > foreach(SecurityToken token in ctxt.Security.Tokens)
> > {
> > if(token is UsernameToken)
> > {
> > UsernameToken user = (UsernameToken)token;
> > if(user.Username==username)
> > {
> > if(user.Principal.IsInRole(System.Net.Dns.GetHostN ame() + @"\Kings"))
> > return "Hello, King " + username;
> > return "Hello, " + username;
> > }
> > }
> > }> The> > }
> >
> > Here the client code (it's a button click event in a WindowsForm)
> > private void btn_login_Click(object sender, System.EventArgs e)
> > {
> > string username = txt_username.Text;
> > string password = txt_password.Text;
> > SimpleWseClient.localhost.ServicesMainWse proxy = new
> > SimpleWseClient.localhost.ServicesMainWse();
> > proxy.Url = "http://localhost/SimpleWseServer/ServicesMain.asmx";
> > proxy.RequestSoapContext.Security.Tokens.Add(new UsernameToken(username,
> > password, PasswordOption.SendPlainText));
> > txt_response.Text = proxy.HelloWorld(username);
> > }
> >
> > Here's the exception stack:
> > Additional information: Microsoft.Web.Services2.Security.SecurityFault:> Microsoft.Web.Services2.Security.Tokens.UsernameTo kenManager.OnLogonUserFail> > security token could not be authenticated or authorized
> > at
> >> Microsoft.Web.Services2.Security.Tokens.UsernameTo kenManager.LogonUser(Usern> > ed(UsernameToken token)
> > at
> >> Microsoft.Web.Services2.Security.Tokens.UsernameTo kenManager.AuthenticateTok> > ameToken token)
> > at
> >> Microsoft.Web.Services2.Security.Tokens.UsernameTo kenManager.VerifyToken(Sec> > en(UsernameToken token)
> > at
> >> Microsoft.Web.Services2.Security.Tokens.SecurityTo kenManager.LoadXmlSecurity> > urityToken securityToken)
> > at
> >> Microsoft.Web.Services2.Security.Tokens.SecurityTo kenManager.GetTokenFromXml> > Token(XmlElement element)
> > at
> >> element)> > (XmlElement element)
> > at Microsoft.Web.Services2.Security.Security.LoadXml( XmlElement> Microsoft.Web.Services2.Security.SecurityInputFilt er.ProcessMessage(SoapEnve> > at
> >> Microsoft.Web.Services2.WebServicesExtension.Befor eDeserializeServer(SoapSer> > lope envelope)
> > at Microsoft.Web.Services2.Pipeline.ProcessInputMessa ge(SoapEnvelope
> > envelope)
> > at
> >> tracing on both the input and output. The input shows the correct username> > verMessage message)
> >
> > I can't figure out why Windows Authentication is failing? I've enable
> and password being passed.> I can log in locally with that same username/password combination. I've> >
> > The account I'm using is a local account and the group is local as well.
> tried using the following for the username ( username and
> LOCALMACHINE\username). I've even used my domain login and all receive the
> same error. I've used the RunAs command to launch other applications as
> this user and that works.> and have tried the supplied "SecureInvoiceA" exercises, but those give the> >
> > I also downloaded the Hand-On-Lab (HOLDEVL34: WSE 2.0 Security and Policy)
> same error as above.> concieve of doing so until this simple (so it seems) solution can be made to> >
> > I'd like to move on to implementing my own UsernameTokenManager, but can
> work.> >
> > Any help is appreciated.P Guest



Reply With Quote

