@@ -384,6 +384,20 @@ class SqlPermission : SqlResourceBase
384384 $principalObject = $serverObject | Get-SqlDscRole - Name $this.Name - ErrorAction ' Stop'
385385 }
386386
387+ # Create splatting parameter for principal to avoid repeated if/else blocks
388+ $principalParameter = if ($isLogin )
389+ {
390+ @ {
391+ Login = $principalObject
392+ }
393+ }
394+ else
395+ {
396+ @ {
397+ ServerRole = $principalObject
398+ }
399+ }
400+
387401 # This holds each state and their permissions to be revoked.
388402 [ServerPermission []] $permissionsToRevoke = @ ()
389403 [ServerPermission []] $permissionsToGrantOrDeny = @ ()
@@ -486,14 +500,7 @@ class SqlPermission : SqlResourceBase
486500
487501 try
488502 {
489- if ($isLogin )
490- {
491- Revoke-SqlDscServerPermission - Login $principalObject @revokeSqlDscServerPermissionParameters
492- }
493- else
494- {
495- Revoke-SqlDscServerPermission - ServerRole $principalObject @revokeSqlDscServerPermissionParameters
496- }
503+ Revoke-SqlDscServerPermission @principalParameter @revokeSqlDscServerPermissionParameters
497504 }
498505 catch
499506 {
@@ -532,14 +539,7 @@ class SqlPermission : SqlResourceBase
532539 Force = $true
533540 }
534541
535- if ($isLogin )
536- {
537- Grant-SqlDscServerPermission - Login $principalObject @grantParameters
538- }
539- else
540- {
541- Grant-SqlDscServerPermission - ServerRole $principalObject @grantParameters
542- }
542+ Grant-SqlDscServerPermission @principalParameter @grantParameters
543543 }
544544
545545 ' GrantWithGrant'
@@ -550,14 +550,7 @@ class SqlPermission : SqlResourceBase
550550 Force = $true
551551 }
552552
553- if ($isLogin )
554- {
555- Grant-SqlDscServerPermission - Login $principalObject @grantParameters
556- }
557- else
558- {
559- Grant-SqlDscServerPermission - ServerRole $principalObject @grantParameters
560- }
553+ Grant-SqlDscServerPermission @principalParameter @grantParameters
561554 }
562555
563556 ' Deny'
@@ -567,14 +560,7 @@ class SqlPermission : SqlResourceBase
567560 Force = $true
568561 }
569562
570- if ($isLogin )
571- {
572- Deny-SqlDscServerPermission - Login $principalObject @denyParameters
573- }
574- else
575- {
576- Deny-SqlDscServerPermission - ServerRole $principalObject @denyParameters
577- }
563+ Deny-SqlDscServerPermission @principalParameter @denyParameters
578564 }
579565 }
580566 }
0 commit comments