Apache Ant

IDE & Build/Ant 2012. 3. 3. 18:26

Apache Ant
Apache Ant Project
개발원Apache 소프트웨어 재단
최신 버전1.8.3 (2012 년 2 월 29 일 (3 일) )
지원 OS크로스 플랫폼
종류빌드 도구
라이센스Apache 라이센스
공식 사이트http://ant.apache.org/


Apache Ant
 (아파치 개미)는 빌드 도구 소프트웨어 이다.

GNU make 의 Java 버전이라고도 할 수있는 것이며, 운영 체제 (OS) 등 특정 환경에 의존하기 어렵고 빌드 도구이다. XML 문서 빌드 (소프트웨어 구축)의 규칙을 작성하는 것이 특징이다. 통합 개발 환경 Eclipse 는 Ant 플러그인 이 기본으로 내장되어있다. 원래 Apache Tomcat 을 빌드하기 위해 개발된 것이다.

Ant는 태스크 라는 몇 가지 것들 XML 요소를 빌드 파일 (기본적으로 build.xml)에 작성하여 빌드 규칙을 만든다. 이 태스크는 Ant 플러그인으로 제공되고있는 것을 외부에서 채용하는 것으로, 추가할 수있다. 또한이 작업을 Ant의 응용 프로그래밍 인터페이스 (API)에 따라 Java로 작성하여 직접 작성 할 수도있다.

또한 최근에는 Java뿐만 아니라 IKVM.NET 프로젝트 및 Mono (소프트웨어) 프로젝트는 Ant task for IKVMC 로 . NET Framework 에서의 이용도 촉진되고있다.

주요 Ant 작업 편집 ]

javac 
Java 소스 코드 를 컴파일 한다.
javadoc 
Java 소스 코드에서 Javadoc 문서 (Java API 문서)를 생성한다.
java 
Java 프로그램을 실행한다.
junit 
테스트 프레임 워크 JUnit 을 사용하여 Java 프로그램을 테스트 한다.
junitreport 
junit 작업 출력 결과 파일을 사용하여 HTML 형식 등에 대응하는 보고서 를 생성한다.
copy 
파일 을 복사합니다.
delete 
디렉토리 와 파일을 삭제한다.
mkdir 
디렉토리를 만듭니다.
ftp 
FTP 연결을 시작하고 파일 업로드 , 다운로드 등을 가능하게한다.
scp 
SCP , SFTP 연결을 시작하고 파일 업로드, 다운로드 등을 가능하게한다.
cvs 
CVS 연결을 시작하여 CVS 저장소 에서 체크 아웃 , 커밋 , 업데이트 가능하게한다.
genkey 
서명 대해서 JAR 파일을 만드는 데 필요한 인증서 를 생성한다.
signjar 
JAR 파일에 서명한다.
native2ascii 
Java 소스 코드 등에 포함된 멀티 바이트 문자열 부분을 JDK 에 포함되어있는 변환 도구를 사용하여 ASCII 코드로 변환한다.
setproxy 
네트워크 에 연결하는 작업을 수행할 때 프록시 서버 주소를 설정한다.
tstamp 
타임 스탬프 를 업데이 트 Ant에서 사용하는 변수 DSTAMP, TSTAMP를 갱신한다.
zip 
지정된 디렉토리와 파일을 ZIP 형식으로 압축 · 보관 한다.
echo 
콘솔 (명령 라인 환경)에 문자열을 출력한다.
splash 
런타임에 지정된 시간 동안 시작 을 표시한다. 이미지를 지정할 수도있다.
buildnumber 
빌드 번호를 업데이 트합니다. 기본적으로 같은 디렉토리에 build.numer라는 파일이 생성되고 파일에 빌드 번호가 기록된다.
ant 
다른 Ant 빌드 파일에서 작업을로드하여 실행한다.








'IDE & Build > Ant' 카테고리의 다른 글

