Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

(feat): Azure MSI authentication #164

Open
2 tasks
Tracked by #292 ...
lukasmrtvy opened this issue Aug 26, 2020 · 9 comments · May be fixed by #330
Open
2 tasks
Tracked by #292 ...

(feat): Azure MSI authentication #164

lukasmrtvy opened this issue Aug 26, 2020 · 9 comments · May be fixed by #330
Assignees

Comments

@lukasmrtvy
Copy link

lukasmrtvy commented Aug 26, 2020

Would be nice to support Azure MSI authentication ( https://www.terraform.io/docs/providers/azurerm/guides/managed_service_identity.html#what-is-a-managed-identity- )

Related issues:

@negz negz transferred this issue from crossplane/crossplane Aug 28, 2020
@chaholl
Copy link

chaholl commented Mar 17, 2021

I also have this requirement and looked at what's involved in implementing it - seems pretty straightforward. However, the only question is how it should be configured?

Managed Service Identity is supported by go-autorest so all we need is some conditional logic to determine which config to pass to Authorizer. Does this become another source in ProviderConfig or a particular value in an existing config file eg. clientId: msi as is used in various place in Azure.

@muvaf
Copy link
Member

muvaf commented Mar 24, 2021

Does this become another source in ProviderConfig or a particular value in an existing config file eg. clientId: msi as is used in various place in Azure.

If I understand it correctly, yes. You can take a look at AWS IRSA implementation as reference https://github.com/crossplane/provider-aws/blob/master/pkg/clients/aws.go#L100

@schdief
Copy link

schdief commented Feb 10, 2022

doesn't seem to me like a nice feature, but a necessary change:

today I tried my first steps with crossplane on azure and it stopped pretty soon, since my company doesn't allow the creation of service principals, I can request one centrally, but it won't have Owner permissions, so nevertheless crossplane wouldn't be able to create its own service principals

@Crazyigor1987
Copy link

We're also facing the problem, that our company doesn't allow to create service principals. So the way of using Managed Identities is a required one. Are there any plans or discussions to implement the feature soon?

@jacksonicson
Copy link

Same here, we need to use Managed Identities. Any feedback on feature implementation plans would be helpful.

@nishant221
Copy link

Any estimates on the time by when this will be available?

@ahilmathew
Copy link

This would really nice. Need this to start using Crossplane

@jbw976
Copy link
Member

jbw976 commented Apr 26, 2023

Is there any chance that https://github.com/upbound/provider-azure/ would cover your use cases? 🙏

See https://github.com/upbound/provider-azure/blob/main/AUTHENTICATION.md for specifics around authentication

@callum-stakater
Copy link

the usage of User Assigned Managed Identity as described in https://github.com/upbound/provider-azure/blob/main/AUTHENTICATION.md is fundamentally broken as it depends on extending Kubelets permissions way beyond the scope of what it should have

the point of using a UAMI with the azure provider is to have the providers kubernetes serviceaccount linked to a dedicated UAMI that has the required permissions to provision the desired infrastructure, kubelets identity should be absolutely nowhere in scope

it should be possible to have multiple azure provider configs each bound to their own kubernetes SA each with their own dedicated UAMI with different permission sets for different tenants/usecases

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.