지난 번 문서에서는 실험과정의 오류까지 기록하느라 너무 장황하게 설명한 느낌이 짙어서, 간추린 핵심 요약본을 따로 정리해본다.
기초 개념
- IdP(Identity Provider) : 신원 인증 서비스 제공해주는 모듈, 서버. 중앙 인증 서버를 의미.
- SP(Service Provider) : 일반 서비스를 제공해주는 모듈, 서버. 개별 서비스 사이트 의미.
- 인증 서버 : ID와 패스워드를 보관하며, 인증 요청에 대해 승인/거절하는 서버
- 서비스 서버 : 일반적인 웹 사이트의 기능을 수행하는 서버.
- JOSSO Gateway : 인증서버에 탑재된 인증 모듈, callee
- JOSSO Agent : 일반 서비스 서버에 설치하는 JOSSO 인증 클라이언트 모듈, caller
다운로드
- 다운로드 사이트 2009년 8월 현재, 최신 버전 1.8.0 ZIP 파일 다운로드
임시 폴더에 압축을 풀어놓는다. (설치 작업이 끝난 후에는 삭제할 예정임. 뭐, 공간 남으면 그대로 둬도 무해하다.)
- c:\tools\josso-1,8.0
JOSSO Gateway 설치
Gateway는 뭔가 ‘통로’가 되는 도구로서, 인증 서버의 모듈을 의미한다. 대비되는 개념으로는 Agent가 있다.
JOSSO Gateway는 자바 기반의 프로그램 모듈이므로, 당연히 자바 서블릿 컨테이너가 필요하다. 여기에서는 apache-tomcat을 컨테이너로 삼아 설치한다.
- xampp apache-tomcat 설치와 설정 관련 –> 참조! XAMPP Tomcat Add-on 설치
윈도 커맨드 창(cmd)을 열어,
- cd c:\tools\josso-1.8.0\bin 으로 가서, josso-gsh 실행
tomcat이 설치된 디렉토리 이름과 tomcat 버전 이름을 인자값으로 주었다.
tomcat을 재시동하고, 아래 URL을 방문해보자.
http://localhost:8080/josso/signon/login.do
아래 페이지와 같이 나오면, ‘성공’이다.
기본으로 설정되어 있는 사용자 아이디와 패스워드는 아래와 같다.
- 참고로, 이 값들은, tomcat/lib/josso-credentials.xml 에 들어있고, 상세정보는 tomcat/lib/josso-users.xml 에 들어있다.
user1 | user1pwd |
user2 | user2pwd |
tomcat | tomcatpwd |
PHP JOSSO Agent 설치
위에서 다운로드 받은 소스 파일을 압축 해제한 곳을 찾아보면, 아래 폴더에 다음과 같은 압축파일이 또 들어있다.
- C:\Tools\josso-1.8.0 다운로드 압축해제한 폴더
- C:\Tools\josso-1.8.0\dist\agents\src\josso-php-agent-1.8.0-.zip
이 파일을 압축해제해서 열어보면, 아래와 같은 폴더가 두 개 들어있다.
josso-php-inc | agent 프로그램 기본 클래스, 설정파일 | php.ini include_path가 설정된 폴더에 압축해제하거나, 아예 include_path에 넣어준다. |
josso-php-partnerapp | agent 프로그램 기본 모듈, 실제 사용 | xampp/htdocs/josso-php-partnerapp 폴더로 압축해제 |
실제 배치된 파일들의 위치는 아래와 같다.
include_path = ".;C:\Tools\xampp\php\PEAR;C:\Tools\phpLibs" |
C:\Tools\phpLibs\josso-php-inc |
C:\Tools\xampp\htdocs\josso-php-partnerapp |
josso-login.php josso-logout.php josso-security-check.php |
약간의 편집작업이 필요하다. 위의 josso-php-partnerapp 폴더의 파일들을 모두 열어서 아래 행을 프로그램 첫 부분에 넣어준다.
include_once("josso-php-inc/josso.php"); |
josso-php-inc에 포함된 nusoap이 문제다. soapclient 라는 클래스가 PHP 5.x 버전 내장 함수와 충돌한다. 해결책은?
- nusoap 파일에서 soapclient 클래스를 soapclientW로 고치라는 조언이 있다. [from: nusoap – Cannot redeclare class soapclient « blo9]
- ‘soapclientnusoap’로 클래스 이름을 바꾼 패키지. http://code.google.com/p/nusoap-for-php5/
- php.ini에서 php_soap.dll 로딩을 코멘트 처리하는 방법도 있다.
마지막으로, josso-php-inc 폴더에서 josso-cfg.inc 파일의 내용을 확인한다. 만약, 초기 설정과 다른 것이 있으면 수정해준다.
PHP JOSSO 사이트 예제 설치
다운로드 받았던 파일 압축해제한 곳으로부터,
- C:\Tools\josso-1.8.0\dist\samples\apps\josso-partner-php-1.8.0-.zip
이 파일들을 htdocs/josso-php/ 폴더에 풀어놓자. [josso 라고 짧게 이름을 주면 좋겠지만, apache와 tomcat을 연동시켜 놓은 상태라면, tomcat에 이미 그 이름의 폴더가 있다. tomcat이 이긴다. php 파일이 없다고 나온다.]
index.php sample-ask-login.php |
두 파일 모두 편집기에서 열어서, 첫줄에 아래와 같이 추가해준다. josso agent 모듈의 경로를 지정해주는 일이다.
자, 이제 준비는 얼추 끝났다.
http://localhost/josso-php/ 링크를 눌러서 실험 시작!
----------------------------------------------------
FROM: https://blog.naver.com/joycestudy/100087210725
相关推荐
一个开源的J2EE-based的SSO(SSO:单一登录技术是一种认证和授权机制,它允许注册用户只需要在任一成员网站上登录一次,而后授权访问其他连接的分支网站,无需再进行验证登录)基础结构.它的目的是提供一种用来解决在...
josso-1.8.0压缩包中可能包含以下组件和配置文件: 1. **JOSSO核心库**:包括Java类库和其他必要的资源文件,用于构建和运行SSO服务。 2. **Agent安装包**:用于在各个应用服务器上部署和配置Agent,以便与中央SSO...
2. apache-tomcat-5.5.25.zip:Tomcat服务器安装文件。 二、配置josso认证服务器 1. 解压apache-tomcat-5.5.25_josso-1.6.zip文件,获取josso war文件。 2. 将josso war文件拷贝到%CATALINA_HOME%/webapp目录下,...
安装目录(Install Home)应与CATALINA_HOME环境变量的值一致,指明Tomcat的安装位置。最后,如果是远程JOSSO2实例,需要提供远程JOSSO2 URL,这是激活web服务的端点,以确保远程激活成功。 通过这些步骤,JOSSO2.3...
1. **配置 JOSSO**:首先需要在服务器上安装和配置 JOSSO。这包括设置 JOSSO 的基本参数、定义信任关系等。 2. **集成现有 Web 应用**:接下来,需要对现有的 Web 应用进行简单的配置,使其能够与 JOSSO 交互。这...
将Josso安装包中的`josso-gateway-web-1.8.0.war`文件复制到GlassFish的`domains/domain1/autodeploy`目录下。 2. 等待GlassFish自动部署该WAR文件。 - **修改配置文件**: 1. 将Josso安装包中的`josso-gateway-...
- 将`josso-dist/gateway/apps/josso-gateway-web-1.8.0.war`部署到`glassfish/domains/domain1/autodeploy`目录下。 - 将`josso-dist/gateway/config/*.xml`文件复制到`glassfish/domains/domain1/lib/applibs`目录...
通过访问JOSSO的文档,可以获取更多关于如何安装、配置和维护josso2-2.4.3的详细信息。这些文档通常会涵盖从安装指南到故障排查的所有内容,帮助用户更好地理解和利用这个强大的SSO解决方案。 总之,JOSSO 2.4.3为...
使用"python-josso-auth"时,开发人员需要先将其安装到Python环境中。这可以通过Python的包管理工具pip来完成,命令如下: ```bash pip install python-josso-auth==0.1.3 ``` 安装完成后,可以导入库并根据文档或源...
标题中的"loginServer CAS / josso / LDAP / RBAC / ACL"涉及到了多个IT领域的关键概念,这些都是构建安全、高效的企业级身份验证和授权系统的重要组成部分。以下是对这些概念的详细解释: 1. **CAS(Central ...
"josso-final"这个标题可能指的是一个Java项目或者框架的最终版本,可能是“Java Security and Single Sign-On”(Java安全和单点登录)的简称。单点登录(Single Sign-On, SSO)是一种身份验证机制,允许用户在一次...
Atricore的JOSSO是一种开源且受商业支持的Internet单点登录(FSSO)解决方案,用于点击和基于标准(SAML2)的Internet规模SSO实施。 欲了解更多信息,请通过以下网址与我们联系:http://www.josso.org
dm2e-gui ...安装 unzip dm2e-gui-deploy.zip cd dm2e-gui-deploy bash bin/verify-install # fix all files mentioned here bash bin/start-fuseki.sh # to start fuseki, otherwise, adapt src/
本文主要分析两种常见的SSO实现框架——JOSSO(Java Open Single Sign-On)和CAS(Central Authentication Service)。 JOSSO是一个基于Java和J2EE的开源SSO框架,其主要特点如下: 1. 100% Java实现,利用了JAAS...
**开源SSO软件**如OpenSSO(基于Sun Java System Access Manager)、JOSSO和CAS(Yale University开发)。开源SSO产品的优势在于成本低、灵活性高,且通常有活跃的社区支持。例如,CAS以其先进的设计理念、合理的...
JOSSO采用JAAS(Java Authentication and Authorization Service)标准,支持Web服务/SOAP、EJB、Struts、Servlet/JSP等技术,实现平台无关的用户验证。JOSSO的设计旨在简化SSO的实施和管理,适用于多应用环境。 ...
JOSSO利用了JAAS、Web服务、EJB、Struts、Servlet/JSP等标准技术,可轻松集成到各种Java环境中,实现平台无关的用户验证。 这些解决方案的存在,为解决企业中的身份验证问题提供了有效工具,既提高了用户工作效率,...
josso 是另一个 Java 写的单点登录产品,通常认为比 OpenSSO 更成熟一些。CAS 是耶鲁大学开发的单点登录产品,也是我们最后选定的单点登录产品。CAS 的优点很多,例如设计理念先进、体系结构合理、配置简单、客户端...
1. **部署SSO服务器**:首先,需要在服务器上部署CAS,这包括安装和配置CAS服务。 2. **集成应用程序**:然后,在需要实现SSO的应用程序中集成CAS客户端,这可能涉及到在应用程序代码中添加特定的库或插件,以与...
JOSSO(Java Open Single Sign-On)是另一个基于Java的SSO解决方案,尽管其在某些社区中的评价并不高。 学习和实施SSO时,开发者可以参考社区资源,如BEA广州UserGroup的讨论,以及David的博客和其他专家的文章,...