コード例 #1
0
        public void SamrSetInformationGroup_AdminComment_NonDC()
        {
            ConnectAndOpenDomain_NonDC(_samrProtocolAdapter.domainMemberFqdn, _samrProtocolAdapter.domainMemberFqdn, out _serverHandle, out _domainHandle, Utilities.MAXIMUM_ALLOWED);

            string groupName = testGroupName;
            uint   relativeId;

            try
            {
                CreateGroup_NonDC(groupName, _serverHandle, _domainHandle, out _groupHandle, out relativeId);

                Site.Log.Add(LogEntryKind.TestStep, "SamrSetInformationGroup: update attributes on a group object.");
                _SAMPR_GROUP_INFO_BUFFER expectGroupInfo = new _SAMPR_GROUP_INFO_BUFFER();
                expectGroupInfo.AdminComment.AdminComment = _samrProtocolAdapter.StringToRpcUnicodeString("TestAdminComment");
                HRESULT result = _samrProtocolAdapter.SamrSetInformationGroup(_groupHandle, _GROUP_INFORMATION_CLASS.GroupAdminCommentInformation, expectGroupInfo);
                Site.Assert.AreEqual(HRESULT.STATUS_SUCCESS, result, "SamrSetInformationGroup returns:{0}.", result);

                Site.Log.Add(LogEntryKind.TestStep, "SamrQueryInformationGroup: obtain attributes from a group object.");
                _SAMPR_GROUP_INFO_BUFFER?actualGroupInfo;
                result = _samrProtocolAdapter.SamrQueryInformationGroup(_groupHandle, _GROUP_INFORMATION_CLASS.GroupAdminCommentInformation, out actualGroupInfo);
                Site.Assert.AreEqual(HRESULT.STATUS_SUCCESS, result, "SamrQueryInformationGroup returns:{0}.", result);

                Site.Assert.AreEqual(utilityObject.convertToString(expectGroupInfo.AdminComment.AdminComment.Buffer),
                                     utilityObject.convertToString(actualGroupInfo.Value.AdminComment.AdminComment.Buffer),
                                     "The AdminComment has been set successfully.");
            }
            finally
            {
                Site.Log.Add(LogEntryKind.TestStep, "SamrOpenGroup: delete the created group.");
                HRESULT result = _samrProtocolAdapter.SamrDeleteGroup(ref _groupHandle);
                Site.Assert.AreEqual(HRESULT.STATUS_SUCCESS, result, "SamrDeleteGroup succeeded.");
            }
        }
コード例 #2
0
        public void SamrSetInformationGroup_Attribute_NonDC()
        {
            ConnectAndOpenDomain_NonDC(_samrProtocolAdapter.domainMemberFqdn, _samrProtocolAdapter.domainMemberFqdn, out _serverHandle, out _domainHandle, Utilities.MAXIMUM_ALLOWED);

            string groupName = testGroupName;
            uint   relativeId;

            try
            {
                CreateGroup_NonDC(groupName, _serverHandle, _domainHandle, out _groupHandle, out relativeId);

                Site.Log.Add(LogEntryKind.TestStep, "SamrSetInformationGroup: update attributes on a group object.");
                _SAMPR_GROUP_INFO_BUFFER expectGroupInfo = new _SAMPR_GROUP_INFO_BUFFER();
                expectGroupInfo.Attribute.Attributes = Utilities.SE_GROUP_MANDATORY | Utilities.SE_GROUP_ENABLED_BY_DEFAULT | Utilities.SE_GROUP_ENABLED;
                HRESULT result = _samrProtocolAdapter.SamrSetInformationGroup(_groupHandle, _GROUP_INFORMATION_CLASS.GroupAttributeInformation, expectGroupInfo);
                Site.Assert.AreEqual(HRESULT.STATUS_SUCCESS, result, "SamrSetInformationGroup returns:{0}.", result);

                Site.Log.Add(LogEntryKind.TestStep, "SamrQueryInformationGroup: obtain attributes from a group object.");
                _SAMPR_GROUP_INFO_BUFFER?actualGroupInfo;
                result = _samrProtocolAdapter.SamrQueryInformationGroup(_groupHandle, _GROUP_INFORMATION_CLASS.GroupAttributeInformation, out actualGroupInfo);
                Site.Assert.AreEqual(HRESULT.STATUS_SUCCESS, result, "SamrQueryInformationGroup returns:{0}.", result);

                Site.Assert.AreEqual <uint>(expectGroupInfo.Attribute.Attributes, actualGroupInfo.Value.Attribute.Attributes,
                                            "The Attribute has been set successfully.");
            }
            finally
            {
                Site.Log.Add(LogEntryKind.TestStep, "SamrOpenGroup: delete the created group.");
                HRESULT result = _samrProtocolAdapter.SamrDeleteGroup(ref _groupHandle);
                Site.Assert.AreEqual(HRESULT.STATUS_SUCCESS, result, "SamrDeleteGroup succeeded.");
            }
        }
