You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
feat: Loading the CA trusted store certificate into Feast to verify the public certificate. (feast-dev#4852)
* Initial Draft version to load the CA trusted store code.
Signed-off-by: lrangine <19699092+lokeshrangineni@users.noreply.github.com>
* Initial Draft version to load the CA trusted store code.
Signed-off-by: lrangine <19699092+lokeshrangineni@users.noreply.github.com>
* Fixing the lint error.
Signed-off-by: lrangine <19699092+lokeshrangineni@users.noreply.github.com>
* Trying to fix the online store test cases.
Signed-off-by: lrangine <19699092+lokeshrangineni@users.noreply.github.com>
* Formatted the python to fix lint errors.
Signed-off-by: lrangine <19699092+lokeshrangineni@users.noreply.github.com>
* Fixing the unit test cases.
Signed-off-by: lrangine <19699092+lokeshrangineni@users.noreply.github.com>
* Fixing the unit test cases.
Signed-off-by: lrangine <19699092+lokeshrangineni@users.noreply.github.com>
* removing unnecessary cli args.
Signed-off-by: lrangine <19699092+lokeshrangineni@users.noreply.github.com>
* Now configuring the SSL ca store configurations on the feast client side rather than on the server side. And also fixing the integration tests.
Signed-off-by: lrangine <19699092+lokeshrangineni@users.noreply.github.com>
* Renamed the remote registry is_tls_mode variable to is_tls.
Changed the offline store TLS setting decision from cert to scheme.
Signed-off-by: lrangine <19699092+lokeshrangineni@users.noreply.github.com>
* Adding the existing trust store certificates to the newly created trust store.
Signed-off-by: lrangine <19699092+lokeshrangineni@users.noreply.github.com>
* Clearing the existing trust store configuration to see if it fixes the PR integration failures.
Signed-off-by: lrangine <19699092+lokeshrangineni@users.noreply.github.com>
* Clearing the existing trust store configuration to see if it fixes the PR integration failures.
Signed-off-by: lrangine <19699092+lokeshrangineni@users.noreply.github.com>
* Clearing the existing trust store configuration to see if it fixes the PR integration failures.
Signed-off-by: lrangine <19699092+lokeshrangineni@users.noreply.github.com>
* combining the default system ca store with the custom one to fix the integration tests.
Signed-off-by: lrangine <19699092+lokeshrangineni@users.noreply.github.com>
* Final clean up and adding documentation.
Signed-off-by: lrangine <19699092+lokeshrangineni@users.noreply.github.com>
* Incorporating the code review comments from Francisco.
Signed-off-by: lrangine <19699092+lokeshrangineni@users.noreply.github.com>
---------
Signed-off-by: lrangine <19699092+lokeshrangineni@users.noreply.github.com>
Copy file name to clipboardexpand all lines: docs/how-to-guides/starting-feast-servers-tls-mode.md
+5
Original file line number
Diff line number
Diff line change
@@ -189,3 +189,8 @@ INFO: Waiting for application startup.
189
189
INFO: Application startup complete.
190
190
INFO: Uvicorn running on https://0.0.0.0:8888 (Press CTRL+C to quit)
191
191
```
192
+
193
+
194
+
## Adding public key to CA trust store and configuring the feast to use the trust store.
195
+
You can pass the public key for SSL verification using the `cert` parameter, however, it is sometimes difficult to maintain individual certificates and pass them individually.
196
+
The alternative recommendation is to add the public certificate to CA trust store and set the path as an environment variable (e.g., `FEAST_CA_CERT_FILE_PATH`). Feast will use the trust store path in the `FEAST_CA_CERT_FILE_PATH` environment variable.
Copy file name to clipboardexpand all lines: sdk/python/feast/infra/registry/remote.py
+28-9
Original file line number
Diff line number
Diff line change
@@ -1,3 +1,4 @@
1
+
importos
1
2
fromdatetimeimportdatetime
2
3
frompathlibimportPath
3
4
fromtypingimportList, Optional, Union
@@ -59,6 +60,12 @@ class RemoteRegistryConfig(RegistryConfig):
59
60
""" str: Path to the public certificate when the registry server starts in TLS(SSL) mode. This may be needed if the registry server started with a self-signed certificate, typically this file ends with `*.crt`, `*.cer`, or `*.pem`.
60
61
If registry_type is 'remote', then this configuration is needed to connect to remote registry server in TLS mode. If the remote registry started in non-tls mode then this configuration is not needed."""
61
62
63
+
is_tls: bool=False
64
+
""" bool: Set to `True` if you plan to connect to a registry server running in TLS (SSL) mode.
65
+
If you intend to add the public certificate to the trust store instead of passing it via the `cert` parameter, this field must be set to `True`.
66
+
If you are planning to add the public certificate as part of the trust store instead of passing it as a `cert` parameters then setting this field to `true` is mandatory.
"SSL_CERT_FILE or REQUESTS_CA_BUNDLE environment variable must be set to use secure TLS or set the cert parameter in feature_Store.yaml file under remote registry configuration."
0 commit comments