Azure Сетка событий - Успешная запись ресурса - Фильтр по адресу электронной почты - PullRequest
0 голосов
/ 10 марта 2020

Azure Сетка событий используется для захвата всех Azure Resource Write Success действий. Я пытаюсь отфильтровать пользователей по адресу электронной почты.

data.clamins.name выдает имя пользователя аналогичным образом при попытке data.claims.'http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name' фильтр не работает должным образом.

При наличии escape-символов

, чтобы заставить работать фильтр 'http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name' Это используется для случая использования тегов для вновь созданных ресурсов для удаления

  1. Сетка событий вызывает azure сценарий автоматизации при наличии Resource Write Success событие в Azure
  2. Ресурсы тега сценария с тегом expire
  3. Второй сценарий позаботится об удалении.

1 Ответ

2 голосов
/ 10 марта 2020

Я думаю, что нет никакого документированного или недокументированного способа / обходного пути, использующего этот вид именования в расширенной фильтрации. Было бы неплохо иметь его для заявок, например:

data.claims.schemas_ws200505identity_emailaddress 

, где schemas_ws200505identity_ представляет значение http://schemas.xmlsoap.org/ws/2005/05/identity/claims/

В любом случае Для вашего решения место для фильтрации этого свойства находится в обработчике подписки. Следующий фрагмент кода показывает этот пример:

public static async Task Run(JObject eventGridEvent, ILogger log)
{
   // ...

   var emailaddress = eventGridEvent["data"]?["claims"]?["http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress"]?.Value<string>();
   log.LogInformation($"emailaddress = {emailaddress}");

   // ...

  await Task.CompletedTask;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...