OAuth v1은 웹, 모바일, 데스크톱 애플리케이션에서 간단하고 표준적인 방법으로 보안 권한 부여 사용이 가능한 개방형 프로토콜입니다. OAuth v1을 사용하려면 애플리케이션이 권한 부여 메커니즘에 필요한 설정을 구성하려면 로그인 자격 증명이 필요하므로 웹 애플리케이션에 계정을 먼저 등록해야 합니다.
OAuth v1 작동 방법
- Kore.ai 애플리케이션은 웹 애플리케이션에서 권한이 없는 요청 토큰을 얻습니다.
- Kore.ai 애플리케이션은 사용자를 웹 애플리케이션의 로그인 대화 상자로 리디렉션합니다.
- 사용자는 요청 토큰의 권한을 부여하고 자신의 계정과 연결합니다.
- 웹 애플리케이션은 사용자를 Kore.ai 애플리케이션으로 다시 리디렉션합니다.
- Kore.ai 애플리케이션은 요청 토큰을 액세스 토큰으로 교환합니다.
- 액세스 토큰을 사용하여 Kore.ai 애플리케이션은 사용자를 대신하여 공급자의 보호된 리소스에 액세스할 수 있습니다.
설정
봇에 권한 부여를 정의하려면, 다음 단계를 따릅니다.
- 권한 부여 프로필을 설정하고자 하는 봇을 엽니다.
- 상단 메뉴에서 구축 탭을 선택합니다.
- 왼쪽 메뉴에서, 설정->프로필 권한 부여를 클릭합니다.
- 추가를 클릭합니다. 새 권한 부여 메커니즘 대화 상자가 열립니다.
- 권한 부여 유형의 드롭다운 목록에서, OAuth v1을 선택합니다.
- 다음 그림은 봇을 위한 사용자 정의 권한 부여 사용을 위해 정의해야 하는 OAuth v1 권한 부여 유형 필드의 예입니다.
OAuth v1을 정의하려면 다음 표에 설명된 필드를 정의하세요.
필드 이름 | 설명 |
---|---|
권한 부여 유형 | OAuth v1로 설정합니다. |
콜백 URL | 최종 사용자 권한 부여가 완료된 후 최종 사용자를 리디렉션하기 위해 웹 애플리케이션 또는 웹 서비스가 사용하는 URL입니다. 이 값 https://idp.kore.ai/workflows/callback/은 OAuth v1 설정을 정의할 때 Kore.ai 애플리케이션에서 읽기 전용 값으로 제공합니다. |
ID 공급자 이름 | 웹 애플리케이션 또는 웹 서비스 이름(예: Twitter)입니다. 이 필드는 필수입니다. |
소비자 키 | 웹 애플리케이션에 대한 Kore.ai 애플리케이션 식별자로 제공되는 값입니다. 이 필드는 필수입니다. |
소비자 시크릿 | Kore.ai 애플리케이션이 소비자 키의 소유권을 설정하기 위해 제공하는 시크릿 값입니다. 이 필드는 필수입니다. |
요청 토큰 링크 | Kore.ai 애플리케이션이 권한이 없는 요청 토큰을 얻기 위해 사용하는 URL입니다. Kore.ai 애플리케이션이 최종 사용자로부터 권한 부여를 받고 액세스 토큰을 얻는 데 사용하는 값입니다. 예: https://{tenant}.someCompany.com/oauth/request_token 최종 사용자 권한 부여 후 Kore.ai 애플리케이션에서 액세스 토큰을 요청할 수 있습니다. 이 필드는 필수입니다. |
액세스 토큰 링크 | 최종 사용자 권한 부여 요청 토큰을 액세스 토큰으로 교환하는 데 사용되는 URL입니다. 액세스 토큰은 최종 사용자 자격 증명을 사용하지 않고 Kore.ai 애플리케이션이 최종 사용자를 대신하여 웹 애플리케이션 또는 웹 서비스에 대한 액세스 권한을 얻는 데 사용하는 값입니다. 예: https://{tenant}.someCompany.com/oauth/access_token 이 필드는 필수입니다. |
사용자 권한 부여 링크 | Kore.ai 애플리케이션이 액세스 토큰을 사용하여 웹 애플리케이션이나 웹 서비스에 액세스하기 위한 최종 사용자 권한을 획득하는 데 사용되는 URL입니다. 이 필드는 필수입니다. 동적 필드, 경로 매개 변수 필드, 쿼리 필드 등을 사용하여 권한 부여 URL을 정의할 수 있습니다. 예: https://kore.someCompany.com/sap/opu/odata/sap/{{authfield1}}?$format=json 또는 https://{tenant}.service-now.com/api/now/v1/table/incident 더 자세한 내용은 작업에서 세션 및 컨텍스트 변수 사용하기를 참조하세요. |
커넥터를 사용한 액세스 | Kore.ai 커넥터 에이전트를 사용하여 Kore.ai 봇의 액세스를 사용하도록 설정하려면 예를 선택합니다. 이 옵션은 Kore.ai 커넥터 에이전트가 엔터프라이즈 온프레미스 네트워크에서 설정되어 사용함으로 설정한 경우에만 표시됩니다. 더 자세한 정보는 Kore.ai 커넥터 사용하기를 참조하세요. |
추가 필드 추가
열기를 클릭하여 추가 필드 대화창을 연 다음 추가 권한 부여 입력 필드를 나타내는 하나 이상의 키/값 쌍을 입력합니다. 기본 사용자 이름과 암호 필드가 권한 부여 입력의 요구 사항을 충족하지 않는 경우 추가 필드을 추가하여 최종 사용자에게 표시할 키/값 쌍으로 사용자 정의 필드를 추가할 수 있습니다. 예를 들어 권한 부여 프로세스에 PIN 코드가 필요한 경우 사용자 이름 및 암호 필드 외에도 이러한 필드를 사용할 수 있습니다. 추가 필드는 다음 그림에 표시된 대로 추가됩니다.
다음 필드를 지정합니다.
- 필드 키 – 권한 부여를 지정할 사용자 정의 필드의 이름입니다.
- 필드 값 – 권한 부여를 지정할 사용자 정의 필드의 값입니다.
- 추가를 클릭하여 추가 필드를 저장합니다.
추가 필드를 더 추가하려면 추가 필드 섹션에서 추가를 클릭합니다.
권한 부여 필드 추가
기본적으로 권한 부여 없음 필드는 봇 요청 메시지의 헤더 일부로 구성됩니다. 봇 요청에 추가 권한 부여 필드가 필요하거나 예상되는 권한 부여(예: 사회 보장 번호 또는 PIN)가 헤더의 일부가 아닌 경우 권한 부여 필드 섹션에서 추가를 클릭한 후 다음 그림과 같이 필드를 정의합니다.
- 필드 유형 필드에서 봇 요청 메시지 및 필요한 권한 부여 필드 유형에서 위치에 따라 다음 중 하나를 선택할 수 있습니다.
- 헤더 – 봇은 요청 헤더의 일부로 권한 부여 필드를 예상합니다.
- 페이로드 – 봇은 요청 본문 내용의 일부로 권한 부여 필드를 예상합니다.
- 쿼리 문자열 – 봇은 요청 본문에서 권한 부여 필드를 쿼리로 예상합니다.
- 경로 매개 변수 – 봇은 권한 부여 필드를 요청의 URL 경로의 일부로 예상합니다.
- 필드 키 필드에서 선택한 필드 유형에 대한 필드 이름을 입력합니다.
- 필드 값 필드에 지정된 필드 키의 값을 입력합니다.
- 추가를 클릭합니다. 새 권한 부여 필드가 권한 부여 필드 섹션에 추가됩니다.
추가 인증 권한 필드를 추가하려면 권한 부여 필드 섹션에서 추가를 클릭합니다.
권한 부여 테스트
권한 부여를 저장한 후, 봇의 남은 단계를 개발하기 위해 계속하기 전에 테스트를 클릭하면 권한 부여 페이지에서 권한 부여 정의를 테스트할 수 있습니다. 테스트를 클릭하면 권한 부여 토큰 URL, 소비자 키 및 소비자 토큰을 사용하여 테스트가 실행됩니다. 테넌시가 정의되면 권한 부여 테스트 대화창이 나타납니다. 테스트를 클릭하여 권한 부여 테스트를 시작합니다. 권한 부여 유효성 검증이 완료되면 권한 부여 테스트 대화창이 닫히고 성공 또는 실패 검증 결과가 권한 부여 테스트 버튼 바로 오른쪽에 표시됩니다. 권한 부여가 실패하면 헤더 및 응답 탭과 함께 권한 부여 테스트 실패 메시지가 표시됩니다.