using System;
using System.Web;
using System.Collections;
using System.Security.Cryptography;
using System.Web.Services;
using System.Web.Services.Protocols;

/// <summary>
/// SingleSignOn
/// </summary>
[WebService(Namespace = "http://tabslab.com/mc7/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
[System.Web.Script.Services.ScriptService]
public class SingleSignOn : System.Web.Services.WebService
{
    public SingleSignOn()
    {
    }

    /// <summary>
    /// 타 사이트로 부터 Single sign on 구현을 위한 로그온 토큰을 반환한다.
    ///   - 로그온 토큰을 이용해 /External/Logon.ashx?Token=DSDF..DCF3&ReturnUrl=%2fDefault.aspx 와 같은 URL로 로그온한다.
    /// </summary>
    /// <param name="mailAddress">로그온할 메일 주소</param>
    /// <param name="availSec">토큰 유효 시간(초)</param>
    /// <returns>토큰 반환</returns>
    [WebMethod]
    public string GetLogonToken(string mailAddress, int availSec)
    {
        if (AppSetting.EnableSsoUsingSecureToken)
            return TABS.MailCarrier.Crypt.SingleSignOn.GetLogonTokenEx(mailAddress, availSec, AppSetting.SingleSignOnPassword);
        else
            return "";
    }
}

