Positioning gameobject on collider bounds.

Hello. I am trying to position gameobject A on the perimeter of gameobject B’s collider. I am using Bounds.ClosestPoint to get the closest point to gameobject B’s collider but the issue is I only want to get points that are on the perimeter of the collider not inside of the collider. Could anyone guide me in the right direction to achieve this? Thank you.

In testing this I made a sphere collider with a script on it and then a sphere object that’s smaller than the collider to visualize where the first collider is.

When anything collides with the collider, the red gameobject of choice will appear at the point of contact using this script:

public class ColliderTest : MonoBehaviour
{    
    [SerializeField] private GameObject showPointPrefab = null;

    private void OnCollisionEnter(Collision collision)
    {    
        Vector3 point = collision.contacts[0].point;

        Instantiate(showPointPrefab, point, Quaternion.identity);
    }
}