Skip to content

Commit 3956952

Browse files
committed
more notes
1 parent e1dd748 commit 3956952

File tree

1 file changed

+43
-2
lines changed

1 file changed

+43
-2
lines changed

src/CcgPlugin/README.md

Lines changed: 43 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# Experiments to get gMSA Container Credentials Manager working.
1+
# Experiments to get Container Credentials Manager working with custom plugin.
22

33
### Goal:
44

@@ -10,7 +10,7 @@ https://docs.microsoft.com/en-us/windows/win32/api/ccgplugins/nf-ccgplugins-iccg
1010

1111
### Current problem:
1212

13-
Cannot get CCM to activate COM component
13+
Cannot get CCM to activate COM plugin component
1414

1515
### What has been tried:
1616

@@ -105,3 +105,44 @@ otherType.InvokeMember("GetPasswordCredentials", BindingFlags.InvokeMethod | Bin
105105
### AKS plugin
106106

107107
It was confirmed that AKS plugin that implements the above interface does work and is able to be spun up and start container with GMSA creds as per this article. https://docs.microsoft.com/en-us/azure/aks/use-group-managed-service-accounts
108+
109+
### Other observations
110+
111+
Given that COM plugin has constructor logic that writes a marker file to `c:\temp`, the lack of said file when attempting to start container with `--security-opt` would imply that COM method signature conforming to an interface is not a problem, as COM object would be instantiated before the method call. Since it's not being created, seems like CCG subsystem is not picking up the plugin registration properly.
112+
113+
The experiment was repeated by copying the DLL to an AKS node where Azure's Vault CCG plugin is installed, registering it and adding the necessary CCG registry entries. No COM activation was observed in that environment either.
114+
115+
## Primary test Environment
116+
117+
```
118+
PS C:\projects> [Environment]::OSVersion
119+
120+
Platform ServicePack Version VersionString
121+
-------- ----------- ------- -------------
122+
Win32NT 10.0.19043.0 Microsoft Windows NT 10.0.19043.0
123+
124+
125+
PS C:\projects> docker version
126+
Client:
127+
Cloud integration: v1.0.20
128+
Version: 20.10.10
129+
API version: 1.41
130+
Go version: go1.16.9
131+
Git commit: b485636
132+
Built: Mon Oct 25 07:47:53 2021
133+
OS/Arch: windows/amd64
134+
Context: default
135+
Experimental: true
136+
137+
Server: Docker Engine - Community
138+
Engine:
139+
Version: 20.10.10
140+
API version: 1.41 (minimum version 1.24)
141+
Go version: go1.16.9
142+
Git commit: e2f740d
143+
Built: Mon Oct 25 07:43:13 2021
144+
OS/Arch: windows/amd64
145+
Experimental: false
146+
PS C:\projects>
147+
```
148+

0 commit comments

Comments
 (0)