-
Notifications
You must be signed in to change notification settings - Fork 135
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
xDSCWebservice Firewall Exception #536
Comments
@mhendric we can support the proposed flag to enable the firewall exception from the original author pretty easy because But in constrast to the original author I personally would prefer to remove the support for the Firewall from the https://github.com/PowerShell/NetworkingDsc/wiki/Firewall and thus configuring the firewalll for a DSC Pull Server should be done with this resource. As a benefit we can get rid of code here inside Luckily this would be a non breaking change because the handling of the firewall was never a part of the |
@tmeckel , that's an interesting suggestion. I tend to agree that since there's already a dedicated Firewall resource, it may be best to just remove this from the xPSDesiredStateConfiguration code entirely. However, even though it's not technically a breaking change (i.e. a change to the schema that makes it so you can't recompile your existing scripts as is), this does seem like it will break the process for anyone that expects the resource to create this rule. I'm not opposed to this, but I think we may want to treat it as a breaking change (increment the major build number and clearly document why we are doing so). |
Okay ... jumped a bit too short ... didn't think about people who might rely on the existing behavior that a firewall rule is created. If my proposal finds support, this should actually be treated as a breaking change. |
@mhendric after that we finally merged PR #507 I would start working on this here. I would follow @pkoelemij proposal to add an configuration option With a value of Lemme know what you think. |
Hey @tmeckel . Sounds good to me. We may also want to add a Write-Warning statement that is triggered when ConfigureFirewall is set to True, which states that the Firewall Configuration functionality has been deprecated and will be removed in the future; consider using the xFirewall ( |
Okay, then let's go that way. Quick summary for me:
Did I miss something? |
Quick question about work organization: Wouldn't it make sense if we would work with assignments? Or doesn't that make sense for community projects? |
@tmeckel If you mean "Assignees" on PR and issues, it's not possible to assign contributors to issues or PR's, unless the are the author of the issue or PR. At least yet, I sent in a request to GitHub for anyone to be able to be assigned to an issue and PR, but that could take time, if it would ever happen. 😄 |
Thinking about it, adding a warning statement (list item 2) might be unnecessary. The point would be to remove the functionality, including the property |
@johlju Thanks for the explanation! @mhendric can you assign the |
Just to inform you guys: I discovered that the implementation of the Firewall exception inside I'll have to clean this up at first to have a robust implementation of the fix for this issue here. I would prefer using |
@johlju I would prefer to leave the configuration option as is but later change the default value to |
Sounds reasonably. Let us go with that. 🙂 |
Agree with @tmeckel . If we set the default value to True right now, we're not actually making a breaking change at the moment; the Warning just sets the stage for a future breaking change. However if we set it to False now, that would definitely be a breaking change. |
@mhendric thanks for adding the 'in progress' label. I implemented the first version but now many unit tests are broken because, as I mentioned, I modularized the Firewall code and added a strict validation on the |
It sure is a beast :) . Kind of a related topic, does anyone know of a free way to generate a UML diagram or something based on existing PowerShell code? It would help my understanding of the resource to be able to visualize all the call flows and dependencies. Might help us see the big picture and optimize too. |
Only I know of is https://github.com/Stephanevg/PSClassUtils, But not sure it works for anything other than classes? Not used it at all though, so not sure. |
@mhendric I created three high level pseudo code markdown documents of the flow structure of the three *-TargetResource functions of |
@tmeckel I wouldn't mind checking that out. Thanks. |
@mhendric there you go but beware the documents are far from consistent in the notation LOL but I think you might grasp the idea quickly. Unfortunately there's currently (as far I know!) no standard notation for this. |
@pkoelemij the PR for fixing your issue #614 is in review. Maybe the PR will make it into the next release. |
@tmeckel good news :) |
Description
The xDSCWebservice Firewall exception automatically creates up a DSCPullServer_IIS_Port rule that opens up port 8080 to the complete internet. I'd like to be able to control this behaviour because now I have to jump through a couple of hoops to delete the firewall rule with a Script resource and create a new rull that only opens it to a certain subnet.
It is hardcoded on this line:
https://github.com/PowerShell/xPSDesiredStateConfiguration/blob/dev/DSCResources/MSFT_xDSCWebService/MSFT_xDSCWebService.psm1#L382
Proposed properties
Add a parameter called FirewallException = $true or $false that controls the creation of the firewall rules.
The text was updated successfully, but these errors were encountered: