diff --git a/plugins/modules/ipapermission.py b/plugins/modules/ipapermission.py
index 657d934ff7ff1f8f922c806e8f5aed7d77a79273..b10161336428a65cfb328ca35a6b4857d49eef8c 100644
--- a/plugins/modules/ipapermission.py
+++ b/plugins/modules/ipapermission.py
@@ -304,11 +304,7 @@ def main():
             invalid += ["right", "attrs", "memberof",
                         "extra_target_filter", "rawfilter"]
 
-    for x in invalid:
-        if vars()[x] is not None:
-            ansible_module.fail_json(
-                msg="Argument '%s' can not be used with action "
-                "'%s' and state '%s'" % (x, action, state))
+    ansible_module.params_fail_used_invalid(invalid, state, action)
 
     if bindtype == "self" and ansible_module.ipa_check_version("<", "4.8.7"):
         ansible_module.fail_json(