Single Sign-On을 사용하면 사용자가 다른 응용 프로그램이나 웹 사이트에서 포건시 페이지로 이동할 때 원래 응용 프로그램의 사용자 이름으로 포건시 웹 사이트에 자동으로 로그인할 수 있습니다.
토큰을 성공적으로 획득한 경우 반환된 문자열은 "오류:"로 시작하지 않고, 토큰을 얻지 못한 경우 반환된 문자열은 오류 메시지이며 "오류:"로 시작하므로 디버깅 및 위치 지정에 편리합니다.
포건시 빌더에서 [파일>옵션>기타 응용 프로그램과 통합]을 선택하여 암호를 보고 설정합니다.
Single Sign-On을 설정한 후 타사(이동할 수 없는 유형) 애플리케이션에 다음 코드를 작성합니다.
var baseUrl = "http://localhost:25979/Forguncy";
var userName = "administrator";
var password = "7FBqkHeV!4Rw"; // 이 비밀번호는 싱글 사인온 비밀번호입니다.
HttpWebRequest rq = HttpWebRequest.Create(baseUrl + "/SSO/GetUserToken") as HttpWebRequest;
rq.Method = WebRequestMethods.Http.Post;
rq.Accept = "application/json";
rq.ContentType = "application/json";
var loginStr = "{userName:\"" + userName + "\", password:\"" + password + "\"}";
var data = Encoding.UTF8.GetBytes(loginStr);
using (Stream stream = rq.GetRequestStream())
{
stream.Write(data, 0, data.Length);
}
var response = rq.GetResponse();
var token = new StreamReader(response.GetResponseStream()).ReadToEnd();
if(token.StartsWith("Error:"))
{
MessageBox.Show(token);
return;
}
Process.Start(baseUrl + "?token=" + token);