Copilot Studio 에이전트를 만들 때 에이전트 ID를 아는 사람은 Demo 웹 사이트 및 Custom 웹 사이트 채널을 통해 에이전트에 즉시 액세스할 수 있습니다. 이 채널은 기본적으로 사용 가능하며 구성이 필요하지 않습니다.
Microsoft Teams 앱의 경우 고급 웹 채널 보안 옵션을 구성할 수 있습니다.
Note
Teams 전용 라이선스가 있는 경우 보안 액세스를 활성화하기 위해 암호를 생성할 수 없습니다. 보안 액세스 토큰이 자동으로 생성되며 기본적으로 보안 액세스가 활성화됩니다.
사용자는 Copilot Studio 내에서 직접 또는 다른 사용자로부터 수신하여 에이전트 ID를 찾을 수 있습니다. 그러나 에이전트의 기능 및 민감도에 따라 해당 액세스가 바람직하지 않을 수 있습니다.
Direct Line 기반 보안을 사용하면 Direct Line 비밀 또는 토큰으로 보안 액세스를 사용하도록 설정하여 제어하는 위치에만 액세스를 사용하도록 설정할 수 있습니다.
또한 비밀을 교환 및 재생성하고 토큰을 새로 고칠 수 있으며 더 이상 사용하지 않으려는 경우 보안 액세스를 쉽게 비활성화할 수 있습니다.
Note
Copilot Studio는 Bot Framework Direct Line 채널을 사용하여 웹 페이지 또는 앱을 에이전트에 연결합니다.
웹 채널 보안 활성화 또는 비활성화
각 개별 에이전트에 대한 비밀 및 토큰 사용을 강제할 수 있습니다.
이 옵션을 켜면 채널은 클라이언트가 비밀을 사용하거나 런타임에 얻은 비밀을 사용하여 생성된 토큰을 사용하여 요청을 인증해야 합니다.
이 보안 조치를 제공하지 않는 에이전트에 액세스하려고 하면 작동하지 않습니다.
- 에이전트의 설정 페이지로 이동하여 보안을 선택한 다음 웹 채널 보안을 선택합니다.
- 보안 액세스 필요 기능을 켜세요.
경고
보안 액세스 필요를 켜거나 끄면 시스템에서 설정을 전파하고 적용하는 데 최대 2시간이 걸릴 수 있습니다. 그때까지 이전 설정이 적용됩니다. 이 변경 내용을 적용하기 위해 에이전트를 게시할 필요가 없습니다.
에이전트가 의도치 않게 노출되지 않도록 미리 계획하세요.
웹 채널 보안 옵션을 사용하지 않도록 설정해야 하는 경우 보안 액세스 필요 토글을 선택 취소하여 이 작업을 수행할 수 있습니다. 보안 액세스를 비활성화하려면 최대 2시간이 소요될 수 있습니다.
비밀 또는 토큰 사용
서비스투서비스 앱을 만드는 경우 인증 헤더 요청에 비밀을 지정하는 것이 가장 간단한 방법일 수 있습니다.
클라이언트가 웹 브라우저 또는 모바일 앱에서 실행되는 앱을 작성하거나 코드가 고객에게 표시될 수 있는 경우 비밀을 토큰으로 교환해야 합니다. 토큰을 사용하지 않으면 비밀이 손상될 수 있습니다. 서비스에서 토큰 획득을 요청하는 경우 권한 부여 헤더에 비밀을 지정하십시오.
토큰은 단일 대화에만 작동하며 새로 고치지 않으면 만료됩니다.
상황에 가장 적합한 보안 모델을 선택하십시오.
경고
하드 코딩되거나 네트워크 호출을 통해 전송되는 브라우저에서 실행되는 코드에서 비밀을 노출하지 마세요.
서비스 코드에서 비밀을 사용하여 토큰을 획득하는 것이 Copilot Studio 에이전트를 보호하는 가장 안전한 방법입니다.
비밀 획득
앱의 인증 헤더 요청 등에서 지정할 수 있도록 비밀이 필요합니다.
탐색 메뉴에서 설정 아래의 보안을 선택합니다. 그런 다음 웹 채널 보안 타일을 선택합니다.
복사를 선택하여 비밀 1 또는 비밀 2 중 하나를 클립보드에 복사합니다. 표시 유형 아이콘
을 선택하여 비밀을 표시합니다. 경고 메시지가 나타나기 전에 비밀이 나타납니다.
비밀 교환
에이전트에서 사용하는 비밀을 변경해야 하는 경우 가동 중지 시간 또는 중단 없이 변경할 수 있습니다.
Copilot Studio는 동시에 작동하는 두 가지 비밀을 제공합니다. 에이전트에서 사용하는 비밀을 다른 에이전트와 교환할 수 있습니다. 비밀이 교환되고 사용자가 모두 새 비밀을 사용하여 연결되면 비밀을 다시 생성할 수 있습니다.
비밀 다시 생성
비밀을 다시 생성하려면 비밀 옆의 재생성을 선택합니다.
경고
원래 비밀 또는 해당 비밀에서 가져온 토큰을 사용하여 연결하는 사용자 프로필의 연결이 끊어집니다.
토큰 생성
단일 에이전트 대화를 시작할 때 사용하는 토큰을 생성할 수 있습니다. 자세한 내용은 Direct Line 토큰 얻기 섹션의 모바일 또는 사용자 지정 앱에 에이전트 게시를 참조하세요.
서비스 코드에서 다음 요청을 보내 토큰에 대한 비밀을 교환합니다.
<SECRET>을 1 단계에서 얻은 비밀 값으로 교체합니다.POST https://directline.botframework.com/v3/directline/tokens/generate Authorization: Bearer <SECRET>
다음 코드 조각은 생성된 토큰 요청 및 해당 응답의 예를 제공합니다.
샘플 토큰 생성 요청
POST https://directline.botframework.com/v3/directline/tokens/generate
Authorization: Bearer RCurR_XV9ZA.cwA.BKA.iaJrC8xpy8qbOF5xnR2vtCX7CZj0LdjAPGfiCpg4Fv0
샘플 토큰 응답 생성
HTTP/1.1 200 OK
[other headers]
{
"conversationId": "abc123",
"token": "RCurR_XV9ZA.cwA.BKA.iaJrC8xpy8qbOF5xnR2vtCX7CZj0LdjAPGfiCpg4Fv0y8qbOF5xPGfiCpg4Fv0y8qqbOF5x8qbOF5xn",
"expires_in": 1800
}
요청이 성공하면, 응답에는 하나의 대화에 유효한 토큰과 토큰의 만료까지 남은 초를 나타내는 expires_in 값이 포함됩니다.
토큰을 유용하게 유지하려면 토큰이 만료되기 전에 새로 고쳐 야 합니다.
토큰 새로 고침
토큰이 만료되지 않는 한 토큰을 무제한으로 새로 고칠 수 있습니다.
만료된 토큰은 새로 고칠 수 없습니다.
토큰을 새로 고치려면 다음 요청을 보내고 새로 고치려는 토큰으로 <TOKEN TO BE REFRESHED>을(를) 바꾸십시오.
POST https://directline.botframework.com/v3/directline/tokens/refresh
Authorization: Bearer <TOKEN TO BE REFRESHED>
다음 스니펫은 토큰 새로 고침 요청 및 해당 응답의 예를 제공합니다.
샘플 새로 고침 요청
POST https://directline.botframework.com/v3/directline/tokens/refresh
Authorization: Bearer CurR_XV9ZA.cwA.BKA.iaJrC8xpy8qbOF5xnR2vtCX7CZj0LdjAPGfiCpg4Fv0y8qbOF5xPGfiCpg4Fv0y8qqbOF5x8qbOF5xn
샘플 새로 고침 응답
요청이 성공하면 응답은 이전 토큰과 동일한 대화에서 유효한 새 토큰과 함께, 새 토큰이 만료되기까지 남은 초를 나타내는 expires_in 값을 포함합니다.
새 토큰을 유용하게 유지하려면 만료되기 전에 토큰을 다시 새로 고칩니다.
HTTP/1.1 200 OK
[other headers]
{
"conversationId": "abc123",
"token": "RCurR_XV9ZA.cwA.BKA.y8qbOF5xPGfiCpg4Fv0y8qqbOF5x8qbOF5xniaJrC8xpy8qbOF5xnR2vtCX7CZj0LdjAPGfiCpg4Fv0",
"expires_in": 1800
}
토큰 새로 고침에 대한 자세한 내용은 Direct Line 토큰 새로 고침Direct Line API - 인증 섹션을 참조하세요.
관련 콘텐츠
- 주요 개념 - 에이전트 게시 및 배포
- 모바일 또는 사용자 지정 앱에 에이전트 게시
- 에이전트를 Azure Bot Service 채널에 게시합니다
Microsoft Entra ID를 사용하여 사용자 인증을 구성하세요 Direct Line