コード例 #3
0
        public void SamrSetInformationGroup_AdminComment()
        {
            Site.Log.Add(LogEntryKind.TestStep, "SamrBind-->SamrConnect5-->SamrLookupDomainInSamServer-->SamrOpenDomain");
            ConnectAndOpenDomain(_samrProtocolAdapter.pdcFqdn, _samrProtocolAdapter.PrimaryDomainDnsName, out _serverHandle, out _domainHandle);

            Site.Log.Add(LogEntryKind.TestStep, "SamrCreateGroupInDomain: create a group with Name:{0}, and DesiredAccess:{1}",
                         testGroupName, Common_ACCESS_MASK.MAXIMUM_ALLOWED);
            uint    relativeId;
            HRESULT result = _samrProtocolAdapter.SamrCreateGroupInDomain(_domainHandle,
                                                                          testGroupName, (uint)Group_ACCESS_MASK.GROUP_ALL_ACCESS,
                                                                          out _groupHandle, out relativeId);

            Site.Assert.AreEqual(HRESULT.STATUS_SUCCESS, result, "SamrCreateGroupInDomain returns:{0}.", result);
            Site.Assert.IsNotNull(_userHandle, "The returned group handle is: {0}.", _groupHandle);
            Site.Assert.IsTrue(_samrProtocolAdapter.VerifyRelativeID(relativeId), "The Rid value MUST be within the Rid-Range");

            Site.Log.Add(LogEntryKind.TestStep, "SamrSetInformationGroup: update attributes on a group object.");
            _SAMPR_GROUP_INFO_BUFFER expectGroupInfo = new _SAMPR_GROUP_INFO_BUFFER();

            expectGroupInfo.AdminComment.AdminComment = _samrProtocolAdapter.StringToRpcUnicodeString("TestAdminComment");
            result = _samrProtocolAdapter.SamrSetInformationGroup(_groupHandle, _GROUP_INFORMATION_CLASS.GroupAdminCommentInformation, expectGroupInfo);
            Site.Assert.AreEqual(HRESULT.STATUS_SUCCESS, result, "SamrSetInformationGroup returns:{0}.", result);

            Site.Log.Add(LogEntryKind.TestStep, "SamrQueryInformationGroup: obtain attributes from a group object.");
            _SAMPR_GROUP_INFO_BUFFER?actualGroupInfo;

            result = _samrProtocolAdapter.SamrQueryInformationGroup(_groupHandle, _GROUP_INFORMATION_CLASS.GroupAdminCommentInformation, out actualGroupInfo);
            Site.Assert.AreEqual(HRESULT.STATUS_SUCCESS, result, "SamrQueryInformationGroup returns:{0}.", result);

            Site.Assert.AreEqual(utilityObject.convertToString(expectGroupInfo.AdminComment.AdminComment.Buffer),
                                 utilityObject.convertToString(actualGroupInfo.Value.AdminComment.AdminComment.Buffer),
                                 "The AdminComment has been set successfully.");

            Site.Log.Add(LogEntryKind.TestStep, "SamrDeleteGroup: delete the created group.");
            result = _samrProtocolAdapter.SamrDeleteGroup(ref _groupHandle);
            Site.Assert.AreEqual(HRESULT.STATUS_SUCCESS, result, "SamrDeleteGroup returns:{0}.", result);
        }