diff --git a/horizon/workflows/base.py b/horizon/workflows/base.py
index <HASH>..<HASH> 100644
--- a/horizon/workflows/base.py
+++ b/horizon/workflows/base.py
@@ -438,11 +438,7 @@ class Step(object):
 
     def has_required_fields(self):
         """Returns True if action contains any required fields."""
-        for key in self.contributes:
-            field = self.action.fields.get(key, None)
-            if (field and field.required):
-                return True
-        return False
+        return any(field.required for field in self.action.fields.values())
 
 
 class WorkflowMetaclass(type):
Bad workflow-steps check: has_required_fields

Many of the tabs on the Instance Creation screen don't show a "*"
despite having require fields.  This is due to faulty logic in determining
whether the workflow-step has require fields.  (Previously, only keys from
the contributes list were checked.)

Change-Id: Id<I>da<I>c<I>f8d<I>d7fd<I>ead0c3bb<I>
Closes-Bug: <I>