Posts Tagged ‘Domain’

This error occurred when clicking “FAST Search Keywords” within the site collection.

Error from ULS Logging : 

Admin OM Exception occurred. Message: Failed to communicate with the WCF service. , Error Code:e107, Stacktrace:Microsoft.SharePoint.Search.Extended.Administration.Common.AdminException: Failed to communicate with the WCF service. —> System.ServiceModel.FaultException`1[System.ServiceModel.ExceptionDetail]: The trust relationship between the primary domain and the trusted domain failed.   (Fault Detail is equal to An ExceptionDetail, likely created by IncludeExceptionDetailInFaults=true, whose value is: System.SystemException: The trust relationship between the primary domain and the trusted domain failed.      at System.Security.Principal.NTAccount.TranslateToSids(IdentityReferenceCollection sourceAccounts, Boolean& someFailed)     at System.Security.Principal.NTAccount.Translate(IdentityReferenceCollection sourceAccounts, Type targetType, Boolean forceSuccess)     at System.Security.Permissions.IDRole.get_Sid()     at System.Security.Permissions.PrincipalPermission.Demand()     at System.Security.PermissionSet.DemandNonCAS()     at Microsoft.SharePoint.Search.Extended.Administration.WCF.KeywordServiceImpl.GetNamedSearchSettingGroup(String name)     at SyncInvokeGetNamedSearchSettingGroup(Object , Object[] , Object[] )     at System.ServiceModel.Dispatcher.SyncMethodInvoker.Invoke(Object instance, Object[] inputs, Object[]& outputs)     at System.ServiceModel.Dispatcher.DispatchOperationRuntime.InvokeBegin(MessageR…).     — End of inner exception stack trace —     at Microsoft.SharePoint.Search.Extended.Administration.WCF.ServiceClientExceptionHandler.TranslateException(Exception e)     at Microsoft.SharePoint.Search.Extended.Administration.Common.ServiceClientExceptionHandlingInterceptor.Execute[T](Func`1 target, String errorCode, String[] values)     at Microsoft.SharePoint.Search.Extended.Administration.Common.ServiceClientExceptionHandlingInterceptor.Execute[T](Func`1 target)     at Microsoft.SharePoint.Search.Extended.Administration.WCFClient.SearchSettingGroupCollectionImplWCF.GetSearchSettingGroup(String groupName)     at Microsoft.SharePoint.Search.Extended.Administration.WCFClient.SearchSettingGroupCollectionImplWCF.ContainsSearchSettingGroup(String groupName)     at Microsoft.Office.Server.Search.Extended.Administration.Facade.AdminOMHelperBase..ctor(String siteID)     at Microsoft.Office.Server.Search.Extended.Administration.Facade.KeywordHelper..ctor(String siteId)     at Microsoft.Office.Server.Search.Extended.Administration.Internal.UI.ContextualKeywordManagement.OnLoad(EventArgs e)

 Resolution :

This customer had both DNS issues with the domain controllers in there development environment and they had inactive trusts that remained due to an old company merger.

While trying to create this script I came across a ton of help, Thanks online community’s!!

Download file here

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
 
# Execute a SQL File Begin
function Execute-SqlFile($file, [string]$Server, [string]$dbName, [hashtable]$variables, [switch]$WindowsAuthentication=$true, [string]$Username, [string]$Password) {
$batch = (join-Path (cat env:TEMP) "exec_sql.bat")
write-Host Connecting to $Server</code>
 
$output = (join-Path $env:TEMP "output_sql.txt")
if (test-Path $batch) {
Remove-Item $batch -force
}
$data = ""
if (test-Path $batch) { Remove-Item $batch }
$data += "sqlcmd -S $Server"
 
if ($WindowsAuthentication) {
$data += ' -E'
} else {
$data += " -U $Username -P $Password"
}
if ($dbname) {
$data += " -d $dbName"
}
 
if ($variables -and $variables.Count -gt 0) {
$data += ' -v '
$isFirst = $true
foreach($key in $variables.keys) {
 
if (! $isFirst) { $data += ' ' } else { $isFirst=$false }
 
$val = $variables[$key]
$data += "$key="
$data += "`"$val`""
 
}
}
$data += " -i `"$file`""
 
$data += " -o `"$output`""
 
