Layer7 API Management

  • 1.  Set Certificate for a user

    Posted Aug 01, 2018 05:07 AM

    HI Team,

     

    In the Internal Identity Provider, I created a user : user1 and now i want to assign a certificate to it. I am doing it via RESTMAN API but facing issues. Below is the XML code i am hiiting and error:

    URL:  https://192.168.45.138:8443/restman/1.0/users/90c7eda05c3936d84234a50dbfcc9ae2/certificate with PUT

    XML code: 

     

    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <l7:User xmlns:l7="http://ns.l7tech.com/2010/04/gateway-management" providerId="0000000000000000fffffffffffffffe">
    <l7:CertificateData>
    <l7:Encoded>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</l7:Encoded>
    </l7:CertificateData>
    </l7:User>

     

    Error is as below :

     

    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <l7:Error xmlns:l7="http://ns.l7tech.com/2010/04/gateway-management">
    <l7:Type>BadRequest</l7:Type>
    <l7:TimeStamp>2018-08-01T14:35:26.868+05:30</l7:TimeStamp>
    <l7:Link rel="self" uri="https://gateway1.l7tech.com:8443/restman/1.0/users/90c7eda05c3936d84234a50dbfcc9ae2/certificate"/>
    <l7:Detail>HTTP 400 Bad Request. Caused by: cvc-complex-type.2.4.a: Invalid content was found starting with element 'l7:CertificateData'. One of '{&quot;http://ns.l7tech.com/2010/04/gateway-management":Login}' is expected.</l7:Detail>
    </l7:Error>

     

    Please let me know whether I am missing anything? 

     

    Regards

    Pratyush



  • 2.  Re: Set Certificate for a user
    Best Answer

    Posted Aug 02, 2018 08:47 PM

    Hi Patyush,

     

    It's a bit difficult to say right now (we'll need to look at the RESTman documentation further and compare with your file you're uploading in the PUT), but the error is simply stating that the request is not matching what the RESTman service is expecting at that URI. It specifically calls out "invalid content”, which to me suggests that your PUT request isn't so much missing something as having content that it doesn't need.

     

    If possible, please consider attaching a copy of some sample data you are sending to your RESTman service, and we can help you compare against the RESTman documentation and what may be needed. If it goes too much further than that, we may need to open a support case for data sensitivity reasons and then we can always report back here with a more generic response on what the root cause was and what is expected, etc.

     

    Looking forward to hearing from you.



  • 3.  Re: Set Certificate for a user

    Broadcom Employee
    Posted Aug 23, 2018 10:37 AM

    Hi

    Did the answers on this thread answered your question? If it did please mark it as the right answer.
    When your question is not answered or you still have additional questions please let us know.

    With Kind Regards
    Dirk



  • 4.  Re: Set Certificate for a user

    Posted Aug 24, 2018 01:58 AM

    Your request XML should contain more than just the encoded tag under Certificate Data. Here's the template.

     

    <l7:CertificateData xmlns:l7="http://ns.l7tech.com/2010/04/gateway-management">
          <l7:IssuerName></l7:IssuerName>
          <l7:SerialNumber></l7:SerialNumber>
          <l7:SubjectName></l7:SubjectName>
          <l7:Encoded></l7:Encoded>
    </l7:CertificateData>

     

    Also, I believe User tag is not required.