According to Apple docs here
You can get a CKRecord from a NSManagedObject using NSPersistentCloudKitContainer.
Access CloudKit Objects You can access a managed object’s CKRecord directly through its associated context using record(for:) for a single record, or records(for:) for multiple records. To retrieve the record ID only, use recordID(for:), or recordIDs(for:). Alternatively, use the class functions record(for:), records(for:), recordID(for:), and recordIDs(for:) on NSPersistentCloudKitContainer.
But it doesn't say how to get a fresh copy? If you are working with CloudKit Sharing, you are modifying CK without going through CoreData. In which case you have to wait for NSPersistentCloudKitContainer to next fetch for updates.
But if you want to present the latest Sharing Status, you need to query Cloudkit. How to do this?