http 트리거를 사용하여 C# Azure 함수를 만들고 싶습니다. API Key으로 보안을 설정하고 고객마다 별도의 키를 제공하며 기능은 고객 별 데이터를 제공해야하며이를 통해 누가 호출하고 있는지 식별해야합니다.Azure 함수에 대한 고객 별 API 키를 구성하는 방법
Azure Function API 키를 사용하여 고객을 식별 할 수 있습니까? 통과 된 열쇠의 이름을 얻으시겠습니까? 아니면 청록색 함수 내에서 요청을 인증하는 데 사용 된 키를 알 수있는 방법이 없습니까?
GetApiKeyName()
과 같은 방법이 있다면 키 데이터베이스 이름을 내 데이터베이스의 고객 목록과 대조하여 누가 해당 함수를 호출했는지에 따라 다른 데이터를 반환 할 수 있습니다. 예 : 내가 판매 추적 시스템을 가지고 있고 기능이 /api/GetMonthlySales
이라고 상상해보십시오. 고객 1이 API 키를 사용하여 함수를 호출하면 매월 판매가 발생하고 고객 2가 호출하면 다른 금액을 받게됩니다.
이것이 가능하지 않다면 각 고객에게 각 고객에게 각 인증 요청에 추가 인증 데이터를 제공해야 함을 의미합니다 (예 : 고객 ID 및 비밀 키. 그러나 이것은 Azure 함수 API 키를 사용하는 목적을 무효로합니다.
고객이 내 기능을 호출 할 때 고객에게 요금을 청구하려는 경우에도 유사한 시나리오가 있습니다. 어떤 고객이 내 기능을 호출하는지 어떻게 식별합니까?
지금은 Azure 인증을 사용하기로 결정하고 동일한 api 키를 db에 넣기로 결정했습니다. 그런 다음 Azure가 유효한 키를 가진 사람 만이 함수를 호출하도록하고 있는지, 나는 누가 querystring의'code' 매개 변수를 잡고 DB에서 찾았는지 찾아 봅니다. 신규 고객을 프로비저닝하려면 Azure Function auth에 추가 한 다음 내 DB에 추가해야합니다. 다행히도 앞으로는이 문제에 대한 지원이있을 것입니다.하지만 고객이 거의 없다면이 방법으로 성 가실 필요가 없습니다. – Rory