|
JavaTM Platform Standard Ed. 6 |
|||||||||
| 전의 클래스 다음의 클래스 | 프레임 있어 프레임 없음 | |||||||||
| 개요: 상자 | 필드 | 생성자 | 메소드 | 상세 : 필드 | 생성자 | 메소드 | |||||||||
java.lang.Objectjavax.security.auth.x500.X500Principal
public final class X500Principal
X. 500 의 Principal 를 나타냅니다. X500Principal 는 「CN=Duke, OU=JavaSoft, O=Sun Microsystems, C=US」와 같은 식별명으로 표기됩니다.
이 클래스는, 식별명의 캐릭터 라인 표현을 사용하는지, 식별명의 ASN. 1 DER encode 바이트 표현을 사용해 인스턴스화 됩니다. 식별명의 캐릭터 라인 표현에 대한 현재의 스펙은,RFC 2253 으로 정의되고 있습니다. 그러나, RFC 2253 으로 RFC 1779 의 양쪽 모두에 기술된 캐릭터 라인 형식도 가능하고, 또,RFC 2459 로 OID (Object Identifier)가 정의되고 있는 속성의 형태 키워드도 인식합니다.
이 X500Principal 의 캐릭터 라인 표현은,getName 메소드를 호출하는 것으로 취득할 수 있습니다.
X509Certificate 의 getSubjectX500Principal 메소드와 getIssuerX500Principal 메소드는, 증명서의 발행자 필드와 피인증자 필드를 나타내는 X500Principal 를 돌려줍니다.
X509Certificate ,
직렬화 된 형식 | 필드의 개요 | |
|---|---|
static String |
CANONICAL
Distinguished Name 의 정규의 String 형식입니다. |
static String |
RFC1779
Distinguished Name 의 RFC 1779 String 형식입니다. |
static String |
RFC2253
Distinguished Name 의 RFC 2253 String 형식입니다. |
| 생성자 의 개요 | |
|---|---|
X500Principal (byte[] name)
ASN. 1 DER encode 형식의 식별명으로부터 X500Principal 를 작성합니다. |
|
X500Principal (InputStream is)
ASN. 1 DER encode 형식의 식별명을 포함한 InputStream 로부터 X500Principal 을 작성합니다. |
|
X500Principal (String name)
X. 500 식별명 (예: CN=Duke, OU=JavaSoft, O=Sun Microsystems, C=US)의 캐릭터 라인 표현으로부터 X500Principal 를 작성합니다. |
|
X500Principal (String name,
Map <String ,String > keywordMap)
X. 500 식별명 (예: CN=Duke, OU=JavaSoft, O=Sun Microsystems, C=US)의 캐릭터 라인 표현으로부터 X500Principal 를 작성합니다. |
|
| 메소드의 개요 | |
|---|---|
boolean |
equals (Object o)
지정된 Object 곳의 X500Principal 가 동일한지 어떤지를 비교합니다. |
byte[] |
getEncoded ()
ASN. 1 DER encode 형식의 식별명을 돌려줍니다. |
String |
getName ()
RFC 2253 으로 정의된 형식에서, X. 500 식별명의 캐릭터 라인 형식을 돌려줍니다. |
String |
getName (String format)
지정한 형식에서 X. 500 식별명의 캐릭터 라인 형식을 돌려줍니다. |
String |
getName (String format,
Map <String ,String > oidMap)
지정한 형식에서 X. 500 식별명의 캐릭터 라인 형식을 돌려줍니다. |
int |
hashCode ()
X500Principal 의 해시 코드를 돌려줍니다. |
String |
toString ()
이 X500Principal 의, 사용자가 사용하기 쉬운 캐릭터 라인 형식을 돌려줍니다. |
| 클래스 java.lang. Object 로부터 상속된 메소드 |
|---|
clone , finalize , getClass , notify , notifyAll , wait , wait , wait |
| 필드의 상세 |
|---|
public static final String RFC1779
public static final String RFC2253
public static final String CANONICAL
| 생성자 의 상세 |
|---|
public X500Principal(String name)
X500Principal 를 작성합니다. 식별명은 RFC 1779 나 RFC 2253 (어느쪽이나 가능)으로 정의된 문법을 사용해 지정할 필요가 있습니다.
이 생성자 은, RFC 1779 로 RFC 2253 으로 정의되었다 (그리고 getName(String format) 로 리스트 된다) 속성의 형태 키워드를 인식할 뿐만 아니라, RFC 2459 로 정의된 OID 를 가지는 T, DNQ 또는 DNQUALIFIER, SURNAME, GIVENNAME, INITIALS, GENERATION, EMAILADDRESS, SERIALNUMBER 의 각 키워드 및 그 직후의 키워드도 인식합니다. 그 다른 속성의 형태는 OID 로 지정할 필요가 있습니다.
name - RFC 1779 형식 또는 RFC 2253 형식의 X. 500 식별명
NullPointerException - name 가 null 의 경우
IllegalArgumentException - name 의 지정이 올바르지 않은 경우
public X500Principal(String name,
Map <String ,String > keywordMap)
X500Principal 를 작성합니다. 식별명은 RFC 1779 나 RFC 2253 (어느쪽이나 가능)으로 정의된 문법을 사용해 지정할 필요가 있습니다.
이 생성자 은,X500Principal(String) 로 지정된 속성의 형태 키워드와keywordMap 파라미터내에 엔트리를 가지는 그 외의 키워드를 인식합니다. X500Principal(String) 가 인식하는 디폴트의 키워드보다, keywordMap 내의 키워드 엔트리 쪽이 우선됩니다. 키워드는 모두 대문자로 지정해 주세요. 대문자로 지정하지 않았던 경우, 그 키워드는 무시됩니다. 키워드가 올바르게 지정되어 있지 않은 경우, 그 키워드는 무시됩니다만, 이름에 포함되는 키워드 부분에 대응하는 OID 가 올바르게 지정되어 있지 않은 경우는,IllegalArgumentException 가 throw 됩니다. 단일의 OID 에, 최대 2 개(살)이 다른 키워드를 대응 붙일 수가 있습니다.
name - RFC 1779 형식 또는 RFC 2253 형식의 X. 500 식별명keywordMap - 속성의 형태 키워드 맵. 각 열쇠는, String 형식 (피리어드로 단락지어진 제로 이상이 연속하는 정수)에서 나타내진 객체 식별자에 대응하는 키워드 String . 맵은 빈 상태(empty)에서 만나도 괜찮지만,null 는 되지 않는다
NullPointerException - name 또는 keywordMap 가 null 의 경우
IllegalArgumentException - name 가 올바르게 지정되어 있지 않은 경우, 또는 name 에 포함되는 키워드 부분에 대응하는 OID 가 올바른 형식이 아닌 경우public X500Principal(byte[] name)
X500Principal 를 작성합니다. 이 구조체의 ASN. 1 표기는 다음과 같이 됩니다.
Name ::= CHOICE {
RDNSequence }
RDNSequence ::= SEQUENCE OF RelativeDistinguishedName
RelativeDistinguishedName ::=
SET SIZE (1 ..MAX) OF AttributeTypeAndValue
AttributeTypeAndValue ::= SEQUENCE {
type AttributeType,
value AttributeValue }
AttributeType ::= OBJECT IDENTIFIER
AttributeValue ::= ANY DEFINED BY AttributeType
....
DirectoryString ::= CHOICE {
teletexString TeletexString (SIZE (1..MAX)),
printableString PrintableString (SIZE (1..MAX)),
universalString UniversalString (SIZE (1..MAX)),
utf8String UTF8String (SIZE (1.. MAX)),
bmpString BMPString (SIZE (1..MAX)) }
name - ASN. 1 DER encode 형식의 식별명을 포함한 바이트 배열
IllegalArgumentException - encode 에러가 발생했을 경우 (DN 의 부정한 형식)public X500Principal(InputStream is)
InputStream 로부터 X500Principal 를 작성합니다. 이 구조체의 ASN. 1 표기는,X500Principal(byte[] name) 로 설명하고 있습니다.
입력 스트림의 read 위치는, encode 한 식별명의 후에 오는, 다음의 이용 가능한 바이트가 됩니다.
is - ASN. 1 DER encode 형식의 식별명을 포함한 InputStream
NullPointerException - InputStream 가 null 의 경우
IllegalArgumentException - encode 에러가 발생했을 경우 (DN 의 부정한 형식)| 메소드의 상세 |
|---|
public String getName()
이 메소드는,getName(X500Principal.RFC2253) 를 호출하는 것으로 등가입니다.
Principal 내의 getName X500Principal 의 식별명public String getName(String format)
형식에 「RFC1779」를 지정했을 경우, 이 메소드는 RFC 1779 로 정의되고 있는 속성의 형태 키워드 (CN, L, ST, O, OU, C, STREET)를 발행합니다. 그 다른 속성의 형태는, OID 로서 발행됩니다.
형식에 「RFC2253」를 지정했을 경우, 이 메소드는 RFC 2253 으로 정의되고 있는 속성의 형태 키워드 (CN, L, ST, O, OU, C, STREET)를 발행합니다. 그 다른 속성의 형태는, OID 로서 발행됩니다. 엄밀하게 해석하면(자), RFC 2253 에서는, UTF-8 캐릭터 라인 표현만을 지정할 수 있습니다. 이 메소드가 돌려주는 String 는, 이 UTF-8 표현을 복호화 하는 것으로 얻을 수 있는 Unicode 캐릭터 라인이 됩니다.
형식에 "CANONICAL" 를 지정했을 경우, 이 메소드는 RFC 2253 에 적합해, 다음과 같이 정규화된 캐릭터 라인 표현을 돌려줍니다.
String.toUpperCase(Locale.US) 를 사용해 대문자에 변환된다.
String.toLowerCase(Locale.US) 를 사용해 소문자에 변환된다.
장래, 표준 형식이 추가 도입될 가능성이 있습니다.
format - 사용하는 형식
X500Principal 의 캐릭터 라인 형식
IllegalArgumentException - 지정된 형식이 무효인지, null 의 경우
public String getName(String format,
Map <String ,String > oidMap)
IllegalArgumentException 가 throw 됩니다.
이 메소드는,getName(String) 로 지정된 형식에서 String 를 돌려줍니다. 또,oidMap 파라미터내에 엔트리가 있는 OID 의 그 외의 속성의 형태 키워드를 발행합니다. getName(String) 가 인식하는 디폴트의 OID 보다, oidMap 내의 OID 엔트리 쪽이 우선됩니다. 올바르게 지정되어 있지 않은 OID 는 무시될 뿐입니다만, 이름에 포함되는 OID 에 대응하는 키워드가 올바르게 지정되어 있지 않은 경우는,IllegalArgumentException 가 throw 됩니다.
장래, 표준 형식이 추가 도입될 가능성이 있습니다.
경고:그 외의 속성의 형태 키워드는, 그 외의 구현에 의해 인식되지 않을 가능성이 있습니다. 이러한 키워드가 그 외의 구현에 의해 인식될지 어떨지 불명한 경우는, 이 메소드를 사용하지 말아 주세요.
format - 사용하는 형식oidMap - OID 맵. 각 열쇠는, 속성의 형태 키워드 String 에 대응하는, String 형식 (피리어드로 단락지어진 제로 이상이 연속하는 정수)에서 나타내진 객체 식별자.
맵은 빈 상태(empty)에서 만나도 괜찮지만,null 는 되지 않는다
X500Principal 의 캐릭터 라인 형식
IllegalArgumentException - 지정된 형식이 무효인지, null 인지, 지정된 키워드에 올바르게 대응 붙일 수 있지 않은 이름에 포함되는 OID 인 경우
NullPointerException - oidMap 가 null 의 경우public byte[] getEncoded()
X500Principal(byte[] name) 로 설명하고 있습니다.
이후의 변경으로부터 보호하기 위해서, 반환되는 바이트 배열의 복제가 작성됩니다.
public String toString()
X500Principal 의, 사용자가 사용하기 쉬운 캐릭터 라인 형식을 돌려줍니다.
Principal 내의 toString Object 내의 toString X500Principal 의 캐릭터 라인 표현public boolean equals(Object o)
Object 곳의 X500Principal 가 동일한지 어떤지를 비교합니다.
특히,Object o 가 X500Principal 이며, 이 객체와 o 의 정규의 캐릭터 라인 표현 (getName(X500Principal.CANONICAL) 메소드로 취득)가 동일한 경우에, 이 메소드는 true 를 돌려줍니다.
이 구현은, RFC 2459 의 요건에 준거하고 있습니다.
Principal 내의 equals Object 내의 equals o - 이 X500Principal 와 동일한지 어떤지가 비교되는 Object
Object 가 이 X500Principal 와 동일한 경우는 true, 그렇지 않은 경우는 falseObject.hashCode() ,
Hashtable public int hashCode()
X500Principal 의 해시 코드를 돌려줍니다.
해시 코드는 getName(X500Principal.CANONICAL). hashCode() 로 계산됩니다.
Principal 내의 hashCode Object 내의 hashCode X500Principal 의 해시 코드Object.equals(java.lang.Object) ,
Hashtable
|
JavaTM Platform Standard Ed. 6 |
|||||||||
| 전의 클래스 다음의 클래스 | 프레임 있어 프레임 없음 | |||||||||
| 개요: 상자 | 필드 | 생성자 | 메소드 | 상세 : 필드 | 생성자 | 메소드 | |||||||||
Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy 도 참조해 주세요.