NO.148 CheckUserContent 함수에 대한 바인딩을 구현해야 합니다.
코드 세그먼트를 어떻게 완성해야 하나요? 답하려면 답 영역에서 적절한 옵션을 선택합니다.
참고: 정답을 선택할 때마다 1점의 가치가 있습니다.


설명

박스 1: [블롭트리거(..)]
상자 2: [블롭(..)]
Azure 함수에 대한 Azure Blob 저장소 출력 바인딩. 출력 바인딩을 사용하면 Azure 함수에서 블롭 저장소 데이터를 수정하고 삭제할 수 있습니다.
속성의 생성자는 다음 예시와 같이 블롭의 경로와 읽기 또는 쓰기를 나타내는 FileAccess 매개 변수를 받습니다:
[FunctionName("ResizeImage")]
공용 정적 void Run(
[블롭트리거("샘플 이미지/{이름}")] 스트림 이미지,
[Blob("sample-images-md/{name}", FileAccess.Write)] Stream imageSmall)
{
}
시나리오: 콘텐츠 검사를 수행하려면 CheckUserContent라는 이름의 Azure 함수를 만들어야 합니다.
이 회사의 데이터 과학 그룹은 사용자가 생성한 콘텐츠를 문자열로 받아들이고 부적절한 콘텐츠에 대한 가능성 값을 반환하는 ContentAnalysisService를 구축했습니다. 특정 임계값을 초과하는 모든 값은 Contoso의 직원이 검토해야 합니다.
참조:
https://docs.microsoft.com/en-us/azure/azure-functions/functions-bindings-storage-blob-output
주제 1, 콘토소(주)
사례 연구
이것은 사례 연구입니다. 사례 연구에는 별도의 시간이 정해져 있지 않습니다. 각 사례를 완료하는 데 원하는 만큼의 시험 시간을 사용할 수 있습니다. 그러나 이 시험에는 추가 사례 연구 및 섹션이 있을 수 있습니다. 주어진 시간 내에 이 시험에 포함된 모든 문제를 완료할 수 있도록 시간을 관리해야 합니다.
사례 연구에 포함된 질문에 답하려면 사례 연구에 제공된 정보를 참조해야 합니다. 사례 연구에는 사례 연구에 설명된 시나리오에 대한 자세한 정보를 제공하는 전시물 및 기타 리소스가 포함될 수 있습니다. 각 질문은 이 사례 연구의 다른 질문과 독립적입니다.
이 사례 연구가 끝나면 검토 화면이 나타납니다. 이 화면에서는 시험의 다음 섹션으로 이동하기 전에 답을 검토하고 변경할 수 있습니다. 새 섹션을 시작한 후에는 이 섹션으로 돌아갈 수 없습니다.
사례 연구를 시작하려면
이 사례 연구의 첫 번째 질문을 표시하려면 버튼을 클릭합니다. 질문에 답하기 전에 왼쪽 창에 있는 버튼을 사용하여 사례 연구의 내용을 살펴보세요. 이러한 버튼을 클릭하면 비즈니스 요구 사항, 기존 환경 및 문제 진술과 같은 정보가 표시됩니다. 질문에 답할 준비가 되면 배경 개요를 클릭합니다. 귀하는 콘토소(주)의 개발자입니다. 이 회사에는 SPA(단일 페이지 애플리케이션)로 개발된 소셜 네트워킹 웹사이트가 있습니다. 소셜 네트워킹 웹사이트의 기본 웹 애플리케이션은 사용자가 업로드한 콘텐츠를 블롭 스토리지에서 로드합니다.
업로드된 데이터에 부적절한 콘텐츠가 있는지 모니터링하는 솔루션을 개발 중입니다. 사용자가 SPA를 사용하여 콘텐츠를 업로드하면 다음 프로세스가 발생합니다:
* 콘텐츠 업로드 서비스로 메시지가 전송됩니다.
* 콘텐츠는 ContentAnalysisService에서 처리합니다.
* 처리가 완료되면 콘텐츠가 소셜 네트워크에 게시되거나 거부 메시지가 대신 게시됩니다.
ContentAnalysisService는 contosoimages라는 비공개 Azure 컨테이너 레지스트리의 Azure 컨테이너 인스턴스와 함께 배포됩니다.
이 솔루션은 8개의 CPU 코어를 사용합니다.
Azure Active Directory
는 내부 계정과 게스트 계정 모두에 Azure AD(Azure Active Directory)를 사용합니다.
요구 사항
콘텐츠 분석 서비스
이 회사의 데이터 과학 그룹은 사용자가 생성한 콘텐츠를 문자열로 받아들이고 부적절한 콘텐츠에 대한 가능성 값을 반환하는 ContentAnalysisService를 구축했습니다. 특정 임계값을 초과하는 모든 값은 Contoso의 직원이 검토해야 합니다.
콘텐츠 검사를 수행하려면 CheckUserContent라는 이름의 Azure 함수를 만들어야 합니다.
비용
모든 Azure 서비스에 대한 비용을 최소화해야 합니다.
수동 검토
콘텐츠를 검토하려면 사용자는 Azure AD 자격 증명을 사용하여 ContentAnalysisService의 웹사이트 부분에 인증해야 합니다. 웹사이트는 React를 사용하여 구축되며 모든 페이지와 API 엔드포인트에는 인증이 필요합니다.
콘텐츠를 검토하려면 콘텐츠 검토자 역할에 속해 있어야 합니다. 완료된 모든 리뷰에는 감사를 위해 리뷰어의 이메일 주소가 포함되어야 합니다.
고가용성
모든 서비스는 여러 지역에서 실행되어야 합니다. 한 지역의 서비스 장애가 전체 애플리케이션 가용성에 영향을 미치지 않아야 합니다.
모니터링
콘텐츠업로드서비스가 사용 가능한 CPU 코어의 80% 이상을 사용하는 경우 경고를 발생시켜야 합니다.
보안
다음과 같은 보안 요구 사항이 있습니다:
* 인터넷을 통해 액세스할 수 있는 모든 웹 서비스는 크로스 사이트 스크립팅 공격으로부터 보호되어야 합니다.
* 모든 웹사이트와 서비스는 유효한 루트 인증 기관의 SSL을 사용해야 합니다.
* Azure 저장소 액세스 키는 메모리에만 저장해야 하며 서비스에서만 사용할 수 있어야 합니다.
* 모든 내부 서비스는 내부 가상 네트워크(VNet)에서만 액세스할 수 있어야 합니다.
* 시스템의 모든 부분이 인바운드 및 아웃바운드 트래픽 제한을 지원해야 합니다.
* 모든 서비스 호출은 Azure AD를 사용하여 인증해야 합니다.
사용자 계약
사용자는 콘텐츠를 제출할 때 사용자 계약에 동의해야 합니다. 이 계약을 통해 ㈜콘토소의 직원은 콘텐츠를 검토하고, 사용자 디바이스에 쿠키를 저장하고, 사용자의 IP 주소를 추적할 수 있습니다.
계약 관련 정보는 Contoso(주) 내 여러 부서에서 사용합니다.
사용자 응답은 손실되지 않아야 하며 개별 서비스 가동 시간에 관계없이 모든 당사자가 사용할 수 있어야 합니다.
시간당 계약 건수는 수백만 건에 달할 것으로 예상됩니다.
유효성 검사 테스트
새 버전의 ContentAnalysisService를 사용할 수 있는 경우 새 버전이 이전 버전에서 크게 벗어나지 않는지 확인하기 위해 지난 7일간의 콘텐츠를 새 버전으로 처리해야 합니다.
이슈
ContentUploadService 사용자는 특정 페이지에서 가끔 HTTP 502 응답이 표시된다고 보고합니다.
코드
콘텐츠 업로드 서비스

