Backstage Security Insights Plugin

See Security Insights for your components in Backstage

Getting started is simple

Install the plugin into Backstage.

yarn add @roadiehq/backstage-plugin-security-insights

Import it into your Backstage application.

// packages/app/src/plugins.ts
export { plugin as SecurityInsights  } from '@roadiehq/backstage-plugin-security-insights';

Add plugin API to your Backstage instance.

// packages/app/src/components/catalog/EntityPage.tsx
import { Router as SecurityInsightsRouter  } from '@roadiehq/backstage-plugin-security-insights';

const ServiceEntityPage = ({ entity }: { entity: Entity }) => (
  ...
  <EntityPageLayout>
    <EntityPageLayout.Content
      path="/security-insights"
      title="Security Insights"
      element={<SecurityInsightsRouter entity={entity} />}
    />
    </EntityPageLayout>
  </EntityPageLayout>
)

Run the backstage app with the following command and navigate to the services tab.

yarn start

Widgets setup.

You must install this plugin by following the steps above to add the widget to your Overview.

Add widget to your Overview tab.

// packages/app/src/components/catalog/EntityPage.tsx
import {
  SecurityInsightsWidget,
  isPluginApplicableToEntity as isSecurityInsightsAvailable,
} from '@roadiehq/backstage-plugin-security-insights';

...

const OverviewContent = ({ entity }: { entity: Entity }) => (
  <Grid container spacing={3} alignItems="stretch">
    ...
    {isSecurityInsightsAvailable(entity) && (
      <>
        <Grid item md={6}>
          <SecurityInsightsWidget entity={entity} />
        </Grid>
      </>
    )}
  </Grid>
);

How it looks

Become a Backstage expert

To get the latest news, deep dives into Backstage features, and a roundup of recent open-source action, sign up for Roadie's Backstage Weekly. See recent editions.

We will never sell or share your email address.