Rotate bezier handles with Python to face normal
Ok, found a solution: Just adding or subtracting the normal vector to or from the control-point of the curve:

Like before the normal of the face I get from here

hit, loc_hit, norm, face, *_ = scene.ray_cast(context.view_layer, origin, view_vector)


Then I add or subtract it to the control point of the bezier curve:

norm_start = curve_shape.get_normal_start()
norm_end = curve_shape.get_normal_end()

bez_points[0].co = curve_shape.get_start_point()
if norm_start is not None:
    bez_points[0].handle_right = bez_points[0].co + norm_start
    bez_points[0].handle_left = bez_points[0].co - norm_start

bez_points[point_count].co = curve_shape.get_end_point()
if norm_end is not None:
    bez_points[point_count].handle_right = bez_points[point_count].co - norm_end
    bez_points[point_count].handle_left = bez_points[point_count].co + norm_end