Update k8s-docker swagger auth configurations with different DNS names #14649
Description
Resolves #14512 (Microservice step)
Closes #1235
Checklist
- I fully tested it as developer / designer and created unit / integration tests
- I've assigned reviewer, related labels and set a milestone for this PR
This PR includes these changes:
- Default issuer and the metadata address is updated. Service name is no longer used as issuer for AuthServer.
- Swagger authentication for microservices is updated. It is using oidc instead of oauth. It is now possible to assign different metadata address for the oidc interaction.
- Microservice template is now using friendly DNS names. Helm chart values will reflect better value override for production environment.
- K8s tls secret creation is updated. It is now using wildcard to generate certificate. Developers no longer need to re-create TLS certificate after adding a new microservice.
Updated DNS as below:
- angular.myprojectname.dev
- blazor.myprojectname.dev
- blazor-server.myprojectname.dev
- web.myprojectname.dev
- myprojectname.dev
- authserver.myprojectname.dev
- identity.myprojectname.dev
- administration.myprojectname.dev
- product.myprojectname.dev
- saas.myprojectname.dev
- gateway-web.myprojectname.dev
- gateway-public.myprojectname.dev
Known Issues:
1- Angular app build fails.
2- User permissions returns 404 because of new integration endpoint. Fixed. (https://github.com/abpframework/abp/blob/dev/docs/en/Integration-Services.md#exposing-integration-services)
3- Admin role doesn't have other microservice's permissions; only seeded with administration service permissions.
4- Gateway swagger ui is not working because we are using internal urls for swagger.json files. This should be handled in different issue and needs a complete revamp: (#14277).
@skoc10
Based on @hikalkan's comment, you can merge and deploy it as it is. We can re-deploy after we fix these problems.