Step by Step Ant  (0) 2012.11.06
Ant 소개  (0) 2012.11.06
Posted by linuxism
,

SQLite

DB/Common 2012. 3. 2. 14:16

SQLite370.svg
개발원D. Richard Hipp
최신 버전3.7.10 (2012 년 1 월 16 일(44 일) )
프로그래밍 언어C
지원 OS크로스 플랫폼
종류관계 데이터베이스 관리 시스템
라이센스공개
공식 사이트www.SQLite.org

SQLite 는 MySQL 과 PostgreSQL 과 같은 데이터베이스 관리 시스템 이지만, 서버가 아닌 애플 리케이션에 통합 사용되는 경량의 데이터베이스이다. 일반적인 RDBMS 에 비해 대규모 작업에는 적합하지만, 중소면 속도에 손색이 없다. 또한 API는 단순히 라이브러리를 호출하고 데이터를 저장하는 단일 파일만을 사용하는 것이 특징이다. 버전 3.3.8에서 전체 텍스트 검색 의 FTS1 모듈이 지원됐다. 그 FTS2 - FTS3과 강화를 계속 버전 3.7.4에서 FTS4 모듈이 지원되고있다.

목차

  [ 숨기기 ] 

특징 편집 ]

  • SQL 92의 많은 기능을 구현
  • 저작권을 포기하고 공용 도메인 에 돌아가있다
  • 서버 가 아닌 라이브러리
    • 라이브러리는 수백 KB 정도의 작은 발자국
    • C 런타임이 아닌 별도 라이브러리를 필요로하지 않는다
    • 관리 도구를 사용하여 설치 및 유지 보수가 필요하지
    • 명령줄 도구를 사용할 수
  • 바이트 순서 에 의존하지 않는 (2.6.3 이상) 이식의 단일 파일
  • 데이터 형식 을 지정할 필요가 없다
    • 지원되는 형식은 Null / Integer / Real / Text / BLOB에만
    • Unicode 지원
    • BLOB는 메모리가 허락하는 한
    • ROWID를 가지고있다 (그러나, 3.6.18 이전에는 외부 제약 키 구조가 없다)
  • 트랜잭션 지원
    • 스레드로부터 안전 (바이너리에 의한 전달은 다시 컴파일이 필요한 경우도 있음)
  • 보기 지원
  • 트리거 지원
  • C 언어 를 사용하여 함수를 추가할 수
  • Tcl 바인딩 배포 키트 표준 첨부하고있다
  • PHP5 , Python 2.5, Adobe AIR 표준 지원
  • 기타 C , C + + , Curl (프로그래밍 언어) , Perl , Ruby , Delphi 등 다수의 언어에 대한 바인딩
  • 전체 텍스트 검색 의 FTS1 모듈이 지원되며 SQL 문장에서 전체 텍스트 검색 인덱스에 대해 검색할 수
  • Android 단말의 표준 라이브러리로 사용되고있다

개요 편집 ]

SQLite는 본체 프로그램에 직접 연결된 라이브러리 또는 공유 라이브러리 와 동적 링크 라이브러리 의 형태로 사용할 수있는 임베디드 데이터베이스 엔진이다. 그 특징은 대체로 600kb 전후의 발자국 풀 세트의 SQL 문과 형 속박되지 않은 데이터 집합을 사용할 수있다. 데이터베이스 저장소에 대한 액세스를 내장하고있어, 파일 및 메모리 스토리지를 지원하고있다. 파일을 공유하는 여러 응용 프로그램이 데이터베이스 인스턴스를 공유하는 것도 가능하며, 서버 클라이언트 모델이 아닌 응용 프로그램 로컬에서 사용하는 데이터베이스 엔진은 매우 합리적인 설계로되어있다.

