code: func (s *IdentityV2) CheckAndSetDefaults() error {
  	s.Kind = services.KindIdentity
  	s.Version = services.V2
  	if err := s.Metadata.CheckAndSetDefaults(); err != nil {
  		return trace.Wrap(err)
  	}
  	if len(s.Spec.Key) == 0 {
  		return trace.BadParameter("missing parameter Key")
  	}
  	if len(s.Spec.SSHCert) == 0 {
  		return trace.BadParameter("missing parameter SSHCert")
  	}
  	if len(s.Spec.TLSCert) == 0 {
  		return trace.BadParameter("missing parameter TLSCert")
  	}
  	if len(s.Spec.TLSCACerts) == 0 {
  		return trace.BadParameter("missing parameter TLSCACerts")
  	}
  	if len(s.Spec.SSHCACerts) == 0 {
  		return trace.BadParameter("missing parameter SSH CA bytes")
  	}
  	return nil
  }
docs: // CheckAndSetDefaults checks and sets defaults values.