2016-11-16 53 views
0

PingFederate 8.2.2用於我們的系統。所有創建PF對象的REST API都是自動的,但/ sp/adapter(https://pfhost:9999/pf-admin-api/v1/sp/adapters)不能使用下面的JSON。如果我創建相同的配置它的工作原理。下面提到的JSON從手動創建的/sp/adapter.But中檢索,當我在API調用中使用相同的JSON時,如下所示的錯誤,請幫助解決此問題。PingFederate用於/ sp /適配器不工作的REST API

錯誤:

{ 
    "resultId": "validation_error", 
    "message": "Validation error(s) occurred. Please review the error(s) and address accordingly.", 
    "validationErrors": [ 
    { 
     "message": "'' is not a valid selection for 'Send Extended Attributes'", 
     "fieldPath": "configuration.fields[21].value", 
     "errorId": "plugin_validation_error" 
    } 
    ] 
} 

JSON:

{ 
     "id": "opentokenadapt1", 
     "name": "opentokenadapt1", 
     "pluginDescriptorRef": { 
     "id": "com.pingidentity.adapters.opentoken.SpAuthnAdapter" 
     }, 
     "configuration": { 
     "tables": [], 
     "fields": [ 
      { 
      "name": "Password", 
      "value": "Password123" 
      }, 
      { 
      "name": "Confirm Password", 
      "value": "Password123" 
      }, 
      { 
      "name": "Transport Mode", 
      "value": "2" 
      }, 
      { 
      "name": "Token Name", 
      "value": "opentoken" 
      }, 
      { 
      "name": "Cipher Suite", 
      "value": "2" 
      }, 
      { 
      "name": "Authentication Service", 
      "value": "" 
      }, 
      { 
      "name": "Account Link Service", 
      "value": "" 
      }, 
      { 
      "name": "Logout Service", 
      "value": "" 
      }, 
      { 
      "name": "Cookie Domain", 
      "value": "" 
      }, 
      { 
      "name": "Cookie Path", 
      "value": "/" 
      }, 
      { 
      "name": "Token Lifetime", 
      "value": "300" 
      }, 
      { 
      "name": "Session Lifetime", 
      "value": "43200" 
      }, 
      { 
      "name": "Not Before Tolerance", 
      "value": "0" 
      }, 
      { 
      "name": "Force SunJCE Provider", 
      "value": "false" 
      }, 
      { 
      "name": "Use Verbose Error Messages", 
      "value": "false" 
      }, 
      { 
      "name": "Obfuscate Password", 
      "value": "true" 
      }, 
      { 
      "name": "Session Cookie", 
      "value": "false" 
      }, 
      { 
      "name": "Secure Cookie", 
      "value": "false" 
      }, 
      { 
      "name": "HTTP Only Flag", 
      "value": "true" 
      }, 
      { 
      "name": "Send Subject as Query Parameter", 
      "value": "" 
      }, 
      { 
      "name": "Subject Query Parameter     ", 
      "value": "" 
      }, 
      { 
      "name": "Send Extended Attributes", 
      "value": "" 
      }, 
      { 
      "name": "Skip Trimming of Trailing Backslashes", 
      "value": "false" 
      } 
     ] 
     }, 
     "attributeContract": { 
     "coreAttributes": [ 
      { 
      "name": "subject" 
      } 
     ], 
     "extendedAttributes": [ 
      { 
      "name": "nsroles" 
      } 
     ] 
     } 
    } 

回答

3

「發送擴展屬性」 需要一個有效的值(不是你給它一個空字符串)。可能的值爲「0」(無),「1」(Cookies)或「2」(查詢參數)。

試圖縮小這些問題的一個提示:嘗試在PingFederate管理控制檯(UI)中構建SP適配器實例,然後將其與您從API獲取的JSON模型進行比較。

+0

謝謝斯科特,它工作正常。 – sunleo