제대로 사용하면 SQLite는 매우 안전한 데이터베이스로 사용될 수있다. 이유는 서버 클라이언트 모델은 아니기 때문에 여러 클라이언트가 사용하는 서버가 보유하는 데이터베이스 인스턴스에 타격을 줄 수 기본적으로 없다. 얼마나 벽을 돌파하려고도 응용 프로그램이 소유하는 데이터베이스 인스턴스까지 밖에 접근할 수 없기 때문이다. 형 속박이없는 것이 보안 문제로들 수 있지만, 이것은뿐만 아니라 형식 속박이없는 스칼라 타입을 사용할 수있는 데이터베이스 전반에 말할 수이며 SQLite의 본질에는 아무런 관계가 없다.

SQLite의 또 다른 특징은 바이트 순서에 의존하지 않는 아키텍처 독립적인 스토리지를 채용하고있는 것이다. 따라서 데이터베이스 인스턴스를 포함하는 스토리지 된 파일은 재사용성이 높고, 스토리지 버전 조심하면 응용 프로그램에서 저장소를 제거하고 완전히 다른 OS와 아키텍처에 동작하는 다른 응용 프로그램에 데이터 변환하지 않고 옮길 수있다.

내장 것, 스토리지까지 네이티브 코드에서 직접 실행 사이에 어떤 프로토콜 및 프로세스 간 통신이 없기 때문에 그 동작은 매우 빠르다. 일단 트랜잭션을 시작하면 스토리지 잠겨 트랜잭션의 세션은 최대한 설정에서 허용 캐시를 유효하게 작동하기 위해 SQL의 복잡 고급 문을 사용하는 것을 사용자에게 영향을 미치지 않고 정도 빠르게 데이터베이스에 액세스할 수있다. 이것은 응답성이 중요한 애플 리케이션에서 중요한 요소가되며, SQLite를 서버와의 중간에 캐시로 채용하는 사례와 응용 프로그램 임베디드 데이터베이스로의 채용을 촉진 이유도되고있다.

표준으로 탑재하고있는 데이터 세트의 형태는 정수형 (INTEGER), 문자열 (TEXT), 무제한 스칼라 (BLOB)의 3 종류이다. 실제로 INTEGER 형식이 바이너리 값으로 변환된다, TEXT 형식이 응용 프로그램 계층에서 문자열 변환이 필요한 힌트가 될 수있는 다른 응용 프로그램에 형식 속박이 매우 완화되어있다. 사전에 문자열 스칼라가 얼마나 많은 공간을 필요로하는 CREATE TABLE 문을 실행할 때 선언할 필요가 없기 때문에 응용 프로그램의 기본 설계에 매우 관대하며, 사양 변경에 대한 데이터베이스를 변환 내지 재구성 필요없이 어플 리케이션 개발을 쉬운 것으로하고있다.

아래의 CUI 기반 관리 도구를 표준으로 갖춘 다른 여러 GUI 기반 관리 소프트웨어가 풍부하다. 또한 스토리지 사양이 아키텍처에 의존하지 않기 때문에 관리 도구 직접 실행이 어려운 시스템 (임베디드 소프트웨어 개발 등)에서도 스토리지를 꺼내 Windows 컴퓨터 등으로 데이터를 확인하거나 SQL 문을 실행하는 것이 가능 있다.

관리 도구 편집 ]

또한 SQLiteManager는 관리 도구 버전 2와 버전 3을 지원하고, 이쪽은 일본어 메뉴 표시도 선택할 수있다. 그러나 기본 charset은 EUC-JP이므로, UTF-8 지원하려면 설정 파일이다 japanese.inc.php을 UTF-8 문자 코드 다시 작성해야한다. 새 데이터베이스를 만들려면 설치 디렉토리의 경로에서 파일 이름을 지정하면 좋고, 그 필요한 테이블을 추가합니다. 이 도구는 브라우저의 캐시가 효과가 있으면 올바른 데이터가 바로 반영되지 않기 때문에주의가 필요하다.

다른 관리 도구로서 Mozilla Firefox 부가 기능 SQLite Manager가있다. Web 브라우저에서 GUI에서 데이터베이스에 대한 기본적인 조작이 가능하다.

