Configure authentication to Productboard

Important

This feature is in Beta. To use it, a workspace admin must turn on Lakeflow Connect for Productboard from the Previews page. See Manage Azure Databricks previews.

To let the Lakeflow Connect Productboard connector authenticate, register a Server-to-Server OAuth application in Productboard and upload the public key from an RSA key pair. The connector uses Productboard Server-to-Server OAuth, signing a JSON Web Token (JWT) with your private key. Use the credentials retrieved from the steps on this page to create a Unity Catalog connection in Azure Databricks.

Prerequisites

  • Admin access to the Productboard workspace. Productboard requires workspace admin access to register a Server-to-Server OAuth application.
  • An activated Productboard user in that workspace. The connector signs in as this user, so its email is the User Email on the connection.
  • A tool to generate an RSA key pair, such as OpenSSL.

Configure Productboard

Register a Server-to-Server OAuth application in Productboard and upload the public half of an RSA key pair. For more information, see Server-to-Server OAuth in the Productboard developer documentation.

  1. Generate an RSA key pair of at least 2048 bits in PEM format. For example:

    openssl genrsa -out productboard_private_key.pem 2048
    openssl rsa -in productboard_private_key.pem -pubout -out productboard_public_key.pem
    
  2. Sign in to Productboard as a workspace admin and go to https://app.productboard.com/oauth2/applications.

  3. Click New Application.

  4. On the New OAuth Application page, under Application Type, select Server-to-Server.

  5. In Name, enter a name for the application.

  6. In Workspace, select the workspace to ingest from. You can't change the workspace after you create the application.

  7. In Public key, paste the contents of productboard_public_key.pem, including the -----BEGIN PUBLIC KEY----- and -----END PUBLIC KEY----- lines. Keep the private key on your system. Productboard doesn't issue a client secret for this flow.

  8. Under Scopes, in the API V2 Scopes list, select the following read scopes, which the connector requests:

    Scope Tables
    entities:read features, products, components, feature_statuses, companies, users, release_groups, releases, objectives, key_results, initiatives, feature_relationships, component_relationships, field_definitions
    notes:read notes, note_field_definitions
    members:read members
    teams:read teams
    members:pii:read Unredacted owner and creator emails in entity tables and notes, and unredacted member names, usernames, and emails in members.
    users:pii:read Unredacted user names and emails in users.

    If the application doesn't have members:pii:read or users:pii:read, Productboard returns [redacted] in place of those values.

    Select the scopes in API V2 Scopes, not API V1 Scopes (Classic). The connector uses the Productboard v2 API.

  9. Click Create Application.

  10. Record the following values. You enter them when you create a connection in Azure Databricks:

    • The Client ID of the application.
    • The email address of the activated Productboard user that the connector signs in as.
    • The full contents of the private key file, including the -----BEGIN and -----END lines.

Next steps

Create a Productboard connection in Azure Databricks. See Create a Productboard connection.