$data | Add-Content $batch -force
 
cmd /c (Resolve-Path $batch)
 
gc $output
 
}
 
 
# Allows for a Pause Begin
function Pause ($Message="Press any key to continue...")
{
Write-Host -NoNewLine $Message
$null = $Host.UI.RawUI.ReadKey("NoEcho,IncludeKeyDown")
Write-Host ""
}
 
 
# Sets Variables By Asking The Users a Question Begin
$Yourfirstname = Read-Host "What is Your First Name? 5 characters Max "
$yourrandomnumber = Read-Host "Random Number? Two Digits Max"
 
 
# Hard Coded Variables Begin
$aspen = "aspen-"
$dash = "-"
$computer = "."
 
 
# Rename Computer EX: aspen-john-1  Begin
$computerobject = (gwmi -Class Win32_ComputerSystem -Namespace "rootcimv2" -ComputerName $computer)
$computerobject.rename("$aspen$Yourfirstname$dash$yourrandomnumber")
 
 
# Get the Conputers Name Begin
$comp = get-wmiobject Win32_ComputerSystem
 
 
# Joings Computer to the Doamin Begin
# ("%DomainName%","%Username'sPassword%","%DomainNameUsername%",$null,3)
$comp.JoinDomainOrWorkGroup("%%%%%","%%%%%","%%%%",$null,3)
 
 
# Calls another PowerShell Script To Set Permission Begin
# ./SetFolderPermission.ps1 -Access %Username% -Permission %PermisionLevel%
./SetFolderPermission.ps1 -Access %DomainName%%Username% -Permission FullControl
 
 
# Hard Coded Variables Begin
$domain = "%DomainName%"
$strComputer = gc env:computername
 
 
# Sets Variables By Asking The Users a Question Begin
$username = Read-Host "What is Your Aspenware domain username without the %DomainName%"
 
 
# Adds User to Aministrators Group Begin
$computer = [ADSI]("WinNT://" + $strComputer + ",computer")
$computer.name
$Group = $computer.psbase.children.find("administrators")
$Group.name
$Group.Add("WinNT://" + $domain + "/" + $username)
 
 
# Adds User to IIS_WPG Group Begin
$domain = "%DomainName%"
$strComputer = gc env:computername
$username = "svcnj"
$computer = [ADSI]("WinNT://" + $strComputer + ",computer")
$computer.name
$Group = $computer.psbase.children.find("IIS_WPG")
$Group.name
$Group.Add("WinNT://" + $domain + "/" + $username)
 
 
# Executes a SQL Script to add User Account to the SQL Server with SYSAdmin  Begin
Execute-Sqlfile "C:Documents and SettingsAdministratorsvcnjsql.sql" $computer.name
 
 
# Pause Then Reboots the Server Begin
pause
$reboot = (gwmi -Class Win32_OperatingSystem)
$reboot.psbase.scope.options.enableprivileges = $true
$reboot.reboot()
  • Archives

  • Tags

  • Subscribe
  • Pages

  • More

  • Disclaimer…

    This is my personal weblog. The opinions expressed herein are my own and are not representative of any 3rd party influence. The owner of this blog reserves the right to edit or delete any comments submitted to this blog without notice if they are deemed to be spam, offensive or otherwise inappropriate. The owner of this blog makes no representations as to the accuracy or completeness of any information on this site or found by following any link on this site. The owner will not be liable for any errors or omissions in this information nor for the availability of this information. The owner will not be liable for any losses, injuries, or damages from the display or use of this information.


    Lastly, I do my best to document my sources if the article is not of my own creation. If I have missed or forgotten to source your work. I would love feedback via the comments section. Thank you.

DreamHost promos
SiteLock