SkillValidation 클래스

  • java.lang.Object
    • com.microsoft.bot.connector.authentication.SkillValidation

public final class SkillValidation

기술에서 전송된 JWT 토큰의 유효성을 검사합니다.

메서드 요약

한정자 및 형식 메서드 및 설명
static java.util.concurrent.CompletableFuture<ClaimsIdentity> authenticateChannelToken(String authHeader, CredentialProvider credentials, ChannelProvider channelProvider, String channelId, AuthenticationConfiguration authConfig)

들어오는 인증 헤더가 봇에서 기술로 또는 기술에서 봇으로 전송된 토큰인지 확인합니다.

static ClaimsIdentity createAnonymousSkillClaim()

익명(인증되지 않은) 기술에 대한 클레임ID를 만듭니다.

static java.lang.Boolean isSkillClaim(Map<String,String> claims)

지정된 클레임 목록이 기술을 나타내는지 확인합니다.

static boolean isSkillToken(String authHeader)

지정된 인증 헤더가 기술에서 봇 또는 봇에서 기술 요청까지인지 확인합니다.

static java.util.concurrent.CompletableFuture<java.lang.Void> validateIdentity(ClaimsIdentity identity, CredentialProvider credentials)

기술 클레임ID의 유효성을 검사하는 도우미입니다.

다음에서 상속된 메서드 java.lang.Object

java.lang.Object.clone java.lang.Object.equals java.lang.Object.finalize java.lang.Object.getClass java.lang.Object.hashCode java.lang.Object.notify java.lang.Object.notifyAll java.lang.Object.toString java.lang.Object.wait java.lang.Object.wait java.lang.Object.wait

메서드 세부 정보

authenticateChannelToken

public static CompletableFuture authenticateChannelToken(String authHeader, CredentialProvider credentials, ChannelProvider channelProvider, String channelId, AuthenticationConfiguration authConfig)

들어오는 인증 헤더가 봇에서 기술로 또는 기술에서 봇으로 전송된 토큰인지 확인합니다.

매개 변수:

authHeader - "Bearer [longString]" 형식의 원시 HTTP 헤더입니다.
credentials - 사용자가 정의한 유효한 자격 증명 집합(예: AppId)입니다.
channelProvider - 공용 Azure와 미국 정부 Azure를 구분하는 channelService 값입니다.
channelId - 유효성을 검사할 채널의 ID입니다.
authConfig - 인증 구성입니다.

반환:

유효성 검사에 성공하면 ClaimsIdentity 인스턴스입니다.

createAnonymousSkillClaim

public static ClaimsIdentity createAnonymousSkillClaim()

익명(인증되지 않은) 기술에 대한 ClaimsIdentity를 만듭니다.

반환:

인증 유형이 AuthenticationConstants.AnonymousAuthType 및 예약된 AuthenticationConstants.AnonymousSkillAppId 클레임으로 설정된 ClaimsIdentity 인스턴스입니다.

isSkillClaim

public static Boolean isSkillClaim(Map claims)

지정된 클레임 목록이 기술을 나타내는지 확인합니다. 기술 클레임에는 VERSION_CLAIM 클레임이 포함되어야 합니다. AuthenticationConstants.AUTIENCE_CLAIM 클레임입니다. APPID_CLAIM 클레임(v1) 또는 AUTHORIZED_PARTY 클레임(v2)입니다. 그리고 appId 클레임은 대상 그룹 클레임과 달라야 합니다. 채널(웹 채팅, 팀 등)이 봇을 호출하면 AuthenticationConstants.AUTIENCE_CLAIMTO_BOT_FROM_CHANNEL_TOKEN_ISSUER 설정되지만 봇이 다른 봇을 호출하면 대상 그룹 클레임이 호출되는 봇의 appId로 설정됩니다. 프로토콜은 v1 및 v2 토큰을 지원합니다. v1 토큰의 경우 APPID_CLAIM 존재하고 호출하는 봇의 앱 ID로 설정됩니다. v2 토큰의 경우 AUTHORIZED_PARTY 존재하며 호출 봇의 앱 ID로 설정됩니다.

매개 변수:

claims - 클레임 목록입니다.

반환:

클레임 목록이 기술 클레임이면 true이고, 그렇지 않으면 false입니다.

isSkillToken

public static boolean isSkillToken(String authHeader)

지정된 인증 헤더가 기술에서 봇 또는 봇에서 기술 요청까지인지 확인합니다.

매개 변수:

authHeader - 전달자 토큰("전달자 [긴 문자열]" 형식)

반환:

True입니다. 봇 통신에 대한 기술에 대해 토큰이 발급된 경우입니다. 그렇지 않으면 false입니다.

validateIdentity

public static CompletableFuture validateIdentity(ClaimsIdentity identity, CredentialProvider credentials)

기술 ClaimsIdentity의 유효성을 검사하는 도우미입니다.

매개 변수:

identity - 유효성을 검사할 ClaimsIdentity입니다.
credentials - CredentialProvider입니다.

반환:

성공하면 아무것도, 그렇지 않으면 CompletionException

적용 대상