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

Support object_storage_url override #341

Open
drzraf opened this issue Jan 13, 2022 · 0 comments
Open

Support object_storage_url override #341

drzraf opened this issue Jan 13, 2022 · 0 comments

Comments

@drzraf
Copy link

drzraf commented Jan 13, 2022

Generally, the object_storage_url is built from OS_AUTH_URL, OS_PROJECT_ID and other similar variable. In php-opencloud/openstack it's retrieved from the JSON payload obtained from POST /v3/auth/tokens (in token.catalog.endpoints[type=="object-store"][interface == "xx"].url)

Still, the Python Swift client allows for another alternative: OS_STORAGE_URL

This allows to use a distinct storage-url unrelated from said variable.

This is useful (= actually necessary) in the context of application credentials, where an application credential is generated within a given project, but used to access an object container in another project (whose ACLs have been configured). In such a case we can't rely on the URL generation logic.

This is need to give a use for cross-projects #336
Let's remind that some Openstack hosting solution do not offer multiple users, but only multiple projects, making cross-project application credentials the only secure way to grant access to an object container which implies supporting the OS_STORAGE_URL override.

In a more generic way, it means giving the ability to override OpenStack\Identity\v3\Models\Service::getUrl() from the configuration (this class as not access to)

drzraf pushed a commit to drzraf/openstack that referenced this issue Jan 13, 2022
drzraf pushed a commit to drzraf/openstack that referenced this issue Mar 27, 2024
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

No branches or pull requests

1 participant