0

I need some help.Firstly I wrote one soap web service with basic authentication.But I have to change with wssecurity in soap.How can I consume coming ws security header I have to read username and password and I have to compare my username and password in my webconfig file inside service. I write this code but I m not sure : I done this way.But how can I configure in webconfig.file

         public class QuantityService : Microsoft.Web.Services3.WebServicesClientProtocol, IQuantityService 
{


    private OperationResult AuthCheck()
    {
        OperationResult retVal = new OperationResult()
        {
            ReturnCode = 0,
            ReturnMessage = "OK"
        };

        string userName = ConfigurationManager.AppSettings["username"].ToString();
        string password = ConfigurationManager.AppSettings["password"].ToString();


        //UsernameToken token = new UsernameToken(userName,password,PasswordOption.SendPlainText);
        QuantityService serviceProxy = new QuantityService();
        SoapContext requestContext = serviceProxy.RequestSoapContext;

        //requestContext.Security.Tokens.Add(token);

        if (requestContext == null)
        {
            throw new ApplicationException("Non-SOAP request.");
        }

        foreach (SecurityToken tok in requestContext.Security.Tokens)
        {
            if (tok is UsernameToken)
            {
                if (userName == ((UsernameToken)tok).Username && password == ((UsernameToken)tok).Password)
                {
                    retVal.ReturnCode = 0;
                    retVal.ReturnMessage = "OK";
                }
                else
                {
                    retVal.ReturnCode = -2;
                    retVal.ReturnMessage = "Unauthorized.";
                }
            }
        }


        return retVal;
    }
Sezer Erdogan
  • 167
  • 1
  • 9
  • 34

0 Answers0