Skip to content
  • Категории
  • Последние
  • Метки
  • Популярные
  • Пользователи
  • Группы
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • По умолчанию (Нет скина)
  • Нет скина
Collapse

Networks Engineering

  1. Главная
  2. Информационная безопасность
  3. Сетевая безопасность
  4. PxGrid API для getAssets не работает

PxGrid API для getAssets не работает

Запланировано Прикреплена Закрыта Перенесена Сетевая безопасность
3 Сообщения 0 Posters 0 Просмотры
  • Сначала старые
  • Сначала новые
  • По количеству голосов
Ответить
  • Ответить, создав новую тему
Авторизуйтесь, чтобы ответить
Эта тема была удалена. Только пользователи с правом управления темами могут её видеть.
  • A Не в сети
    A Не в сети
    AK9751
    написал в отредактировано
    #1

    Здравствуйте, Я пробую PxGrid и пытаюсь использовать клиент PxGrid как для публикации, так и для подписки на конечные ресурсы. Я следую этим ресурсам: Для контекста в коде —
    https://developer.cisco.com/docs/pxgrid/#!pxgrid-context-in Для получения информации обо всех ресурсах —
    https://d1nmyq4gcgsfi5.cloudfront.net/fileMedia/ea02ce59-2668-441a-601d-0c6ca59d8bf4/CiscopxGrid20_je.pdf
    [Страница 127] Мне удалось успешно опубликовать информацию о конечной точке и подписаться на нее. Однако мой первоначальный вариант использования выглядит следующим образом: «Создать клиент PxGrid и службу pub-sub, которая публикует информацию об активах конечной точки; создать подписку на эту службу и получить вновь созданные конечные точки; использовать [restBaseURL]/getAssets, чтобы получить информацию о уже имеющихся активах для первого использования». Я делаю следующее: 1. Создаю клиент PxGrid и издателя для публикации информации об активах конечной точки — успешно. Пример кода для службы издателя: sessionProperties.put(
    "wsPubsubService"
    ,
    "com.cisco.ise.pubsub"
    );
    sessionProperties.put(
    "assetTopic"
    ,
    "/topic/com.cisco.endpoint.asset"
    );
    sessionProperties.put(
    "restBaseUrl"
    ,
    "https://"

    • config.getHostnames[
      0
      ] +
      ":8910/pxgrid/ind/asset/"
      );
      ServiceRegisterResponse response = control.serviceRegister(
      "com.cisco.endpoint.asset"
      , sessionProperties); 2. Создаю клиент PxGrid, подписываюсь на вышеуказанное и получаю информацию об активах конечной точки по мере ее публикации — успешно Пример кода: executor.scheduleWithFixedDelay( -> {
      try {
      endpoint.subscribe(new StompSubscription("/topic/com.cisco.endpoint.asset", new EndpointAssetHandler));
      } catch (IOException e) {
      logger.error("Publish failure");
      }
      }, 0, 5, TimeUnit.SECONDS); Как я уже сказал, с помощью этого я успешно получаю информацию о
      НОВЫХ
      активах. 3. Однако представьте, что у меня есть конечные активы, которые предварительно зарегистрированы в ISE. Поэтому я делаю следующее: Service[] services = https.serviceLookup(
      "com.cisco.endpoint.asset"
      ); Service service = services[
      0
      ];
      String url = service.getProperties.get(
      "restBaseUrl"
      ) +
      "getAssets"
      ;
      logger
      .info(
      "url={}"
      , url);
      // pxGrid AccesssSecret for the node
      String secret = https.getAccessSecret(service.getNodeName);
      //SessionQueryRequest request = new SessionQueryRequest;
      //request.startTimestamp = startTimestamp;
      SampleHelper.
      postObjectAndPrint
      (url, config.getNodeName, secret, config.getSSLContext.getSocketFactory,
      ""
      ); Я получаю следующую ошибку 12:34:50.186 [main] INFO com.cisco.pxgrid.samples.ise.PxgridControl - AccountCreate request={"nodeName":"macSub"}
      12:34:50.504 [main] INFO com.cisco.pxgrid.samples.ise.PxgridControl - AccountCreate response={"nodeName":"macSub","password":"MKrcmgdnWHErLG25","userName":"macSub"}
      Password: MKrcmgdnWHErLG25
      12:34:50.511 [main] INFO com.cisco.pxgrid.samples.ise.PxgridControl - AccountActivate request={}
      12:34:50.690 [main] INFO com.cisco.pxgrid.samples.ise.PxgridControl - AccountActivate response={"accountState":"PENDING","version":"2.0.0.13"}
      12:35:50.695 [main] INFO com.cisco.pxgrid.samples.ise.PxgridControl - AccountActivate request={}
      12:35:50.714 [main] INFO com.cisco.pxgrid.samples.ise.PxgridControl - AccountActivate response={"accountState":"ENABLED","version":"2.0.0.13"}
      12:35:50.714 [main] INFO com.cisco.pxgrid.samples.ise.SessionQueryAll - pxGrid controller version=2.0.0.13
      12:35:50.722 [main] INFO com.cisco.pxgrid.samples.ise.PxgridControl - ServiceLookup request={"name":"com.cisco.endpoint.asset"}
      12:35:50.748 [main] INFO com.cisco.pxgrid.samples.ise.PxgridControl - ServiceLookup response={"services":[{"name":"com.cisco.endpoint.asset","nodeName":"mac1","properties":{"wsPubsubService":"com.cisco.ise.pubsub","restBaseUrl":"https://<ISE_IP>:8910/pxgrid/ind/asset/","assetTopic":"/topic/com.cisco.endpoint.asset"}}]}
      12:36:11.727 [main] INFO com.cisco.pxgrid.samples.ise.SessionQueryAll - url=https://<ISE_IP>:8910/pxgrid/ind/asset/getAssets
      12:36:40.250 [main] INFO com.cisco.pxgrid.samples.ise.PxgridControl - AccessSecret request={"peerNodeName":"mac1"}
      12:36:40.486 [main] INFO com.cisco.pxgrid.samples.ise.PxgridControl - AccessSecret response={"secret":"95v8KD3EF86RI1eA"}
      12:37:04.589 [main] INFO com.cisco.pxgrid.samples.ise.SampleHelper - postData=""
      12:37:04.716 [main] INFO com.cisco.pxgrid.samples.ise.SampleHelper - Response status=401
      Content: <h1>HTTP Status 401 – Unauthorized</h1><hr class="line" /><p><b>Type</b> Status Report</p><p>
      <b>Message</b> No AuthenticationProvider found for org.springframework.security.authentication.UsernamePasswordAuthenticationToken</p>
      <p><b>Description</b> The request has not been applied because it lacks valid authentication credentials for the target resource.</p><hr class="line" /><h3></h3></body></html> Ошибка гласит: 401 Неавторизован, однако я правильно получил секрет для службы публикации и peerNodeName и использовал его для аутентификации. Кроме того, как я уже сказал, я могу подписаться и получить вновь опубликованные конечные ресурсы. Я знаю, что могу получить информацию о существующих конечных активах непосредственно из ISE API, однако, поскольку вышеуказанный способ рекомендуется как
      НОВЫЙ
      способ работы и для поддержания согласованности с использованием
      ТОЛЬКО ОДНОГО
      набора API, было бы здорово узнать, где я делаю ошибку. Спасибо.
    1 ответ Последний ответ
    0
    • J Не в сети
      J Не в сети
      jeppich
      написал в отредактировано
      #2

      Здравствуйте, Пожалуйста, напишите мне напрямую по электронной почте. Спасибо, Джон jeppich@cisco.com

      1 ответ Последний ответ
      0
      • H Не в сети
        H Не в сети
        hslai
        написал в отредактировано
        #3

        Я бы посоветовал вам попробовать использовать сертификат для аутентификации. А также попрошу Джона взглянуть на это. PS: Я перенес вашу дискуссию на форум поддержки разработчиков по вопросам безопасности для DevNet.

        1 ответ Последний ответ
        0

        Здравствуйте! Похоже, вам интересна эта беседа, но у вас пока нет учетной записи.

        Вы устали просматривать одни и те же посты каждый раз, когда заходите на сайт? После регистрации, вам не придётся искать обсуждения в которых вы принимали участие, настройте уведомления о новых сообщениях так как вам это удобно (по электронной почте или уведомлением). У вас появится возможность сохранять закладки и ставить лайки постам, чтобы выразить свою благодарность другим участникам сообщества.

        С вашими комментариями этот пост может стать ещё лучше 💗

        Зарегистрироваться Войти
        Ответить
        • Ответить, создав новую тему
        Авторизуйтесь, чтобы ответить
        • Сначала старые
        • Сначала новые
        • По количеству голосов


        • Войти

        • Нет учётной записи? Зарегистрироваться

        • Login or register to search.
        • Первое сообщение
          Последнее сообщение
        0
        • Категории
        • Последние
        • Метки
        • Популярные
        • Пользователи
        • Группы