|
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
, 그렇지 않은 경우는 false
Object.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 도 참조해 주세요.