How do you create confidential application?

While navigating through the developer api sections. I found for creating any authorization workflow you are required to authenticate. In order to authenticate you are required to create an application that lets you communicate with Blackbaud server.
The developer portal does allow you to create application, however, the application creation process is only mentioned for public applications. I would like to learn to create confidential application for my project. Is there a way to that.
I am quite certain I am missing something.

Comments

  • Chris Rodgers
    Chris Rodgers Blackbaud Employee
    Ninth Anniversary Kudos 3 Name Dropper Participant

    Hi @Subash Mahat, all SKY Applications support operating as Confidential or Public clients, and applications are provisioned with a pair of Application (Client) Secrets to allow for rotation. You do not have to specify confidential vs public when creating your application. Our authorization documentation has sections for Confidential and Public authorization code flows. Currently, we support the Authorization Code flow and the PKCE extension (public clients are required to use PKCE, but it use is always recommended).

  • @Chris Rodgers
    Thank you. This makes sense now. I was trying to get authenticate just using client id and secret using a standard one time set up for server to server. But I found that once I go through the authorization through the browser get the authorization code and refresh token, It would not just solve the problem. I am sure it only lasts for 365 days and I will have to re-authenticate for the authorization code.
    Just was wondering if there was anything like confidential that would get me token and refresh token for indefinitely for production scale application.

    Do you think Blackbaud will create something for service-to-service authentication that will last for indefinitely? or will this violate the security principles.

Categories