Closed ghost closed 3 years ago
How are you doing private access service endpoint or private endpoint?
I’ll try take a look at this tomorrow, btw your policy reason is misspelling anonymous:
anynamous
Service endpoint - Microsoft.Storage
So two options that I can see:
allowBlobPublicAccess
(which we aren't setting but it's using the default).two would be better I think
Yeah for what it's worth, I have configured it to use managed disks though I confess I don't quite understand the distinction and just went with the recommended setting.
If requiring a storage account, I'd love to see a checkbox that directly controls that Azure setting. I still don't understand why it's attempting to do anything to an existing storage account. I did have a hunch that 'Enabled' was the default in Azure because I couldn't make sense of what was happening otherwise.
If managed disks aren't supposed to be 'using' the storage account anyway, why does it seem to be trying to set that field on my storage account? Just curious - I was digging through the plugin code to try and figure out what was going on and didn't make much headway.
In the meantime, I'd love to simply patch the plugin myself but I haven't been able to figure out where to shove 'storage account allow blob public access = false'
Yeah it’s not the simplest patch
it’s just running an ARM template which is unfortunately not leaving unspecified options alone, it’s questionable whether the ‘existing’ storage account should be including the storage account resource, the only reason I can see is maybe it gets an output from it but I doubt it
so that’s another option is refactor it to not touch the storage account if it’s existing
the problem with this change is there’s lots of duplicated arm templates doing slightly different things.
I would rather not add a flag for this as it’s just another setting for users
ideally we
Ok I think we need the storage account for uploading the custom script.
So the fix should be if storage account is set to existing then we don't touch it
Have just fallen over this due to an organisationally imposed policy change last week. Had to drop back to a static SSH agent in the meantime.
The storage account == existing -> do nothing would work for us, However there is still an issue with create new storage account violating the policy, and hence now needing to specify the allowBlobPublicAccess == false (or at least configurable)
PR welcome if someone tests it and it works for them...
Ideally it defaults to off.
I'm not 100% sure if we rely on the public access for any functionality...
I'm currently busy elsewhere upgrading all the SDKs so won't have time to get to this for a bit.
Hey @timja
You closed my tickit #280 I see this is the same issue
but i dont understand the solution
we are using an existing storage. So you wrote: “ So the fix should be if storage account is set to existing then we don't touch it”
but the plugin does try to touch it
please explain the solution :)
thanks
umm, it's still what I said before?
This issue is open, which means not fixed...
Ok. is there an estimation for when it will be fixed? (Even a W/A)
SDK upgrades have finished now, so probably in the next 2 weeks or so.
May be sooner
That has solved my storage account issue but now I have a public IP address issue :) Same policy violation but different resource. Bummer.
you can use private networking under advanced settings
I completely forgot about that. Been spending too much time in Docker Cloud lately. Working great here. Appreciate it!
Please try https://github.com/jenkinsci/azure-vm-agents-plugin/releases/tag/780.v50d067d02f76
Thanks! works!
Version report
Jenkins and plugins versions report:
Reproduction steps
Results
Expected result: a VM is created and the build is run
Actual result: a VM is not created. Azure blocks an attempt to set the storage account to enable public blob access (log attached) AzureError.txt