ODBC 편집 ]

SQLite ODBC 드라이버가 타사에서 제공되고있다. SQLite 2와 SQLite 3 버전이 있으며, SQLite 2 용에는 또한 UTF-8 지원 버전이있다.Microsoft Access 에서 ODBC 연결할 때 데이터 형식을 미리 SQLite 측의 CREATE TABLE로 선언해야한다. 그렇게 두지 않으면 모든 데이터 형식을 int로 간주될 수있다. 일본어 문자 코드는 UTF-8로두면, Access 측에서도 제대로 표시된다.

도서 편집 ]

외부 링크 편집 ]

각주 편집 ]



=============================================================================================

SQLite Logo.svg
개발자리처드 힙
발표일2000년 8월
최근 버전3.7.9 / 2011년 11월 1일
프로그래밍 언어C
운영 체제크로스 플랫폼
크기~275 kiB
종류관계형 데이터베이스 (임베디드)
라이선스퍼블릭 도메인[1]
웹사이트http://sqlite.org/


SQLite는 MySQL나 PostgreSQL와 같은 데이터베이스 관리 시스템이지만, 서버가 아니라 응용프로그램에 넣어 사용하는 비교적 가벼운 데이터베이스이다. 영어권에서는 '에스큐엘라이트(ˌɛs ˌkjuː ˈɛlaɪt)'[2]또는 '시큐엘라이트(siːˈkwɛlaɪt)'[3]라고 읽는다.

일반적인 RDBMS에 비해 대규모 작업에는 적합하지 않지만, 중소 규모라면 속도에 손색이 없다. 또 API는 단순히 라이브러리를 호출하는 것만 있으며, 데이터를 저장하는 데 하나의 파일만을 사용하는 것이 특징이다. 버전 3.3.8에서는 풀텍스트 검색 기능을 가진 FTS1 모듈이 지원된다. 컬럼을 삭제하거나 변경하는 것 등이 제한된다.


구글
 안드로이드 운영 체제에 기본 탑재된 데이터베이스이기도 하다.

[편집]주석

  1.  (영어)SQLite Copyright. sqlite.org. 2010년 5월 17일에 확인.
  2.  리처드 힙 (발표자). (2006-05-31). SQLite 소개 (플래시 영상). 구글. 2010-03-23에 확인. "00:01:14 [...] 에스큐엘 라이트 [...]"
  3.  리처드 힙 (발표자). (2006-05-31). SQLite 소개 (플래시 영상). 구글. 2010-03-23에 확인. "00:48:15 [...] 시퀠라이트 [...]"

'DB > Common' 카테고리의 다른 글

테이블 설계 시 고려 사항  (0) 2012.03.17
회원 정보 테이블 설계 시 고려 사항  (0) 2012.03.17
varchar와 varchar2의 차이와 number(5,2) 의미  (1) 2012.02.13
CHAR()와 VARCHAR2() 차이  (0) 2012.02.13
TABLE의 key  (0) 2012.01.09
Posted by linuxism
,

인증 기능이 추가된 텔넷 기반 프로토콜. 간이 전자 우편 전송 프로토콜(SMTP)에 사용하는 경우 인증된 사용자만이 외부로부터 메일 서버를 통해서 메일을 보낼 수 있도록 하여 스펨 메일 중계를 방어하는 역할을 한다. 

Simple Authentication and Security Layer ( SASL )는 인터넷 프로토콜 의 인증 및 데이터 보안 을위한 프레임 워크 이다. 응용 프로그램 프로토콜에서 인증 메커니즘을 분리하는 것을 허용하고 이론적으로 SASL에서 지원하는 인증 메커니즘을 모든 응용 프로그램 프로토콜에서 사용할 수있다. 사용자가 다른 사람의 신원을 추정할 수있다 "프록시 인증"도 지원할 수있다. 데이터 일관성 / 데이터 기밀성 서비스를 제공하는 "데이터 보안 계층"도 제공할 수있다. 데이터 보안 계층을 제공하는기구의 예로는 DIGEST-MD5가있다. SASL을 지원하는 응용 프로그램 프로토콜은 Transport Layer Security (TLS)을 지원하여 SASL 제공하는 서비스를 보완하는 것이 일반적이다.

