Skip to content

Commit e21cc74

Browse files
committed
feat: finishing post entra-id
1 parent 7b4c733 commit e21cc74

File tree

2 files changed

+32
-21
lines changed

2 files changed

+32
-21
lines changed

_posts/en/2025-02-04-authentication-backstage-entra-id.md

Lines changed: 16 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -28,9 +28,11 @@ Since I found it difficult to locate online resources on authentication with Ent
2828
According to their official [description](https://backstage.io/docs/overview/what-is-backstage/):
2929

3030
> *[Backstage](https://backstage.io/) is an open-source framework for building developer portals. Powered by a centralized software catalog, Backstage restores order to your microservices and infrastructure and enables your product teams to ship high-quality code quickly — without compromising autonomy.*
31-
> *Backstage unifies all your infrastructure tooling, services, and documentation to create a streamlined development environment from end to end.*
31+
> *Backstage unifies all your infrastructure tooling, services, and documentation to create a streamlined development environment from end to end.*
32+
---
3233

33-
💡 **Note:** Backstage is entirely **developer-focused**. If you, like me, come from an infrastructure background, you may find it challenging since all configurations are done through system files — there is no admin interface for managing users, permissions, integrations, or plugins.
34+
> **Note:** Backstage is entirely **developer-focused**. If you, like me, come from an infrastructure background, you may find it challenging since all configurations are done through system files — there is no admin interface for managing users, permissions, integrations, or plugins.
35+
{: .prompt-info }
3436

3537
---
3638

@@ -52,7 +54,8 @@ You can then access Backstage locally at `http://localhost:3000`, signing in as
5254
![Guest home page](assets/img/backstage-entraid/user-home.png)
5355
*Guest home page*
5456

55-
💡 **Guest access is meant for development purposes only and is not recommended for production.** However, if you still want to enable full guest access, you can find the documentation [here](https://backstage.io/docs/auth/guest/provider/).
57+
> **Guest access is meant for development purposes only and is not recommended for production.** However, if you still want to enable full guest access, you can find the documentation [here](https://backstage.io/docs/auth/guest/provider/).
58+
{: .prompt-info }
5659

5760
---
5861

@@ -109,10 +112,12 @@ auth:
109112
- resolver: userIdMatchingUserEntityAnnotation
110113
```
111114
112-
📌 The values for `clientId`, `tenantId`, and `domainHint` can be found on the **Overview** page of your App Registration in Entra ID.
113-
📌 The `clientSecret` is created under **Certificates & Secrets**.
114-
115-
⚠️ **Security Warning:** Never store `clientSecret` directly in the code. Use **environment variables** for production environments.
115+
> 📌 The values for `clientId`, `tenantId`, and `domainHint` can be found on the **Overview** page of your App Registration in Entra ID.
116+
> 📌 The `clientSecret` is created under **Certificates & Secrets**.
117+
{: .prompt-tip }
118+
---
119+
> **Security Warning:** Never store `clientSecret` directly in the code. Use **environment variables** for production environments.
120+
{: .prompt-warning }
116121

117122
![clientId, tenantId and domainHint](assets/img/backstage-entraid/app-data.png)
118123
*clientId, tenantId and domainHint*
@@ -186,7 +191,8 @@ const app = createApp({
186191

187192
Once this is done, you should see the **Microsoft login button** on the Backstage UI.
188193

189-
🚨 However, authentication will fail at this point because Backstage does not recognize the user in its catalog. This leads us to the next step.
194+
> 🚨 However, authentication will fail at this point because Backstage does not recognize the user in its catalog. This leads us to the next step.
195+
{: .prompt-error }
190196

191197
![Authentication error](assets/img/backstage-entraid/auth-error.png)
192198
*Authentication error*
@@ -217,12 +223,13 @@ spec:
217223
- guests
218224
```
219225

220-
📌 Notes:
226+
> 📌 Notes:
221227

222228
- `metadata.name`: Mail nickname (value before @yourdomain.com).
223229
- `metadata.annotations.graph.microsoft.com/user-id`: `Object ID` of the user.
224230
- `displayName`: Full name of the user.
225231
- `email`: Full email address.
232+
{: .prompt-tip }
226233

227234
## Final Thoughts
228235

_posts/pt-BR/2025-02-04-authentication-backstage-entra-id.md

Lines changed: 16 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -28,9 +28,11 @@ Como tive dificuldades para encontrar recursos sobre autenticação com o Entra
2828
De acordo com sua [descrição](https://backstage.io/docs/overview/what-is-backstage) oficial:
2929

3030
> *[Backstage](https://backstage.io/) é uma estrutura de código aberto para construção de portais de desenvolvedores. Alimentado por um catálogo de software centralizado, o Backstage restaura a ordem de seus microsserviços e infraestrutura e permite que suas equipes de produto enviem códigos de alta qualidade rapidamente, sem comprometer a autonomia.*
31-
> *Backstage unifica todas as ferramentas, serviços e documentação de sua infraestrutura para criar um ambiente de desenvolvimento simplificado de ponta a ponta.*
31+
> *Backstage unifica todas as ferramentas, serviços e documentação de sua infraestrutura para criar um ambiente de desenvolvimento simplificado de ponta a ponta.*
32+
---
3233

33-
💡 **Nota:** Backstage é totalmente **focado em desenvolvedores**. Se você, assim como eu, vem da área de infraestrutura, pode estranhar o fato de que toda a configuração é feita via arquivos de sistema—não há uma interface administrativa para gerenciar usuários, permissões, integrações ou plugins.
34+
> **Nota:** O Backstage é totalmente **focado em desenvolvedores**. Se você, assim como eu, vem da área de infraestrutura, pode estranhar o fato de que toda a configuração é feita via arquivos de sistema—não há uma interface administrativa para gerenciar usuários, permissões, integrações ou plugins.
35+
{: .prompt-info }
3436

3537
---
3638

@@ -52,8 +54,8 @@ Você pode então acessar o Backstage localmente em `http://localhost:3000`, ent
5254
![Página inicial de convidado](assets/img/backstage-entraid/user-home.png)
5355
*Página inicial de convidado*
5456

55-
💡 **O acesso de convidado é destinado apenas para desenvolvimento e não é recomendado para produção.** No entanto, se desejar habilitá-lo, consulte a documentação [aqui](https://backstage.io/docs/auth/guest/provider/).
56-
57+
> **O acesso de convidado é destinado apenas para desenvolvimento e não é recomendado para produção.** No entanto, se desejar habilitá-lo, consulte a documentação [aqui](https://backstage.io/docs/auth/guest/provider/).
58+
{: .prompt-info }
5759
---
5860

5961
## Passo 2: Criar um App Registration no Entra ID
@@ -110,10 +112,12 @@ auth:
110112
- resolver: userIdMatchingUserEntityAnnotation
111113
```
112114
113-
📌 Os valores para `clientId`, `tenantId` e `domainHint` podem ser encontrados na **página Overview** do seu App Registration no Entra ID.
114-
📌 O `clientSecret` é gerado na seção **Certificates & Secrets**.
115-
116-
⚠️ **Aviso de Segurança:** Nunca armazene `clientSecret` diretamente no código. Utilize **variáveis de ambiente** em produção.
115+
> 📌 Os valores para `clientId`, `tenantId` e `domainHint` podem ser encontrados na **página Overview** do seu App Registration no Entra ID.
116+
> 📌 O `clientSecret` é gerado na seção **Certificates & Secrets**.
117+
{: .prompt-tip }
118+
---
119+
> **Aviso de Segurança:** Nunca armazene `clientSecret` diretamente no código. Utilize **variáveis de ambiente** em produção.
120+
{: .prompt-warning }
117121

118122
![clientId, tenantId e domainHint](assets/img/backstage-entraid/app-data.png)
119123
*clientId, tenantId e domainHint*
@@ -187,7 +191,8 @@ const app = createApp({
187191

188192
Com isto feito já é possível ver que o botão de autenticação via Entra ID está disponível na interface.
189193

190-
🚨 Contudo, a autenticação falhará, pois o Backstage não é capaz de reconhecer o usuário no catálogo. Isso nos leva ao próximo passo.
194+
> 🚨 Contudo, a autenticação falhará, pois o Backstage não é capaz de reconhecer o usuário no catálogo. Isso nos leva ao próximo passo.
195+
{: .prompt-error }
191196

192197
![Erro de autenticação](assets/img/backstage-entraid/auth-error.png)
193198
*Erro de autenticação*
@@ -218,14 +223,13 @@ spec:
218223
- guests
219224
```
220225

221-
📌 Notas:
226+
> 📌 Notas:
222227

223228
- `metadata.name`: é o valor de `Mail nickname`, ou o valor antes de `@seudominio.com`;
224229
- `metadata.annotations.graph.microsoft.com/user-id`: é o valor de `Object ID`;
225230
- `displayName`: nome do usuário;
226231
- `email`: endereço de email completo
227-
228-
---
232+
{: .prompt-tip }
229233

230234
## Considerações Finais
231235

0 commit comments

Comments
 (0)