JavaTM Platform
Standard Ed. 6

javax.security.auth.kerberos
클래스 ServicePermission

java.lang.Object 
  상위를 확장 java.security.Permission 
      상위를 확장 javax.security.auth.kerberos.ServicePermission
모든 구현된 인터페이스:
Serializable , Guard


public final class ServicePermission
extends Permission
implements Serializable

이 클래스는, Kerberos 서비스와 Kerberos 서비스로부터 액세스 할 필요가 있는 자격을 보호하기 위해서 사용합니다. 서비스 주체와 서비스에 액세스 하기 위해서 필요한 자격은 1 대 1 으로 대응합니다. 그 때문에, 서비스 주체에 액세스권을 부여하면(자), 그 서비스 주체와의 시큐리티 문맥을 확립하기 위해서 필요한 자격에 대한 암묵적인 액세스권을 부여하게 됩니다. 이것은, 자격이, 캐쉬내에 있는 경우에도, KDC 와의 교환에 의해 획득되는 경우에도 들어맞읍니다. 자격은, TGT, 혹은 열쇠 테이블에서 취득되는 서비스 티켓 또는 비밀열쇠의 어느 쪽인가에 됩니다.  

ServicePermission 에는, 서비스 주체명과 자격이 사용되는 문맥을 지정하는 액션의 리스트가 포함됩니다.  

서비스 주체명은, 서비스를 제공하는 KerberosPrincipal 의 정규의 이름입니다. 즉, KerberosPrincipal 는, Kerberos 서비스 주체를 나타냅니다. 이 이름에서는, 대문자와 소문자가 구별됩니다. 단독의 asterisk는 임의의 서비스 주체를 나타냅니다.  

이 액세스권을 부여한다고 하는 것은, 액션으로 지시받은 문맥내에 캐쉬된 자격 (TGT, 서비스 티켓, 또는 비밀열쇠)을 호출측을 사용할 수 있다고 하는 것을 의미합니다. TGT 의 경우는, 이 액세스권을 부여한다고 하는 것은, Authentication Service 교환으로 TGT 를 얻을 수 있는 일도 의미합니다.  

다음의 조작을 지정할 수 있습니다.  

    initiate -      호출측이, 서비스 주체에 의해
                    시큐리티 문맥을 초기화하기 위해서,
                    자격을 사용할 수 있다

    accept -        호출측이, 특정의 주체로서
                    시큐리티 문맥을 받아들이기 위해서(때문에) 
                    자격을 사용할 수 있다   
 
예를 들어, TGT 에 액세스 해 시큐리티 문맥을 개시하기 위한 액세스권을 지정하려면 , 다음과 같이 액세스권을 작성합니다.  

 ServicePermission("krbtgt/EXAMPLE.COM@EXAMPLE.COM", "initiate");
 

서비스 티켓을 취득해, 「host」서비스를 사용해 문맥을 개시하려면 , 다음과 같이 액세스권을 작성합니다.

ServicePermission("host/foo.example.com@EXAMPLE.COM", "initiate");
 

Kerberos 화 된 서버의 경우, 액션은 「accept」가 됩니다. 예를 들어, kerberos 화 된 「host」서비스 (telnet 등)의 비밀열쇠에 액세스 해 사용하기 위해서 필요한 액세스권은, 다음과 같이 작성합니다.  

ServicePermission("host/foo.example.com@EXAMPLE.COM", "accept");
 

도입된 버젼:
1.4
관련 항목:
직렬화 된 형식

생성자 의 개요
ServicePermission (String  servicePrincipal, String  action)
          지정된 servicePrincipal action 로 새로운 ServicePermission 를 작성합니다.
 
메소드의 개요
 boolean equals (Object  obj)
          2 개의 ServicePermission 객체가 동일한지 어떤지를 판정합니다.
 String getActions ()
          액션의 정규의 캐릭터 라인 표현을 돌려줍니다.
 int hashCode ()
          이 객체의 해시 코드값를 돌려줍니다.
 boolean implies (Permission  p)
          지정된 액세스권이, 이 Kerberos 서비스 액세스권 객체에 포함되어 있는지 어떤지를 판정합니다.
 PermissionCollection newPermissionCollection ()
          ServicePermission 객체를 포함하기 위한 새로운 PermissionCollection 객체를 돌려줍니다.
 
클래스 java.security. Permission 로부터 상속된 메소드
checkGuard , getName , toString
 
클래스 java.lang. Object 로부터 상속된 메소드
clone , finalize , getClass , notify , notifyAll , wait , wait , wait
 

생성자 의 상세

ServicePermission

public ServicePermission(String  servicePrincipal,
                         String  action)
지정된 servicePrincipal action 로 새로운 ServicePermission 를 작성합니다.

파라미터:
servicePrincipal - 서비스 주체의 이름. 단독의 asterisk는 임의의 서비스 주체를 나타낸다

action - 액션의 캐릭터 라인
메소드의 상세

implies

public boolean implies(Permission  p)
지정된 액세스권이, 이 Kerberos 서비스 액세스권 객체에 포함되어 있는지 어떤지를 판정합니다.  

이상이 1 개나 true 가 아닌 경우,implies 는 false 를 돌려줍니다.

정의:
클래스 Permission 내의 implies
파라미터:
p - 체크 대상의 액세스권
반환값:
지정된 액세스권이 이 객체에 포함되는 경우는 true, 그렇지 않은 경우는 false

equals

public boolean equals(Object  obj)
2 개의 ServicePermission 객체가 동일한지 어떤지를 판정합니다.  

정의:
클래스 Permission 내의 equals
파라미터:
obj - 이 객체와 동일한지 어떤지가 판정되는 객체
반환값:
obj 가 ServicePermission로, 이 ServicePermission 객체와 같은 서비스 주체와 같은 액션인 경우는 true
관련 항목:
Object.hashCode() , Hashtable

hashCode

public int hashCode()
이 객체의 해시 코드값를 돌려줍니다.

정의:
클래스 Permission 내의 hashCode
반환값:
이 객체의 해시 코드값
관련 항목:
Object.equals(java.lang.Object) , Hashtable

getActions

public String  getActions()
액션의 정규의 캐릭터 라인 표현을 돌려줍니다. 현재의 액션을, 항상 initiate, accept 의 순서로 돌려줍니다.

정의:
클래스 Permission 내의 getActions
반환값:
Permission 의 액션

newPermissionCollection

public PermissionCollection  newPermissionCollection()
ServicePermission 객체를 포함하기 위한 새로운 PermissionCollection 객체를 돌려줍니다.
ServicePermission 객체의 포함 형식은, 동객체를 임의의 차례로 컬렉션에 삽입할 수 있어 게다가 PermissionCollection 의 implies 메소드가 효율적 또한 모순이 없게 구현할 수 있는 형식이 아니면 안됩니다.

오버라이드(override):
클래스 Permission 내의 newPermissionCollection
반환값:
ServicePermissions 를 포함하는데 적절한 새로운 PermissionCollection 객체

JavaTM Platform
Standard Ed. 6

버그의 보고와 기능의 요청
한층 더 자세한 API 레퍼런스 및 개발자 문서에 대해서는,Java SE 개발자용 문서를 참조해 주세요. 개발자전용의 상세한 해설, 개념의 개요, 용어의 정의, 버그의 회피책, 및 코드 실례가 포함되어 있습니다.

Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy 도 참조해 주세요.