SASL은 카네기 멜론 대학 의 John Gardiner Myers가 RFC 2222 로 정리한 것이 최초이다. 이 문서는 Alexey Melnikov와 Kurt Zeilenga 편집한 RFC 4422 에서 이미 치환되어있다.

SASL은 IETF 의 인터넷 표준 의 표준화 과정에 있으며, 현재는 "표준화의 제창"단계이다.

목차

  [ 숨기기 ] 

SASL기구 편집 ]

SASL 메커니즘은 일련의 요청 및 응답 모델화된있다. 미리 정의된 SASL기구 [1] 은 다음과 같다.

  • "EXTERNAL"- 인증 흐름 속에서 암시적으로 수행됩니다 (예를 들어, IPsec 과 TLS 를 이미 사용하고있는 프로토콜).
  • "ANONYMOUS"- 인증하지 게스트가 액세스할 수.
  • "PLAIN"- 간단한 평문 의 암호 메커니즘. LOGIN 메커니즘은 PLAIN로 대체되었다.
  • "OTP"- 일회용 암호 메커니즘. OTP는 SKEY기구로 대체되었다.
  • "SKEY"- S / KEY 기구.
  • CRAM-MD5 "- HMAC-MD5를 기반으로 한 단순한 요청 - 응답 방식.
  • DIGEST-MD5 "- MD5를 기반으로하는 HTTP 다이제스트 호환 요청 - 응답 방식. 데이터 보안 계층을 제공합니다.
  • NTLM "- NT LAN Manager 인증기구.
  • GSSAPI "- GSSAPI 에 따르면 Kerberos V5 인증 데이터 보안 계층을 제공합니다.
  • GateKeeper와 GateKeeperPassport - 마이크로 소프트 가 MSN Chat 용으로 개발 요청 - 응답 메커니즘.

SASL기구로서 모든 GSSAPI 메커니즘을 지원하는 것이 예정되어있다.

SASL 지원 응용 프로그램 프로토콜 편집 ]

SASL 지원 응용 프로그램 프로토콜은 SASL 교환을 "프로필"로 정의하고있다. 또한 "ldap"와 같은 "서비스 이름"을 가지고 GSSAPI 및 Kerberos 레지스트리에서 공유 [2] . SASL을 이미 지원하고있는 프로토콜로 AMQP , BEEP , IMAP , LDAP ,IRCX , POP , SMTP , IMSP , ACAP , ManageSieve, XMPP 등이있다.

관련 항목 편집 ]

외부 링크 편집 ]

  • RFC 4422 - Simple Authentication and Security Layer (SASL) - obsoletes RFC 2222
  • RFC 4505 - Anonymous Simple Authentication and Security Layer (SASL) Mechanism - obsoletes RFC 2245
  • the IETF SASL Working Group - SASL의 개정과 GSSAPI 메커니즘을 개발하고있다.
  • CMU SASL Information
  • Cyrus SASL - 무료 및 이식성 SASL 라이브러리.
  • GNU SASL - 무료 및 이식성 SASL 유틸리티와 라이브러리. GNU GPLv3 (유틸리티)와 LGPLv2.1 (라이브러리)의 라이센스되고있다.
  • Dovecot SASL - 현재 성장하고있는 SASL 구현
  • RFC 2831 - Using Digest Authentication as a SASL Mechanism


Simple Authentication and Security Layer (SASL) is a framework for authentication and data security in Internet protocols. It decouples authentication mechanisms from application protocols, in theory allowing any authentication mechanism supported by SASL to be used in any application protocol that uses SASL. Authentication mechanisms can also support proxy authorization, a facility allowing one user to assume the identity of another. They can also provide a data security layer offering data integrity and data confidentiality services. DIGEST-MD5 provides an example of mechanisms which can provide a data-security layer. Application protocols that support SASL typically also support Transport Layer Security (TLS) to complement the services offered by SASL.

