diff --git a/patrole_tempest_plugin/tests/api/compute/test_floating_ips_rbac.py b/patrole_tempest_plugin/tests/api/compute/test_floating_ips_rbac.py
index d313494..ed3691e 100644
--- a/patrole_tempest_plugin/tests/api/compute/test_floating_ips_rbac.py
+++ b/patrole_tempest_plugin/tests/api/compute/test_floating_ips_rbac.py
@@ -23,6 +23,21 @@
 
 CONF = config.CONF
 
+# RBAC category or action was changed in Victoria release per
+# https://docs.openstack.org/api-ref/compute/#floating-ips-os-floating-ips-deprecated
+# and
+# https://github.com/openstack/nova/blob/master/nova/policies/floating_ips.py#L21
+if CONF.policy_feature_enabled.changed_nova_policies_victoria:
+    _FIP_GET = "os_compute_api:os-floating-ips:list"
+    _FIP_SHOW = "os_compute_api:os-floating-ips:show"
+    _FIP_CREATE = "os_compute_api:os-floating-ips:create"
+    _FIP_DELETE = "os_compute_api:os-floating-ips:delete"
+else:
+    _FIP_GET = "os_compute_api:os-floating-ips"
+    _FIP_SHOW = "os_compute_api:os-floating-ips"
+    _FIP_CREATE = "os_compute_api:os-floating-ips"
+    _FIP_DELETE = "os_compute_api:os-floating-ips"
+
 
 class FloatingIpsRbacTest(rbac_base.BaseV2ComputeRbacTest):
 
@@ -44,7 +59,7 @@
     @decorators.idempotent_id('ac1b3053-f755-4cda-85a0-30e88b88d7ba')
     @rbac_rule_validation.action(
         service="nova",
-        rules=["os_compute_api:os-floating-ips"])
+        rules=[_FIP_GET])
     def test_list_floating_ips(self):
         with self.override_role():
             self.floating_ips_client.list_floating_ips()
@@ -52,7 +67,7 @@
     @decorators.idempotent_id('bebe52b3-5269-4e72-80c8-5a4a39c3bfa6')
     @rbac_rule_validation.action(
         service="nova",
-        rules=["os_compute_api:os-floating-ips"])
+        rules=[_FIP_SHOW])
     def test_show_floating_ip(self):
         body = self.floating_ips_client.create_floating_ip(
             pool=CONF.network.floating_network_name)['floating_ip']
@@ -64,7 +79,7 @@
     @decorators.idempotent_id('2bfb8745-c329-4ee9-95f6-c165a1989dbf')
     @rbac_rule_validation.action(
         service="nova",
-        rules=["os_compute_api:os-floating-ips"])
+        rules=[_FIP_CREATE])
     def test_create_floating_ips(self):
         with self.override_role():
             body = self.floating_ips_client.create_floating_ip(
@@ -75,7 +90,7 @@
     @decorators.idempotent_id('d3028373-5027-4e7a-b761-01c515403ecb')
     @rbac_rule_validation.action(
         service="nova",
-        rules=["os_compute_api:os-floating-ips"])
+        rules=[_FIP_DELETE])
     def test_delete_floating_ip(self):
         body = self.floating_ips_client.create_floating_ip(
             pool=CONF.network.floating_network_name)['floating_ip']
