website: Copy files during build. website: Allow for mixed env builds. website: Reduce build size. website: Expose build. website: Add build memory debugging. WIP: Disable broken links check to compare memory usage. website: Update deps. website: Clean up API paths. website: Flesh out 3.8 fixes. Format. website: Update ignore paths. Website: Clean up integrations build. website: Fix paths. website: Optimize remark. website: Update deps. website: Format. website: Remove linking. website: Fix paths. wip: Attempt API only build. Prep. Migrate render to runtime. Tidy sidebar. Clean up templates. docs: Move directory. WIP docs: Flesh out split. website: Fix issue where routes have collisions.
77 lines
2.4 KiB
Plaintext
77 lines
2.4 KiB
Plaintext
---
|
|
title: Integrate with SonarQube
|
|
sidebar_label: SonarQube
|
|
support_level: community
|
|
---
|
|
|
|
## What is SonarQube
|
|
|
|
> Self-managed static analysis tool for continuous codebase inspection
|
|
>
|
|
> -- https://www.sonarsource.com/products/sonarqube/
|
|
|
|
## Preparation
|
|
|
|
The following placeholders are used in this guide:
|
|
|
|
- `sonarqube.company` is the FQDN of the sonarqube installation.
|
|
- `authentik.company` is the FQDN of the authentik installation.
|
|
|
|
:::note
|
|
This documentation lists only the settings that you need to change from their default values. Be aware that any changes other than those explicitly mentioned in this guide could cause issues accessing your application.
|
|
:::
|
|
|
|
## Terraform provider
|
|
|
|
Create an application in authentik. Create a SAML Provider with the following values
|
|
|
|
```hcl
|
|
|
|
data "authentik_flow" "default-provider-authorization-implicit-consent" {
|
|
slug = "default-provider-authorization-implicit-consent"
|
|
}
|
|
|
|
data "authentik_property_mapping_saml" "saml-sonar-qube" {
|
|
managed_list = [
|
|
"goauthentik.io/providers/saml/email",
|
|
"goauthentik.io/providers/saml/username",
|
|
"goauthentik.io/providers/saml/name"
|
|
]
|
|
}
|
|
|
|
resource "authentik_provider_saml" "provider_sonar-qube" {
|
|
name = "SonarQube"
|
|
|
|
authorization_flow = data.authentik_flow.default-provider-authorization-implicit-consent.id
|
|
|
|
acs_url = "https://sonarqube.company/oauth2/callback/saml"
|
|
issuer = "https://authentik.company/"
|
|
sp_binding = "post"
|
|
audience = "https://sonarqube.company/saml2/metadata"
|
|
|
|
property_mappings = data.authentik_property_mapping_saml.saml-sonar-qube.ids
|
|
}
|
|
|
|
resource "authentik_application" "application_sonar-qube" {
|
|
name = "SonarQube"
|
|
slug = "sonarqube"
|
|
protocol_provider = authentik_provider_saml.provider_sonar-qube.id
|
|
}
|
|
|
|
```
|
|
|
|
## SonarQube
|
|
|
|
Navigate to Administration -> Configuration -> Authentication -> Saml
|
|
|
|
Input these Values
|
|
|
|
- Application ID: https://sonarqube.company/saml2/metadata
|
|
- Provider Name: authentik
|
|
- Provider ID: https://authentik.company/
|
|
- SAML login url: https://authentik.company/application/saml/sonarqube/sso/binding/redirect/
|
|
- Identity provider certificate: Download it from authentik
|
|
- SAML user login attribute: http://schemas.goauthentik.io/2021/02/saml/username
|
|
- SAML user name attribute: http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name
|
|
- SAML user email attribute: http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress
|