In 1997 John Gardiner Myers wrote the original SASL specification (RFC 2222) while at Carnegie Mellon University. In 2006 that document was made obsolete by RFC 4422, edited by Alexey Melnikov and Kurt Zeilenga.

SASL is an IETF Standard Track protocol and is, as of 2010, a Proposed Standard.

Contents

  [hide

[edit]SASL mechanisms

A SASL mechanism implements a series of challenges and responses. Defined SASL mechanisms[1] include:

  • "EXTERNAL", where authentication is implicit in the context (e.g., for protocols already using IPsec or TLS)
  • "ANONYMOUS", for unauthenticated guest access
  • "PLAIN", a simple cleartext password mechanism. PLAIN obsoleted the LOGIN mechanism.
  • "OTP", a one-time password mechanism. OTP obsoleted the SKEY Mechanism.
  • "SKEY", an S/KEY mechanism.
  • "CRAM-MD5", a simple challenge-response scheme based on HMAC-MD5.
  • "DIGEST-MD5", HTTP Digest compatible challenge-response scheme based upon MD5. DIGEST-MD5 offers a data security layer.
  • "NTLM", an NT LAN Manager authentication mechanism
  • "GSSAPI", for Kerberos V5 authentication via the GSSAPI. GSSAPI offers a data-security layer.
  • GateKeeper (& GateKeeperPassport), a challenge-response mechanism developed by Microsoft for MSN Chat

The GS2 family of mechanisms supports arbitrary GSS-API mechanisms in SASL.[2] It is now standardized as RFC 5801.

[edit]SASL-aware application protocols

Application protocols define their representation of SASL exchanges with a profile. A protocol has a service name such as "ldap" in a registry shared withGSSAPI and Kerberos.[3]

As of 2010 protocols currently supporting SASL include:

[edit]See also

[edit]External links

  • RFC 4422 - Simple Authentication and Security Layer (SASL) - obsoletes RFC 2222
  • RFC 4505 - Anonymous Simple Authentication and Security Layer (SASL) Mechanism - obsoletes RFC 2245
  • The IETF SASL Working Group, chartered to revise existing SASL specifications, as well as to develop a family of GSSAPI mechanisms
  • CMU SASL Information
  • Cyrus SASL, a free and portable SASL library providing generic security for various applications[4]
  • GNU SASL, a free and portable SASL command-line utility and library, distributed under the GNU GPLv3 and LGPLv2.1, respectively
  • Dovecot SASL, an SASL implementation
  • RFC 2831 - Using Digest Authentication as a SASL Mechanism
  • Java SASL API Programming and Deployment Guide

[edit]References

  1. ^ SASL mechanisms
  2. ^ Simon Josefsson. "Using GSS-API Mechanisms in SASL: The GS2 Mechanism Family".
  3. ^ GSSAPI/Kerberos/SASL Service names
  4. ^ Bartlett, Andrew (2005-04-25). "GENSEC - Designing a security subsystem" (PDF). p. 4. Retrieved 2010-03-28. "The idea of a generic security API is not new [...] to implement, by some mechanism or other, a wide variety of these protocols, including SASL, GSS-API, SPNEGO as well as the proprietary NTLMSSP [...] in the wider open source world we see individual applications introduce similar abstraction layers, or adopt the Open Source Cyrus-SASL library to provide one.






'Security > Common' 카테고리의 다른 글

Pass phrase vs. Password  (0) 2012.07.29
패스워드 암호화  (0) 2012.05.24
XSS(Cross-Site Scripting)  (0) 2012.02.29
Implicit FTPS and Explicit FTPS  (0) 2011.11.14
CISSP에서 도구  (0) 2011.11.10
Posted by linuxism
,