Comments (6)
maybe stale?
from artifacts-credprovider.
As for a fix here, ideally the credential provider can be installed as ContainerUser
without elevating, but there are a few unfortunate limitations here:
- The install script uses the TEMP env var (and .NET methods based off that) to create temporary files, but
ContainerUser
doesn't have any access to delete the temp files it creates (hence the icacls workaround to resolve this, granting read/delete permissions). - On Nano Server there just isn't a good scratch location for temp files, so creating and cleaning up temp files needs to be done in the docker build itself.
The core problem imho is that these script-based install mechanisms leave a lot to be desired and run into these platform limitations both on capability and differences. Using a mechanism like the proposed NuGet/Home#12567 would make all of these problems obsolete and allow the credential provider install to work cross-platform.
In the near term however, I'd propose the following changes to keep the spirit of the ContainerUser
permission model (and the docker sample's goal of building within the container as a low-privileged account in a 2-phase build for isolation):
- Update the installcredprovider.ps1 script to allow an install path to be specified, falling back to TEMP if none is specified.
- Update the docker sample to install into a custom temp folder, such that it has full permissions to clean up after install.
from artifacts-credprovider.
Able to do this in the sample itself with dotnet/dotnet-docker#4828
from artifacts-credprovider.
This issue has had no activity in 90 days. Please comment if it is not actually stale.
from artifacts-credprovider.
not stale.
from artifacts-credprovider.
This issue has had no activity in 90 days. Please comment if it is not actually stale.
from artifacts-credprovider.
Related Issues (20)
- README: Linux one-line Credential Provider installer script does not work HOT 1
- Broken when referencing a Nuget package in F# interactive HOT 15
- Nu
- Azure Artifacts Credential provider failing to start HOT 6
- NullReferenceException in v1.0.9 HOT 3
- Azure Devops: gzip: stdin: unexpected end of file HOT 3
- Problem starting the plugin - Broken Pipe HOT 1
- How to do enhanced debugging? HOT 1
- Issue authenticating to Azure Artifacts via Python behind firewall decryption HOT 1
- Use Windows authentication context from in WSL HOT 3
- System.Security.Cryptography.CryptographicException on remote connections HOT 9
- The last Create 1.1.0 release Build Failed. When v1.1.0 will be released? HOT 6
- The messages logged by the credential providers are not localized. HOT 3
- Inconsistent account selection modal behavior across operating systems HOT 3
- MsalInteractiveTokenProvider breaks if no console window handle available HOT 3
- Artifacts Conda Remove SDK Dependency
- Credential provider is not working on new laptop HOT 4
- `JsonException` with Release `1.1.0` when using `VSS_NUGET_EXTERNAL_FEED_ENDPOINTS` HOT 4
- dotnet list <SOLUTION> package --vulnerable/--outdated/--deprecated fails with Azure Artifacts Credential Provider HOT 7
- Are the Requirements Correct? HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from artifacts-credprovider.