2017-02-16 22 views
0

Просто начните использовать MFP 8 и создайте проверку безопасности UserLogin со ссылкой на user authentication - security check и создайте область видимости access-resticted для проверки безопасности UserLogin ,MobileFirst 8 (MFP 8) несанкционированный доступ к защищенным ресурсам адаптера javascript и никаких проблем не было создано из UserAuthenticationSecurityCheck

UserLogin используется для защиты моих JavaScript адаптера ресурсов, такими как:

< procedure name="getData" scope="access-restricted"/ > 

Но при вызове моих ресурсов getData получил несанкционированную ошибку, и не проблема, созданной проверки безопасности UserLogin.

Ожидая следующий код, который будет выполняться:

@Override 
protected Map<String, Object> createChallenge() { 
    System.out.println("---------------------CREATE-CHALLENGE---------------------"); 
    Map<String, Object> challenge = new HashMap<String, Object>(); 
    challenge.put("errorMsg", errorMsg); 
    return challenge; 
} 

@Override 
protected boolean validateCredentials(Map<String, Object> credentials) 
{ 
    if(credentials!=null && credentials.containsKey("username") && credentials.containsKey("password")) 
     { 
      String username = credentials.get("username").toString(); 
      String password = credentials.get("password").toString(); 
      if(!username.isEmpty() && !password.isEmpty() && username.equals(password)) 
       { 
        userId = username; 
        displayName = username; 

        //Optional RememberMe 
        if(credentials.containsKey("rememberMe")) 
         { 
          rememberMe = Boolean.valueOf(credentials.get("rememberMe").toString()); 
         }     
        return true; 
       } 
      else 
       { 
        errorMsg = "Wrong Credentials"; 
       } 
     } 
    else 
     { 
      errorMsg = "Credentials not set properly"; 
     } 
    return false; 
} 

также попытался выполнить адаптер ресурс из MobileFirst-Swagger, включите проверку безопасности, и было предложено ввести имя пользователя & пароля. Когда ответ на вызов всегда неверен, имя пользователя & пароль, но на основании приведенного выше кода validateCredential, если username.equal (password) тогда должен быть действительным, но он по-прежнему недействителен, когда тест от Swagger.

Любая идея, что происходит не так?

+0

Вы сопоставили «ограничение доступа» к UserLogin SecurityCheck в настройках безопасности для регистрации приложения? –

+0

Да. Он был нанесен на карту. – Amon

+0

Может ли это, потому что я прокомментировал «» в UserLogin adapter.xml? Любое отношение? Причина, по которой я прокомментировал это, вызвала ошибку при создании адаптера. [ERROR] Не удалось выполнить цель com.ibm.mfp: adapter-maven-plugin: 8.0.2017012516: build (default-build) в проекте MyJavaAdapter: ошибка проверки схемы XML-адаптера адаптера: [cvc-complex-type.2.4. a: Недействительный контент был найден, начиная с элемента 'JAXRSApplicationClass'. Предполагается одно из {securityCheckDefinition}.] -> [Помощь 1] – Amon

ответ

0

Наиболее вероятной причиной является ошибка UserLogin проверка безопасности на access-restricted область в конфигурациях безопасности приложения в консоли MFP.

Ниже приведены шаги:

  • Перейти к вкладке Безопасность вашего приложения в MFP консоли проверки
  • Карта access-restricted возможности для UserLogin безопасности, как показано ниже в Scope-Elements Mapping Раздел

enter image description here

Подробнее о области охвата можно найти here.

+0

Было создано сопоставление областей. – Amon

+0

@Amon Пожалуйста, поделитесь сетевым захватом wirehark между вашим сервером и клиентом. –

 Смежные вопросы

  • Нет связанных вопросов^_^