Ejemplo n.º 1
0
        /// <summary>
        /// Default Constructor
        /// </summary>
        /// <param name="dg"></param>
        /// <param name="FullName"></param>
        /// <param name="Description"></param>
        /// <param name="Port"></param>
        /// <param name="MonitorRule"></param>
        public PoolMember(SyncFailoverGroup dg, string PartitionName, string PoolFullName, string FullName, string Description, string Port, string MonitorRule)
        {
            // Get ShortName
            string ShortName = FullName.Substring(FullName.LastIndexOf("/") + 1);
            // Get Partition
            string Partition = FullName.Substring(1, FullName.LastIndexOf("/") - 1);

            // Create Pool Management Pack Class
            ManagementPackClass mpc_PoolMember = SCOM.GetManagementPackClass("AP.F5.LTM.PoolMember");

            // Create New NetworkInterface Object
            SCOM_Object = new CreatableEnterpriseManagementObject(SCOM.m_managementGroup, mpc_PoolMember);

            // Create Root Entity Class & Key Property
            ManagementPackClass    mpc_Entity            = SCOM.GetManagementPackClass("System.Entity");
            ManagementPackProperty mpp_EntityDisplayName = mpc_Entity.PropertyCollection["DisplayName"];

            SCOM_Object[mpp_EntityDisplayName].Value = ShortName;

            // Create SyncFailoverGroup Management Pack Class & Key Property
            ManagementPackClass    mpc_SyncFailoverGroup    = SCOM.GetManagementPackClass("AP.F5.LTM.SyncFailoverGroup");
            ManagementPackProperty mpp_SyncFailoverGroupKey = mpc_SyncFailoverGroup.PropertyCollection["Key"];

            SCOM_Object[mpp_SyncFailoverGroupKey].Value = dg.Key;

            // Create Partition Management Pack Class & Key Property
            ManagementPackClass    mpc_Partition     = SCOM.GetManagementPackClass("AP.F5.LTM.Partition");
            ManagementPackProperty mpp_PartitionName = mpc_Partition.PropertyCollection["Name"];

            SCOM_Object[mpp_PartitionName].Value = PartitionName;

            // Create Pool Management Pack Class
            ManagementPackClass    mpc_Pool    = SCOM.GetManagementPackClass("AP.F5.LTM.Pool");
            ManagementPackProperty mpp_PoolKey = mpc_Pool.PropertyCollection["FullName"];

            SCOM_Object[mpp_PoolKey].Value = PoolFullName;

            // Create PoolMember Management Pack Class & Properties
            ManagementPackProperty mpp_PoolMemberFullName = mpc_PoolMember.PropertyCollection["FullName"];

            SCOM_Object[mpp_PoolMemberFullName].Value = FullName;
            ManagementPackProperty mpp_PoolMemberName = mpc_PoolMember.PropertyCollection["Name"];

            SCOM_Object[mpp_PoolMemberName].Value = ShortName;
            ManagementPackProperty mpp_PoolMemberPartition = mpc_PoolMember.PropertyCollection["Partition"];

            SCOM_Object[mpp_PoolMemberPartition].Value = Partition;
            ManagementPackProperty mpp_PoolMemberPort = mpc_PoolMember.PropertyCollection["Port"];

            SCOM_Object[mpp_PoolMemberPort].Value = Port;
            ManagementPackProperty mpp_PoolMemberDescription = mpc_PoolMember.PropertyCollection["Description"];

            SCOM_Object[mpp_PoolMemberDescription].Value = Description;
            ManagementPackProperty mpp_PoolMemberMonitorRule = mpc_PoolMember.PropertyCollection["MonitorRule"];

            SCOM_Object[mpp_PoolMemberMonitorRule].Value = MonitorRule;
            ManagementPackProperty mpp_PoolMemberPoolName = mpc_PoolMember.PropertyCollection["PoolName"];

            SCOM_Object[mpp_PoolMemberPoolName].Value = PoolFullName;
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Default Constructor
        /// </summary>
        /// <param name="FullName"></param>
        /// <param name="Description"></param>
        /// <param name="MonitorRule"></param>
        /// <param name="TotalMembers"></param>
        /// <param name="ActiveMembers"></param>
        public Pool(SyncFailoverGroup dg, string PartitionName, string FullName, string ShortName, string Description, string MonitorRule, long TotalMembers, long ActiveMembers)
        {
            // Set Partition
            string Partition = FullName.Substring(1, FullName.LastIndexOf("/") - 1);

            // Create Pool Management Pack Class
            ManagementPackClass mpc_Pool = SCOM.GetManagementPackClass("AP.F5.LTM.Pool");

            // Create New NetworkInterface Object
            SCOM_Object = new CreatableEnterpriseManagementObject(SCOM.m_managementGroup, mpc_Pool);

            // Create Root Entity Class & Key Property
            ManagementPackClass    mpc_Entity            = SCOM.GetManagementPackClass("System.Entity");
            ManagementPackProperty mpp_EntityDisplayName = mpc_Entity.PropertyCollection["DisplayName"];

            SCOM_Object[mpp_EntityDisplayName].Value = ShortName;

            // Create SyncFailoverGroup Management Pack Class & Key Property
            ManagementPackClass    mpc_SyncFailoverGroup    = SCOM.GetManagementPackClass("AP.F5.LTM.SyncFailoverGroup");
            ManagementPackProperty mpp_SyncFailoverGroupKey = mpc_SyncFailoverGroup.PropertyCollection["Key"];

            SCOM_Object[mpp_SyncFailoverGroupKey].Value = dg.Key;

            // Create Partition Management Pack Class & Key Property
            ManagementPackClass    mpc_Partition     = SCOM.GetManagementPackClass("AP.F5.LTM.Partition");
            ManagementPackProperty mpp_PartitionName = mpc_Partition.PropertyCollection["Name"];

            SCOM_Object[mpp_PartitionName].Value = PartitionName;

            // Create Properties of Pool
            ManagementPackProperty mpp_PoolFullName = mpc_Pool.PropertyCollection["FullName"];

            SCOM_Object[mpp_PoolFullName].Value = FullName;
            ManagementPackProperty mpp_PoolName = mpc_Pool.PropertyCollection["Name"];

            SCOM_Object[mpp_PoolName].Value = ShortName;
            ManagementPackProperty mpp_PoolPartition = mpc_Pool.PropertyCollection["Partition"];

            SCOM_Object[mpp_PoolPartition].Value = Partition;
            ManagementPackProperty mpp_PoolTotalMembers = mpc_Pool.PropertyCollection["TotalMembers"];

            SCOM_Object[mpp_PoolTotalMembers].Value = TotalMembers;
            ManagementPackProperty mpp_PoolActiveMembers = mpc_Pool.PropertyCollection["ActiveMembers"];

            SCOM_Object[mpp_PoolActiveMembers].Value = ActiveMembers;
            ManagementPackProperty mpp_PoolDescription = mpc_Pool.PropertyCollection["Description"];

            SCOM_Object[mpp_PoolDescription].Value = Description;
            ManagementPackProperty mpp_PoolMonitorRule = mpc_Pool.PropertyCollection["MonitorRule"];

            SCOM_Object[mpp_PoolMonitorRule].Value = MonitorRule;
        }
Ejemplo n.º 3
0
        /// <summary>
        /// Default Constructor
        /// </summary>
        /// <param name="dg"></param>
        /// <param name="FullName"></param>
        /// <param name="Description"></param>
        /// <param name="CertFileName"></param>
        public ProfileServerSSL(SyncFailoverGroup dg, string PartitionName, string FullName, string Description, string CertFileNames)
        {
            // Get ShortName
            string ShortName = FullName.Substring(FullName.LastIndexOf("/") + 1);
            // Get Partition
            string Partition = FullName.Substring(1, FullName.LastIndexOf("/") - 1);

            // Create Profile Management Pack Class
            ManagementPackClass mpc_Profile = SCOM.GetManagementPackClass("AP.F5.LTM.ProfileServerSSL");

            // Create New NetworkInterface Object
            SCOM_Object = new CreatableEnterpriseManagementObject(SCOM.m_managementGroup, mpc_Profile);

            // Create Root Entity Class & Key Property
            ManagementPackClass    mpc_Entity            = SCOM.GetManagementPackClass("System.Entity");
            ManagementPackProperty mpp_EntityDisplayName = mpc_Entity.PropertyCollection["DisplayName"];

            SCOM_Object[mpp_EntityDisplayName].Value = ShortName;

            // Create SyncFailoverGroup Management Pack Class & Key Property
            ManagementPackClass    mpc_SyncFailoverGroup    = SCOM.GetManagementPackClass("AP.F5.LTM.SyncFailoverGroup");
            ManagementPackProperty mpp_SyncFailoverGroupKey = mpc_SyncFailoverGroup.PropertyCollection["Key"];

            SCOM_Object[mpp_SyncFailoverGroupKey].Value = dg.Key;

            // Create Partition Management Pack Class & Key Property
            ManagementPackClass    mpc_Partition     = SCOM.GetManagementPackClass("AP.F5.LTM.Partition");
            ManagementPackProperty mpp_PartitionName = mpc_Partition.PropertyCollection["Name"];

            SCOM_Object[mpp_PartitionName].Value = PartitionName;

            // Now We Can Create Profile Properties
            ManagementPackProperty mpp_ProfileName = mpc_Profile.PropertyCollection["Name"];

            SCOM_Object[mpp_ProfileName].Value = ShortName;
            ManagementPackProperty mpp_ProfileFullName = mpc_Profile.PropertyCollection["FullName"];

            SCOM_Object[mpp_ProfileFullName].Value = FullName;
            ManagementPackProperty mpp_ProfilePartition = mpc_Profile.PropertyCollection["Partition"];

            SCOM_Object[mpp_ProfilePartition].Value = Partition;
            ManagementPackProperty mpp_ProfileDeviceGroup = mpc_Profile.PropertyCollection["DeviceGroup"];

            SCOM_Object[mpp_ProfileDeviceGroup].Value = dg.Name;
            ManagementPackProperty mpp_ProfileDescription = mpc_Profile.PropertyCollection["Description"];

            SCOM_Object[mpp_ProfileDescription].Value = Description;
            ManagementPackProperty mpp_ProfileCertFileName = mpc_Profile.PropertyCollection["CertFileNames"];

            SCOM_Object[mpp_ProfileCertFileName].Value = CertFileNames;
        }
Ejemplo n.º 4
0
        /// <summary>
        /// Default Constructor
        /// </summary>
        /// <param name="FullName"></param>
        /// <param name="Address"></param>
        /// <param name="Port"></param>
        /// <param name="Description"></param>
        /// <param name="Type"></param>
        /// <param name="DefaultPool"></param>
        /// <param name="DeviceGroup"></param>
        /// <param name="ConnectionLimit"></param>
        /// <param name="ClientSslProfiles"></param>
        /// <param name="ServerSslProfiles"></param>
        public VirtualServer(SyncFailoverGroup dg, string PartitionName, string FullName, string Address, string Port, string Description, string Type, string DefaultPool,
                             string ConnectionLimit, string ClientSslProfiles, string ServerSslProfiles)
        {
            // Set Default Pool
            DefaultPoolName = DefaultPool;
            // Set ShortName
            string ShortName = FullName.Substring(FullName.LastIndexOf("/") + 1);
            // Set Partition
            string Partition = FullName.Substring(1, FullName.LastIndexOf("/") - 1);

            // Create VirtualServer Management Pack Class
            ManagementPackClass mpc_VirtualServer = SCOM.GetManagementPackClass("AP.F5.LTM.VirtualServer");

            // Create New NetworkInterface Object
            SCOM_Object = new CreatableEnterpriseManagementObject(SCOM.m_managementGroup, mpc_VirtualServer);

            // Create Root Entity Class & Key Property
            ManagementPackClass    mpc_Entity            = SCOM.GetManagementPackClass("System.Entity");
            ManagementPackProperty mpp_EntityDisplayName = mpc_Entity.PropertyCollection["DisplayName"];

            SCOM_Object[mpp_EntityDisplayName].Value = ShortName;

            // Create SyncFailoverGroup Management Pack Class & Key Property
            ManagementPackClass    mpc_SyncFailoverGroup    = SCOM.GetManagementPackClass("AP.F5.LTM.SyncFailoverGroup");
            ManagementPackProperty mpp_SyncFailoverGroupKey = mpc_SyncFailoverGroup.PropertyCollection["Key"];

            SCOM_Object[mpp_SyncFailoverGroupKey].Value = dg.Key;

            // Create Partition Management Pack Class & Key Property
            ManagementPackClass    mpc_Partition     = SCOM.GetManagementPackClass("AP.F5.LTM.Partition");
            ManagementPackProperty mpp_PartitionName = mpc_Partition.PropertyCollection["Name"];

            SCOM_Object[mpp_PartitionName].Value = PartitionName;


            // Create our Virtual Server Properties
            ManagementPackProperty mpp_Name = mpc_VirtualServer.PropertyCollection["Name"];

            SCOM_Object[mpp_Name].Value = ShortName;
            ManagementPackProperty mpp_FullName = mpc_VirtualServer.PropertyCollection["FullName"];

            SCOM_Object[mpp_FullName].Value = FullName;
            ManagementPackProperty mpp_Description = mpc_VirtualServer.PropertyCollection["Description"];

            SCOM_Object[mpp_Description].Value = Description;
            ManagementPackProperty mpp_Address = mpc_VirtualServer.PropertyCollection["Address"];

            SCOM_Object[mpp_Address].Value = Address;
            ManagementPackProperty mpp_Port = mpc_VirtualServer.PropertyCollection["Port"];

            SCOM_Object[mpp_Port].Value = Port;
            ManagementPackProperty mpp_Type = mpc_VirtualServer.PropertyCollection["Type"];

            SCOM_Object[mpp_Type].Value = Type;
            ManagementPackProperty mpp_Partition = mpc_VirtualServer.PropertyCollection["Partition"];

            SCOM_Object[mpp_Partition].Value = Partition;
            ManagementPackProperty mpp_DefaultPool = mpc_VirtualServer.PropertyCollection["DefaultPool"];

            SCOM_Object[mpp_DefaultPool].Value = DefaultPool;
            ManagementPackProperty mpp_DeviceGroup = mpc_VirtualServer.PropertyCollection["DeviceGroup"];

            SCOM_Object[mpp_DeviceGroup].Value = dg.Name;
            ManagementPackProperty mpp_ConnectionLimit = mpc_VirtualServer.PropertyCollection["ConnectionLimit"];

            SCOM_Object[mpp_ConnectionLimit].Value = ConnectionLimit;
            ManagementPackProperty mpp_ProfileClientSSL = mpc_VirtualServer.PropertyCollection["ProfileClientSSL"];

            SCOM_Object[mpp_ProfileClientSSL].Value = ClientSslProfiles;
            ManagementPackProperty mpp_ProfileServerSSL = mpc_VirtualServer.PropertyCollection["ProfileServerSSL"];

            SCOM_Object[mpp_ProfileServerSSL].Value = ServerSslProfiles;
        }
Ejemplo n.º 5
0
        // Default Constructor
        public Certificate(ManagementKeyCertificateCertificateInformation_v2 certInfo, SyncFailoverGroup dg, string PartitionName)
        {
            string FullName  = certInfo.certificate.cert_info.id;
            string ShortName = FullName.Substring(FullName.LastIndexOf("/") + 1);
            string Partition = FullName.Substring(1, FullName.LastIndexOf("/") - 1);

            // Get Type
            string CertType = "";

            switch (certInfo.certificate.cert_type)
            {
            case ManagementKeyCertificateCertificateType.CTYPE_CA_SIGNED_YES:
                CertType = "Certificate Signed by CA";
                break;

            case ManagementKeyCertificateCertificateType.CTYPE_CA_SIGNED_NO:
                CertType = "Certificate NOT Signed by CA";
                break;

            default:
                CertType = "Unknown";
                break;
            }

            // Get Key Type
            string KeyType = "";

            switch (certInfo.certificate.key_type)
            {
            case ManagementKeyCertificateKeyType.KTYPE_RSA_PRIVATE:
                KeyType = "RSA Private Key";
                break;

            case ManagementKeyCertificateKeyType.KTYPE_RSA_PUBLIC:
                KeyType = "RSA Public Key";
                break;

            case ManagementKeyCertificateKeyType.KTYPE_DSA_PRIVATE:
                KeyType = "DSA Private Key";
                break;

            case ManagementKeyCertificateKeyType.KTYPE_DSA_PUBLIC:
                KeyType = "DSA Public Key";
                break;

            case ManagementKeyCertificateKeyType.KTYPE_EC_PRIVATE:
                KeyType = "EC Private Key";
                break;

            case ManagementKeyCertificateKeyType.KTYPE_EC_PUBLIC:
                KeyType = "EC Public Key";
                break;

            default:
                KeyType = "Unknown";
                break;
            }

            // Get Expiration in Days
            DateTime epoch          = new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc);
            DateTime certExpiry     = epoch.AddSeconds(certInfo.certificate.expiration_date);
            int      ExpirationDays = (certExpiry - DateTime.Now).Days;


            // Create Certificate Management Pack Class
            ManagementPackClass mpc_Certificate = SCOM.GetManagementPackClass("AP.F5.LTM.Certificate");

            // Create New NetworkInterface Object
            SCOM_Object = new CreatableEnterpriseManagementObject(SCOM.m_managementGroup, mpc_Certificate);

            // Create Root Entity Class & Key Property
            ManagementPackClass    mpc_Entity            = SCOM.GetManagementPackClass("System.Entity");
            ManagementPackProperty mpp_EntityDisplayName = mpc_Entity.PropertyCollection["DisplayName"];

            SCOM_Object[mpp_EntityDisplayName].Value = ShortName;

            // Create SyncFailoverGroup Management Pack Class & Key Property
            ManagementPackClass    mpc_SyncFailoverGroup    = SCOM.GetManagementPackClass("AP.F5.LTM.SyncFailoverGroup");
            ManagementPackProperty mpp_SyncFailoverGroupKey = mpc_SyncFailoverGroup.PropertyCollection["Key"];

            SCOM_Object[mpp_SyncFailoverGroupKey].Value = dg.Key;

            // Create Partition Management Pack Class & Key Property
            ManagementPackClass    mpc_Partition     = SCOM.GetManagementPackClass("AP.F5.LTM.Partition");
            ManagementPackProperty mpp_PartitionName = mpc_Partition.PropertyCollection["Name"];

            SCOM_Object[mpp_PartitionName].Value = PartitionName;

            // Set Properties of Certificate
            // FullName (Key Property)
            ManagementPackProperty mpp_CertificateFullName = mpc_Certificate.PropertyCollection["FullName"];

            SCOM_Object[mpp_CertificateFullName].Value = FullName;
            ManagementPackProperty mpp_CertificateName = mpc_Certificate.PropertyCollection["Name"];

            SCOM_Object[mpp_CertificateName].Value = ShortName;
            ManagementPackProperty mpp_CertificateEmail = mpc_Certificate.PropertyCollection["eMail"];

            SCOM_Object[mpp_CertificateEmail].Value = certInfo.certificate.cert_info.email;
            ManagementPackProperty mpp_CertificateFileName = mpc_Certificate.PropertyCollection["FileName"];

            SCOM_Object[mpp_CertificateFileName].Value = certInfo.file_name;
            ManagementPackProperty mpp_CertificateCertType = mpc_Certificate.PropertyCollection["CertType"];

            SCOM_Object[mpp_CertificateCertType].Value = CertType;
            ManagementPackProperty mpp_CertificateKeyType = mpc_Certificate.PropertyCollection["KeyType"];

            SCOM_Object[mpp_CertificateKeyType].Value = KeyType;
            ManagementPackProperty mpp_CertificateBitLength = mpc_Certificate.PropertyCollection["BitLength"];

            SCOM_Object[mpp_CertificateBitLength].Value = certInfo.certificate.bit_length;
            ManagementPackProperty mpp_CertificateVersion = mpc_Certificate.PropertyCollection["Version"];

            SCOM_Object[mpp_CertificateVersion].Value = certInfo.certificate.version;
            ManagementPackProperty mpp_CertificateSerialNumber = mpc_Certificate.PropertyCollection["SerialNumber"];

            SCOM_Object[mpp_CertificateSerialNumber].Value = certInfo.certificate.serial_number;
            ManagementPackProperty mpp_CertificateExpirationDate = mpc_Certificate.PropertyCollection["ExpirationDate"];

            SCOM_Object[mpp_CertificateExpirationDate].Value = certInfo.certificate.expiration_string;
            ManagementPackProperty mpp_CertificateExpirationDays = mpc_Certificate.PropertyCollection["ExpirationDays"];

            SCOM_Object[mpp_CertificateExpirationDays].Value = ExpirationDays;
            ManagementPackProperty mpp_CertificateDeviceGroup = mpc_Certificate.PropertyCollection["DeviceGroup"];

            SCOM_Object[mpp_CertificateDeviceGroup].Value = dg.Name;
            ManagementPackProperty mpp_CertificatePartition = mpc_Certificate.PropertyCollection["Partition"];

            SCOM_Object[mpp_CertificatePartition].Value = Partition;

            // Get Issuer Info
            ManagementPackProperty mpp_CertificateIssuerCommon = mpc_Certificate.PropertyCollection["IssuerCommonName"];

            SCOM_Object[mpp_CertificateIssuerCommon].Value = certInfo.certificate.issuer.common_name;
            ManagementPackProperty mpp_CertificateIssuerCountry = mpc_Certificate.PropertyCollection["IssuerCountryName"];

            SCOM_Object[mpp_CertificateIssuerCountry].Value = certInfo.certificate.issuer.country_name;
            ManagementPackProperty mpp_CertificateIssuerDivision = mpc_Certificate.PropertyCollection["IssuerDivisionName"];

            SCOM_Object[mpp_CertificateIssuerDivision].Value = certInfo.certificate.issuer.division_name;
            ManagementPackProperty mpp_CertificateIssuerLocality = mpc_Certificate.PropertyCollection["IssuerLocalityName"];

            SCOM_Object[mpp_CertificateIssuerLocality].Value = certInfo.certificate.issuer.locality_name;
            ManagementPackProperty mpp_CertificateIssuerOrganisation = mpc_Certificate.PropertyCollection["IssuerOrganisationName"];

            SCOM_Object[mpp_CertificateIssuerOrganisation].Value = certInfo.certificate.issuer.organization_name;
            ManagementPackProperty mpp_CertificateIssuerState = mpc_Certificate.PropertyCollection["IssuerStateName"];

            SCOM_Object[mpp_CertificateIssuerState].Value = certInfo.certificate.issuer.state_name;

            // Get Subject Info
            ManagementPackProperty mpp_CertificateSubjectCommon = mpc_Certificate.PropertyCollection["SubjectCommonName"];

            SCOM_Object[mpp_CertificateSubjectCommon].Value = certInfo.certificate.subject.common_name;
            ManagementPackProperty mpp_CertificateSubjectCountry = mpc_Certificate.PropertyCollection["SubjectCountryName"];

            SCOM_Object[mpp_CertificateSubjectCountry].Value = certInfo.certificate.subject.country_name;
            ManagementPackProperty mpp_CertificateSubjectDivision = mpc_Certificate.PropertyCollection["SubjectDivisionName"];

            SCOM_Object[mpp_CertificateSubjectDivision].Value = certInfo.certificate.subject.division_name;
            ManagementPackProperty mpp_CertificateSubjectLocality = mpc_Certificate.PropertyCollection["SubjectLocalityName"];

            SCOM_Object[mpp_CertificateSubjectLocality].Value = certInfo.certificate.subject.locality_name;
            ManagementPackProperty mpp_CertificateSubjectOrganisation = mpc_Certificate.PropertyCollection["SubjectOrganisationName"];

            SCOM_Object[mpp_CertificateSubjectOrganisation].Value = certInfo.certificate.subject.organization_name;
            ManagementPackProperty mpp_CertificateSubjectState = mpc_Certificate.PropertyCollection["SubjectStateName"];

            SCOM_Object[mpp_CertificateSubjectState].Value = certInfo.certificate.subject.state_name;
        }