Olet tällä hetkellä offline-tilassa. Internet-yhteyden muodostamista uudelleen odotetaan

Käyttäjät eivät pysty lähettämään sähköpostiviestejä kannettavasta laitteesta tai jaetusta postilaatikosta Exchange 2000 Serverissä ja Exchange Server 2003:ssa

Oire
Kun yrität lähettää sähköpostiviestin Microsoft Exchange 2000 Serverissä tai Microsoft Exchange Server 2003:ssa, lähettäminen ei onnistu. Lisäksi näyttöön saattaa tulla jokin seuraavankaltaisista virhesanomista tai toimituksen epäonnistumisraporteista.

Virhesanomat

  • Käyttö estetty
  • Käyttöoikeutesi eivät riitä tämän toiminnon toteuttamiseen valitulle objektille. Saat lisätietoja kansion vastuuhenkilöltä tai järjestelmänvalvojalta.
  • Luetteloimattoman viestin virhe
  • MAPI_E_NO_ACCESS -2147024891
  • Viestin lähettäminen käyttäjälle KÄYTTÄJÄNIMI (HRESULT:-2147024891) epäonnistui. Keskeytetään käyttäjä KÄYTTÄJÄNIMI. (Suojausvirhe - Käyttäjän postilaatikkoa ei voi käyttää.)
  • Resurssia ei löydy
Huomautus Näyttöön tulee Outlook Web Accessin Käyttö estetty- tai Resurssia ei löydy -virhesanoma, kun olet kirjautuneena edustajan tilillä.

Toimituksen epäonnistumisraportit

  • Et saa lähettää sähköpostia tälle vastaanottajalle. Pyydä apua järjestelmänvalvojalta.
  • Viestiä ei voi lähettää postilaatikkosi avulla. Sinulla ei ole viestien lähetysoikeutta määritetyn käyttäjän puolesta.
Tämän ongelman tiedetään vaikuttavan seuraaviin kolmannen osapuolen tuotteisiin:
  • Research In Motion (RIM) BlackBerry Enterprise Server (BES)
  • Good Technology GoodLink Wireless Messaging
On vahvistettu, että tämä ongelma ei kuitenkaan vaikuta seuraaviin kolmannen osapuolen tuotteisiin.
  • Cisco Unity Unified Messaging
  • Quest Migration Suite for Exchange
  • The Microsoft ExMerge utility for Exchange
Tämä ongelma saattaa myös vaikuttaa mukautettuihin MAPI- tai CDO (Collaborative Data Objects) -pohjaisiin ohjelmiin, jotka lähettävät sähköpostiviestejä.

Tämä saattaa myös vaikuttaa muihin kolmannen osapuolen tuotteisiin, jotka käyttävät palvelutilejä sähköpostiviestien lähettämiseen. Jos käytät kolmannen osapuolen tuotetta, johon tämä ongelma vaikuttaa, Microsoft suosittelee, että otat yhteyttä tuotteen valmistajaan tämän ongelman ratkaisemiseksi. Lisätietoja tästä on Lisätietoja-osassa.

Tärkeää Voit myöntää toisena käyttäjänä lähettämisen oikeuden nopeana toimenpiteenä palvelutilille Active Directory -säilön perimisen avulla tai jopa koko toimialueelle, jos sinun on palautettava toisena käyttäjänä lähettämisen oikeuden toiminnot liiketoiminnan kannalta tärkeille sovelluksille. Tämän tekemisestä on yksityiskohtaiset ohjeet Toisena käyttäjänä lähettämisen oikeuden myöntäminen useille tileille -osassa. Vaikka tämä on tehokas tapa ratkaista ongelma heti, sillä on tietoturvaan ja hallintaan vaikutuksia, jotka sinun tulee ottaa huomioon. Tämän tekeminen saattaa myöntää toisena käyttäjänä lähettämisen oikeuden tileille, joille et tarkoita myöntää sitä. Lisäksi sinun on otettava tämä oikeus huomioon, jos siirrät käyttäjätilit eri säilöön.
Syy
Tämä ongelma saattaa ilmetä, jos jokin seuraavista ehdoista toteutuu:
  • Sinulla ei ole oikeuksia lähettää sähköpostiviestejä postilaatikon omistajana tilillä, jota käytät sähköpostiviestin lähettämiseen.
  • Käytössäsi on Microsoft Exchange 2000 Server Service Pack 3 (SP3), jonka Store.exe-tiedoston versio on vähintään 6619.4. Versio 6619.4 oli ensi kerran saatavana seuraavassa Microsoftin Knowledge Base -tietokannan artikkelissa:
    915358 Exchange 2000 Serverin postilaatikon täysien käyttöoikeuksien toimintaa muuttava korjaus on saatavana
  • Käytössäsi on Microsoft Exchange Server 2003 Service Pack 1 (SP1), jonka Store.exe-tiedoston versio on vähintään 7233.51. Versio 7233.51 oli ensi kerran saatavana seuraavassa Microsoftin Knowledge Base -tietokannan artikkelissa:
    895949 Exchange 2003:n toisena käyttäjänä lähettämisen oikeuden toiminnan muutos
    Huomaa, että tämä korjaus ei sisälly Microsoft Exchange 2003 Service Pack 2:een (SP2). Jos olet asentanut tämän hotfix-korjauksen Exchange Server 2003 SP1 -version, sinun on asennettava Service Pack 2 -versio Service Pack 2:ksi päivittämisen jälkeen.
  • Käytössäsi on Exchange Server 2003 SP2, jonka Store.exe-tiedoston versio on vähintään 7650.23. Versio 7650.23 oli ensi kerran saatavana seuraavassa Microsoftin Knowledge Base -tietokannan artikkelissa:
    895949 Exchange 2003:n toisena käyttäjänä lähettämisen oikeuden toiminnan muutos
    Huomautus Tämä muutos ei sisälly Exchange 2000 Server SP3:een, Exchange Server 2003 SP1:een tai Exchange 2003 SP2:een. Muutos toteutettiin kaikkien näiden Service Pack -pakettien julkaisemisen jälkeen, mutta kaikki ne tukevat sitä. Muutos tulee sisältymään näiden tuotteiden tuleviin Service Pack -päivityksiin.

    Jos asennat Exchange Server 2003 SP2:n, sinun on asennettava lisäpäivitys, jotta uusi toiminta säilytetään, vaikka olisit jo asentanut päivityksen Exchange Server 2003 SP1 -version.
Ratkaisu
Ennen ongelman syytä käsittelevässä osassa lueteltuja Store.exe-tiedoston versioita postilaatikon täysien käyttöoikeuksien myöntäminen myönsi implisiittisesti oikeudet lähettää viestejä postilaatikon omistajana. Tämä tarkoitti sitä, että toinen tili, jolla on postilaatikon täydet käyttöoikeudet, pystyi lähettämään sähköpostiviestejä, jotka näyttivät postilaatikon omistajan lähettämiltä.

Monet Microsoft Exchange -asiakkaat ovat pyytäneet, että toisena käyttäjänä lähettämisen oikeus erotetaan postilaatikon täysistä käyttöoikeuksista seuraavien kahden syyn vuoksi:
  • sähköpostiviestien avulla tehtävien tekeytymishyökkäysten estämiseksi
  • sen varmistamiseksi, että edustajan lähettämät sähköpostiviestit voidaan aina selvästi erottaa postilaatikon todellisen omistajan lähettämistä sähköpostiviesteistä.
Kaikki Exchange-tietosäilöpalvelun uudet versiot edellyttävät nyt eksplisiittisesti toisena käyttäjänä lähettämisen oikeuden, jotta sähköpostiviestejä voidaan lähettää postilaatikon omistajana. Seuraavassa on kuitenkin kolme poikkeusta tähän edellytykseen:
  • Postilaatikon omistajan tili ei tarvitse omaan postilaatikkoonsa eksplisiittistä toisena käyttäjänä lähettämisen oikeutta.
  • Postilaatikkoon liittyvä ulkoinen tili ei tarvitse eksplisiittistä toisena käyttäjänä lähettämisen oikeutta.
  • Edustajan tili, jolla on myös postilaatikon täydet käyttöoikeudet, ei tarvitse eksplisiittistä toisena käyttäjänä lähettämisen oikeutta.
Lisätietoja näistä poikkeuksista on Lisätietoja-osassa.

Kaikille muille tileille, joille myönnetään postilaatikon osittaiset tai täydet käyttöoikeudet, on nyt myönnettävä eksplisiittisesti toisena käyttäjänä lähettämisen käyttöoikeus, jotta tilit voivat lähettää sähköpostiviestejä postilaatikon omistajana. Tämä koskee myös sovelluspalvelutilejä, jotka tekevät kannettavien laitteiden käyttäjien puolesta toimintoja, kuten lähettävät sähköpostiviestejä.

Toisena käyttäjänä lähettämisen oikeus on myönnettävä kunkin postilaatikon omistavan käyttäjäobjektin palvelutilille. Et pysty myöntämään toisena käyttäjänä lähettämisen oikeutta Exchange-palvelimelle tai tietokantaobjektille niin, että tietokannan kaikille postilaatikoille myönnetään viestien toisena käyttäjänä lähettämisen oikeudet.

Tämä aiheutuu siitä, että toisena käyttäjänä lähettämisen oikeus on Active Directory -oikeus, joka koskee niitä Active Directory -objekteja, joille se on määritetty. Toisena käyttäjänä lähettämisen oikeuden myöntäminen Exchange-tietokantaobjektille antaa kyseisen oikeuden itse tietokannalle. Se ei kuitenkaan anna toisena käyttäjänä lähettämisen oikeutta käyttäjille, joilla on postilaatikot tietokannassa.

Huomautus Toisena käyttäjänä vastaanottamisen oikeuden myöntäminen Exchange-tietokannalle vastaa postilaatikon täysien käyttöoikeuksien myöntämistä kaikille tietokannan postilaatikoille. Tämä eroaa toisena käyttäjänä lähettämisen oikeuden toiminnasta.

Toisena käyttäjänä lähettämisen oikeus koskee vain itse tietokantaobjektia. Se ei koske tietokannan postilaatikoita. Toisena käyttäjänä vastaanottamisen oikeus vaikuttaa periytyvän kaikkiin tietokannan postilaatikoihin.

Jotta voit ymmärtää näiden kahden käyttöoikeuden eron paremmin, ajattele kaikkia tietokannan postilaatikoita yksittäisen postilaatikon ("tietokanta"postilaatikon) kansioina. Jos sinulla on täydet oikeudet tietokantaan, sinulla on oikeudet käyttää tietokannan koko sisältöä. Tähän sisältöön kuuluvat kaikki postilaatikot.

Toisena käyttäjänä lähettämisen oikeus koskee Active Directory -käyttäjäobjektin tunnistetietoa, eikä tietokantaan tallennettua postilaatikkosisältöä. Kun sähköpostiviestejä lähetetään, ne eivät olet peräisin mistään tietystä postilaatikosta tai tietokannasta vaan käyttäjältä. Käyttäjä voi olla postilaatikon omistaja tai jokin muu tili, jolla on toisena käyttäjänä lähettämisen oikeus.

Jos haluat myöntää eksplisiittisesti toiselle tilille oikeuden lähettää viestejä postilaatikon omistajana, toimi seuraavasti:
  1. Käynnistä Active Directoryn käyttäjät ja tietokoneet -hallintakonsoli.
  2. Varmista, että Näytä-valikon Lisäominaisuudet-vaihtoehto on valittuna. Jos tämä vaihtoehto ei ole valittuna, käyttäjätiliobjektien Suojaus-välilehti ei ole näkyvissä.
  3. Avaa postilaatikon omistavan käyttäjätilin ominaisuudet.
  4. Valitse Suojaus-välilehti.
  5. Jos tili ei jo ole ryhmien tai käyttäjien nimien luettelossa, lisää tili, jolla tulee olla toisena käyttäjänä lähettämisen oikeus tälle käyttäjälle.
  6. Valitse Käyttöoikeudet-ruudussa haluamasi tilin lähettämisen toisena käyttäjänä salliva käyttöoikeus.
  7. Valitse OK.
  8. Käynnistä Microsoft Exchangen tietosäilöpalvelu uudelleen kyseisessä Exchange-palvelimessa.
Huomautus Jos et käynnistä Microsoft Exchangen tietosäilöpalvelua uudelleen, se päivittää käyttöoikeusvälimuistinsa ottaakseen uudet käyttöoikeudet käyttöön seuraavaan rekisterin aliavaimeen määritetyn arvon mukaisesti:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MSExchangeIS\ParametersSystem


Arvon nimi: Mailbox Cache Age Limit
Arvon tyyppi: REG_DWORD
Lukujärjestelmä: Kymmenjärjestelmä
Arvon data: Postilaatikon tietovälimuistin ikärajoitus minuutteina.
Tämän rekisterimerkinnän oletusarvo on 120 minuuttia eli kaksi tuntia. Jos muokkaat tätä rekisterimerkintää, sinun on käynnistettävä Microsoft Exchangen tietosäilöpalvelu uudelleen.

Huomautus Jos määrität aikakatkaisuarvot hyvin pieniksi, palvelimen suorituskyky saattaa heikentyä.

Toisena käyttäjänä lähettämisen oikeuden myöntäminen useille tileille

Tämän artikkelin lopussa on mallikomentosarja, jonka suorittaminen etsii Active Directory -hakemistopalvelun toimialueelta postilaatikon täydet oikeudet ilman postilaatikon toisena käyttäjänä lähettämisen oikeutta omistavia tilejä. Tämä tietoturvamuutos vaikuttaa tällaisiin palvelun tai resurssin tileihin. Komentosarja voi luoda vientitiedoston, jota voit tarkastella ja muokata. Voit tuoda tiedoston uudelleen, jotta voit myöntää toisen käyttäjän puolesta lähettämisen oikeuden sen tarvitseville tileille.

Voit myös myöntää toisen käyttäjän puolesta lähettämisen oikeuden kaikille Active Directory -toimialueen tai säilön käyttäjäobjekteille perimisen avulla. Jos myönnät toisena käyttäjänä lähettämisen käyttöoikeuden tällä tavalla, saatat myöntää oikeuden myös muille kuin tarkoittamillesi objekteille. Lisäksi säilöstä siirrettyjen objektien oikeudet saatetaan menettää. Tämän vuoksi tätä tapaa ei suositella, ja sillä saattaa olla tietoturvaan vaikutuksia, joita on harkittava tarkasti ennen tavan käyttämistä.

Voit myöntää toisena käyttäjänä lähettämisen oikeuden yksittäiselle tilille kaikissa Active Directory -toimialueen tai -säilön käyttäjätileissä seuraavasti:
  1. Käynnistä Active Directoryn käyttäjät ja tietokoneet -hallintakonsoli.
  2. Varmista, että Näytä-valikon Lisäominaisuudet-vaihtoehto on valittuna. Jos tämä vaihtoehto ei ole valittuna, toimialue- ja säilöobjektien Suojaus-välilehti ei ole näkyvissä.
  3. Avaa toimialueen tai säilön ominaisuudet ja valitse sitten Suojaus-välilehti.
  4. Valitse Lisäasetukset.
  5. Jos oikeuden tarvitseva tili ei jo ole luettelossa, valitse Lisää ja valitse tili sitten. Muokkaa tiliä muussa tapauksessa kaksoisnapsauttamalla sitä.
  6. Valitse Käytä-luettelossa Käyttäjäobjektit.
  7. Myönnä tilille toisena käyttäjänä lähettämisen oikeus.
  8. Valitse OK, kunnes olet poistunut ja sulkenut kaikki muutokset.
Huomautus Tämän artikkelin lopussa kuvattu komentosarja ottaa perityt oikeudet huomioon. Tämän vuoksi, jos myönnät toisena käyttäjänä lähettämisen oikeuden tämän tavan avulla, komentosarja ei havaitse tilejä, jotka ovat perineet toisena käyttäjän lähettämisen oikeuden. Jotta voit käsitellä kyseiset tilit myöhemmin komentosarjan avulla, sinun on ensin poistettava peritty toisena käyttäjänä lähettämisen oikeus.

AdminSDHolder-suojattujen tilien erikoissäännöt

Jos myönnät komentosarjan avulla toisena käyttäjänä lähettämisen oikeuden postilaatikon omistajalle, joka on myös toimialueen järjestelmänvalvoja, kyseinen oikeus ei toimi. Microsoft suosittelee, että et määritä postilaatikkoa käyttäjätileille, joilla on toimialueen järjestelmänvalvojan oikeudet tai jotka on adminSDHolder-suojattuja.

AdminSDHolder-objekti on malli tileille, joilla on laajat Active Directory -järjestelmänvalvojaoikeudet. Jotta ei-tarkoitettu käyttöoikeuksien laajentaminen estetään, adminSDHolder-objektin avulla suojatuilla tileillä on oltava käyttöoikeudet, jotka vastaavat itse adminSDHolder-objektissa lueteltuja oikeuksia.

Jos muutat suojatun tilin adminSDHolder-objektin oikeudet, taustalla suoritettava tehtävä kumoaa muutoksen muutaman minuutin kuluessa. Jos esimerkiksi myönnät viestin toisena käyttäjänä lähettämisen oikeuden sovelluspalvelutilin toimialueen järjestelmänvalvojaobjektille, taustalla suoritettava tehtävä poistaa oikeuden automaattisesti.

Tämän vuoksi et pysty myöntämään viestin toisena käyttäjänä lähettämisen oikeutta adminSDHolder-objektilla suojatulle sovelluspalvelutilille, ellet muuta itse adminSDHolder-objektia. Jos muutat adminSDHolder-objektia, kaikkien suojattujen tilien käyttöoikeudet muutetaan. Sinun tulee muuttaa adminSDHolder-objektia vasta sitten, kun olet huolellisesti harkinnut sen vaikutuksia tietoturvaan.

Voit liittää postilaatikon adminSDHolder-objektin avulla suojattuun tiliin seuraavasti:
  1. Käynnistä Active Directoryn käyttäjät ja tietokoneet -hallintakonsoli.
  2. Varmista, että Näytä-valikon Lisäominaisuudet-vaihtoehto on valittuna. Jos tämä vaihtoehto ei ole valittuna, käyttäjätiliobjektien Suojaus-välilehti ei ole näkyvissä.
  3. Luo postilaatikon omistajana toimiva tavallinen käyttäjätili.
  4. Määritä tavalliselle käyttäjätilille postilaatikko Exchange-palvelimessa.
  5. Avaa uuden postilaatikon omistajatilin ominaisuudet.
  6. Myönnä Exchangen lisäasetusten ruudussa suojatulle järjestelmänvalvojatilille postilaatikon täydet käyttöoikeudet.
  7. Myönnä suojatulle järjestelmänvalvojatilille Suojaus-välilehdessä viestin toisena käyttäjänä lähettämisen oikeus.
  8. Sulje postilaatikon omistajan objektin ominaisuudet valitsemalla OK.
  9. Napsauta postilaatikon omistajatiliobjektia hiiren kakkospainikkeella ja poista sitten tiliin kirjautuminen käytöstä valitsemalla tilin käytöstä poistamisen vaihtoehto.
Saat lisätietoja adminSDHolder-suojatuista tileistä napsauttamalla seuraavia artikkelien numeroita, jolloin pääset lukemaan artikkelit Microsoft Knowledge Base -tietokannassa:
907434 Toisena käyttäjänä lähettämisen oikeus poistetaan käyttäjäobjektilta sen jälkeen, kun kyseinen oikeus on määritetty Exchange Serverin Active Directoryn käyttäjät ja tietokoneet -laajennuksessa (tämä artikkeli saattaa olla englanninkielinen)
318180 AdminSDHolder-säie vaikuttaa jakeluryhmien transitiivisiin jäseniin (tämä artikkeli saattaa olla englanninkielinen)
817433 Delegoidut oikeudet eivät ole käytettävissä ja periminen poistetaan käytöstä automaattisesti (tämä artikkeli saattaa olla englanninkielinen)
306398 AdminSDHolder-objekti vaikuttaa entisten järjestelmänvalvojatilien hallinnan delegointiin (tämä artikkeli saattaa olla englanninkielinen)

Erityisiä tehtäviä BlackBerry Enterprise Serverille

Tehtävä 1: Varmista, että BlackBerry Enterprise Server suoritetaan erillisenä ja yksilöllisenä tilinä

Varmista, että BlackBerry Enterprise Server suoritetaan erillisenä tilinä, joka on erityisesti luotu hallintatehtäviä varten. Oletusarvon mukaan tämän tilin nimi on BESAdmin.

Jos käytössäsi on erillinen tili BlackBerry Enterprise Serverin hallintaa varten, siirry tehtävään 2.

Jos erillistä tiliä ei ole, luo sellainen. Käytä sen jälkeen kyseistä tiliä hallintatehtävien tekemiseen. Ohjeet tämän tekemisestä saat käymällä jossakin seuraavista BlackBerryn verkkosivustoista sen mukaan, mitä BlackBerry Enterprise Serverin versiota käytät.

Jos käytössäsi on BlackBerry Enterprise Server 4.0 tai BlackBerry Enterprise Server 4.1, käy seuraavassa BlackBerryn verkkosivustossa: Jos käytössäsi on BlackBerry Enterprise Server 3.6, käy seuraavassa BlackBerryn verkkosivustossa:

Tehtävä 2: Varmista, että BlackBerry Enterprise Server -palvelutilillä on oikeat käyttöoikeudet

Varmista, että BlackBerry Enterprise Server -palvelutilillä on oikeat käyttöoikeudet.

Huomautus Jos tili sijaitsee toimialueella, varmista, että tili on vain Toimialuekäyttäjät-ryhmän jäsen. Tilin tulee olla Sisäiset järjestelmänvalvojat -ryhmän jäsen toimialueen ohjauskoneessa.
  1. Toimi BlackBerry Enterprise Serverissä seuraavasti:
    1. Varmista, että tili on Local Administrators Group -ryhmän jäsen.
    2. Määritä tilille Log on Locally- ja Log on as a Service -oikeudet.
  2. Myönnä Exchange View-Only Administrator -oikeudet järjestelmänvalvojaryhmän tasolla. Voit tehdä tämän seuraavasti:
    1. Napsauta Exchange System Managerissa hiiren kakkospainikkeella ensimmäistä Exchange Serverin järjestelmänvalvojaryhmän nimeä ja valitse sitten Delegate Control.
    2. Huomaa, että BlackBerry Enterprise Server -palvelutilillä on luettelossa Exchange View-Only Administrator -rooli.
  3. Myönnä kullekin Exchange Server -palvelimelle Send As-, Receive As- ja Administer Information Store -oikeudet palvelimen tasolla. Voit tehdä tämän seuraavasti:
    1. Napsauta Exchange System Managerissa hiiren kakkospainikkeella ensimmäistä Exchange Serverin järjestelmänvalvojaryhmän nimeä ja laajenna sitten Servers-ryhmä.
    2. Napsauta Exchange Server -palvelinta hiiren kakkospainikkeella, valitse Properties ja valitse sitten Security.
    3. Valitse BlackBerry Enterprise Server -palvelintili ylimmässä ruudussa. Varmista alimmassa ruudussa, että Send As-, Receive As- ja Administer Information Store -oikeuksien asetus on Allow.
    4. Toista vaiheet 3b ja 3c kullekin Exchange Server -palvelimelle.
  4. Myönnä postilaatikkosäilölle Send As-, Receive As- ja Administer Information Store -oikeudet. Voit tehdä tämän seuraavasti:
    1. Napsauta Exchange System Managerissa hiiren kakkospainikkeella ensimmäistä Exchangen järjestelmänvalvojaryhmän nimeä ja laajenna sitten Servers-ryhmä.
    2. Laajenna ensimmäinen postilaatikkosäilöryhmä, napsauta kutakin postilaatikkosäilöä hiiren kakkospainikkeella, valitse Properties ja valitse sitten Security.
    3. Valitse BlackBerry Enterprise Server -palvelintili ylimmässä ruudussa. Varmista alimmassa ruudussa, että Send As-, Receive As- ja Administer Information Store -oikeuksien asetus on Allow.
    4. Toista vaiheet 4b ja 4c kunkin Exchange Server -palvelimen kaikille postilaatikkosäilöille.
  5. Toimi Active Directoryn käyttäjät ja tietokoneet -laajennuksessa seuraavasti:
    1. Napsauta hiiren kakkospainikkeella käyttäjää, jolle haluat lisätä oikeuksia, ja valitse sitten Ominaisuudet.
    2. Lisää Security-välilehdessä BlackBerry Enterprise Server -palvelutili ja valitse sitten Send As -valintaruutu.
Jos käytössäsi ei ole Exchange Server 2003 -palvelinta, katso tehtävä 3.

Tehtävä 3: Tyhjennä BlackBerry Enterprise Serverin välimuisti

Jos haluat tyhjentää tietosäilön käyttöoikeusvälimuistin, käynnistä Blackberry-palvelut ja Microsoft Exchangen tietosäilö uudelleen. Kun käynnistät tietosäilön uudelleen, sinun on käynnistettävä RIM Blackberry -palvelut uudelleen, jotta BESAdmin-tilille annetaan juuri lisätty toisena käyttäjän lähettämisen oikeus Exchangen tietosäilöön.

Lisäteitoja Blackberry-palvelimen tarkoista vaatimuksista on seuraavassa BlackBerryn verkkosivustossa:
Enemmän tietoa
Exchange-postilaatikon ja -kansion käyttöoikeudet on jaettu Active Directory- ja Microsoft Exchange -tietokantojen kesken. Nämä molemmat käyttöoikeuslajit määritetään kuitenkin Active Directory -käyttäjien hallintakonsolissa, mutta eri oikeudet tallennetaan kahteen erilliseen sijaintiin.

Jos käyttöoikeus määritetään objektin Suojaus-välilehdessä, kyseessä on yleensä Active Directory -oikeus. Jos se määritetään Exchangen postilaatikon lisäoikeuksien sivulla, se on Exchange-tietokannan käyttöoikeus. Tämän vuoksi näyttöön tulee seuraavankaltainen virhesanoma, jos yrität käyttää postilaatikon oikeuksien sivua, kun käyttäjän tietokanta ei ole käytettävissä:
Microsoftin tietosäilöpalvelu ei ole käytettävissä.
Liittyvän ulkoisen tilin oikeus on poikkeus sääntöön, että Exchangen postilaatikon lisäoikeuksien avulla määritetyt oikeudet tallennetaan Exchange-tietokantaan. Liittyvän ulkoisen tilin oikeus ei edes ole todellinen oikeus, vaan tapa asettaa Active Directory -määrite msExchMasterAccountSID. Tämä msExchMasterAccountSID-määrite ei ole oikeus, mutta se ohjaa muiden oikeuksien toimintaa. Lisätietoja msExchMasterAccountSID-määritteestä on Liittyvät ulkoiset tilit -osassa.

Huomautus Active Directoryn msExchMailboxSecurityDescriptor-määrite on varmuuskopio käytössä olevien postilaatikon oikeuksien alijoukosta. Exchange käyttää sitä sisäisesti useisiin tarkoituksiin. Lisäksi msExchMailboxSecurityDescriptor-määrite päivitetään vastaamaan käytössä parhaillaan olevia oikeuksia, jos järjestelmänvalvojat käyttävät tuettuja liittymiä oikeuksien määrittämiseen.

Jos järjestelmänvalvoja kuitenkin muokkaa msExchMailboxSecurityDescriptor-määritettä suoraan, muutoksia ei oteta käyttöön Exchange-säilöön, eivätkä muutokset tule voimaan. Sen synkronointia postilaatikon todellisten oikeuksien kanssa ei taata. Älä käytä msExchMailboxSecurityDescriptor -määritettä postilaatikon oikeuksien lukemiseen tai kirjoittamiseen.

Saat lisätietoja napsauttamalla seuraavaa artikkelin numeroa, jolloin pääset lukemaan artikkelin Microsoft Knowledge Base -tietokannassa:
310866 Exchange Server 2003:n ja Exchange 2000 Serverin postilaatikko-oikeuksien määrittäminen tietosäilössä olevalle postilaatikolle (tämä artikkeli saattaa olla englanninkielinen)

Postilaatikon täydet käyttöoikeudet ovat Exchange-tietokantasäilön oikeudet. Toisena käyttäjänä lähettämisen oikeus on Active Directoryn oikeus. Ennen tässä artikkelissa kuvattuja Exchangen Store.exe-tiedoston muutoksia Exchange-järjestelmä ei tarkistanut toisena käyttäjänä lähettämisen oikeutta, jos lähettäjällä jo oli postilaatikon täydet käyttöoikeudet.

Huomautus Voit myöntää toisena käyttäjänä lähettämisen oikeuden myöntämättä postilaatikon täysiä käyttöoikeuksia. Näissä tilanteissa Exchange on aina tarkistanut toisena käyttäjänä lähettämisen oikeuden.

Toisena käyttäjän lähettämisen oikeuden sisältyminen postilaatikon täysiin käyttöoikeuksiin on sallinut Exchange-palvelinten järjestelmänvalvojien myöntää itselleen toisena käyttäjänä lähettämisen oikeudet mihin tahansa hallitsemansa palvelimen postilaatikkoon. Järjestelmänvalvojat voivat tehdä tämän toimen, koska he hallitsevat Exchange-tietokantaa täysin. Kun toisena käyttäjänä lähettämisen oikeus erotetaan postilaatikon täysistä käyttöoikeuksista, Active Directory -järjestelmänvalvojat pystyvät nyt estämään tämän prosessin, koska toisena käyttäjänä lähettämisen oikeus on Active Directory -oikeus eikä Exchange-säilön oikeus. Tämän vuoksi Exchange-järjestelmänvalvojat eivät välttämättä hallitse sitä.

Postilaatikon omistajat

Postilaatikon omistaja on Active Directory -käyttäjätili, jonka msExchMailboxGUID-määritteessä on tietyn postilaatikon GUID (Globally Unique numeric Identifier) -tunnus. Vain yhdellä tilillä koko toimialuepuuryhmässä voi olla tietyn postilaatikon GUID-tunnus. Jos yrität määrittää toiselle omistajalle saman GUID-tunnuksen, Active Directory hylkää muutoksen ja tuo näyttöön virhesanoman.

Kun määrität postilaatikon tilille tai yhdistät katkaistun postilaatikon Active Directory -tilille, postilaatikon GUID-tunnus määritetään kyseiselle tilille automaattisesti. Järjestelmänvalvojat joutuvat määrittämään postilaatikkojen GUID-tunnukset suoraan vain harvoin, eikä sitä suositella.

Liittyvät ulkoiset tilit

Yleinen Exchange-kokoonpano on asentaa Exchange toimialuepuuryhmäresurssiin. Toimialuepuuryhmäresurssi on toimialuepuuryhmä, joka sijaitsee eri toimialuepuuryhmässä kuin ne käyttäjätilit, joilla on postilaatikot järjestelmässä. Tämä aiheuttaa ongelman, koska msExchMailboxGUID-määrite voidaan määrittää vain objekteille, jotka ovat samassa toimialuepuuryhmässä kuin Exchange-palvelin.

Tämän ongelman ratkaisu on määrittää postilaatikko tilille Exchange-palvelimen toimialuepuuryhmässä ja linkittää kyseinen postilaatikon omistava tili sitten tiliin toisessa toimialuepuuryhmässä tai Microsoft Windows NT 4 -toimialueessa. Voit tehdä tämän myöntämällä liittyvän ulkoisen tilin käyttöoikeuden. Liittyvän ulkoisen tilin oikeus voidaan myöntää vain yksittäiselle tilille. Valitun tilin on sijaittava eri toimialuepuuryhmässä.

Kun määrität liittyvän ulkoisen tilin oikeuden, kirjoitat ulkoisen tilin SID-arvon postilaatikon omistajan msExchMasterAccountSID-määritteeseen. Tämän vuoksi tämä ei ole käyttöoikeus, vaan kätevä tapa hallita msExchMasterAccountSID-määritteen arvoa. Kun msExchMasterAccountSID-määrite on määritetty, SID-tunnuksen omistavalle ulkoiselle tilille myönnetään Exchange-oikeudet samaan tapaan kuin jos se olisi todellinen postilaatikon omistajatili.

Huomaa, että tämä koskee vain Exchangen käyttöä eikä kaikkia Active Directoryn käyttöjä. Lisäksi sinun tulee merkitä postilaatikon omistajatili käytöstä poistetuksi kirjautumisille sen jälkeen, kun olet määrittänyt liittyvän ulkoisen tilin oikeuden, jotta kaikki oikeudet toimivat odotetusti.
300456 Asiakaskäyttöoikeudet ja -delegoinnit eivät säily Exchange 2000:ssa määrittämisen jälkeen (tämä artikkeli saattaa olla englanninkielinen)

Delegointiskenaariot

Edustaja on käyttäjä, jolle on määritetty (delegoitu) osittainen käyttöoikeus toiseen postilaatikkoon ja oikeus lähettää sähköpostiviestejä postilaatikon omistajan puolesta. Yleinen delegointiskenaario on delegoida sihteerille käyttöoikeus johtajan kalenteriin. Edustaja voi yleensä lukea kalenteria ja päivittää sen. Lisäksi edustajana toimiva sihteeri pystyy vastaamaan sähköpostiviesteihin johtajan puolesta.

Edustajan käyttöoikeudet myönnetään lisäämällä edustaja postilaatikon omistajan useita arvoja sisältävään publicDelegates-määritteeseen. Kaikki tässä määritteessä luetelluilla käyttäjillä on postilaatikon omistajan puolesta lähettämisen oikeus. Kun tällainen edustaja lähettää sähköpostiviestin, jonka Lähettäjä-ruudussa on omistajan nimi, sähköpostin Lähettäjä-ruudussa näkyy seuraavankaltainen teksti:
<Edustajan nimi> edustaa käyttäjää <Postilaatikon omistaja>
Sähköpostiviesti kuitenkin lähetetään edustajalta eikä postilaatikon omistajalta tai postilaatikon omistajana.

Seuraavassa on lueteltu kaksi liittymää, joiden avulla voit myöntää käyttäjän puolesta lähettämisen ja edustajan käyttöoikeudet:
  • Myönnä postilaatikon omistajaobjektille puolesta lähettämisen oikeus Exchangen yleisten asetusten valintaikkunassa.
  • Käytä Microsoft Outlookissa Edustajat-valintaikkunaa.
Molemmat nämä tavat määrittävät publicDelegates-määritteen. Outlookin käyttäminen kuitenkin mahdollistaa myös erityisten kansion käyttöoikeuksien myöntämisen edustajalle. Voit myös myöntää käyttöoikeudet suoraan edustajalle Outlookissa yksittäisen kansion ominaisuuksissa.

Joissakin tapauksissa et välttämättä pysty määrittämään publicDelegates-määritettä Outlookissa.
329622 Käyttäjän puolesta lähettämisen käyttöoikeutta ei määritetä käyttäjälle käytön delegoimisen jälkeen Outlookissa (tämä artikkeli saattaa olla englanninkielinen)

Jos myönnät edustajalle käyttöoikeuden postilaatikkoosi, hän pystyy käyttämään käyttäjän puolesta lähettämisen oikeutta, vaikka et myöntäisi oikeutta mihinkään postilaatikkokansioosi. Edustajan perusoikeus on toisen käyttäjän puolesta lähettämisen oikeus. Postilaatikkosi kansioiden käyttöoikeudet ovat erilliset oikeudet, ja ne on myönnettävä edustajaoikeuksien lisäksi.

Yleensä edustajat käyttävät Microsoft Outlookia sellaisten yksittäisten kansioiden käyttämiseen, joille olet antanut oikeudet. Voit tehdä tämän valitsemalla Outlookin Tiedosto-valikosta Avaa ja valitsemalla sitten Muun käyttäjän kansio.

Lisäksi edustajat pystyvät avaamaan postilaatikkonsa määrittämällä sen lisäpostilaatikoksi Outlook-profiiliensa Lisäasetukset-välilehdessä. Tämän tavan käyttäminen lisää postilaatikkosi edustajan Outlook-kansiopuuhun. Lisäksi se mahdollistaa kaikkien niiden postilaatikkosi kansioiden käyttämisen, joihin edustajalle on myönnetty oikeudet.

Toisinaan saatat haluta edustajallasi olevan käyttäjän puolesta lähettämisen oikeus ja toisinaan toisena käyttäjänä lähettämisen oikeus. Voit määrittää edustajalle nämä kaksi oikeutta seuraavasti:
  • Myönnä edustajalle postilaatikon täydet käyttöoikeudet. Tätä ei voit tehdä Outlookin avulla. Active Directory -järjestelmänvalvojan on tehtävä tämä postilaatikon omistajatilille. Vaikka myöntäisit omistajan oikeudet kaikille postilaatikkosi kansioille, se ei ole sama kuin postilaatikon täydet käyttöoikeudet.
  • Älä myönnä edustajalle toisena käyttäjänä lähettämisen oikeutta. Jos myönnät edustajalle toisena käyttäjänä lähettämisen oikeuden, kaikki edustajan lähettämät sähköpostiviestit lähetetään käyttäen toisena käyttäjänä lähettämisen oikeutta. Edustaja ei enää pysty käyttämään käyttäjän puolesta lähettämisen oikeutta.
Tässä skenaariossa edustajien, jotka haluavat käyttää käyttäjän puolesta lähettämisen oikeutta, tulee kirjautua omiin postilaatikoihinsa. Jos edustajat vastaavat jossakin kansiossasi jo olevaan sähköpostiviestiin tai välittävät sen, kyseinen sähköpostiviesti lähetetään automaattisesti puolestasi. Jos edustajat luovat uuden sähköpostiviestin puolestasi, heidän on kirjoitettava nimesi Lähettäjä-ruutuun, jotta sähköpostiviesti lähetetään puolestasi.

Riippumatta siitä, ovatko edustajat avanneet kansiosi tai koko postilaatikkosi toissijaisena postilaatikkona, kaikki heidän sinulta lähettämänsä sähköpostiviestit käyttävät käyttäjän puolesta lähettämisen oikeutta niin kauan, kun heidän oma postilaatikkonsa on nykyisen Outlook-profiilin ensisijainen postilaatikko.

Kun edustajat haluavat lähettää sähköpostiviestin sinuna, heidän tulee kirjautua postilaatikkoosi käyttäen erillistä Outlook-profiilia, joka avaa vain postilaatikkosi. Sähköpostiviestit, jotka edustajat lähettävät tähän profiiliin kirjautuneena, lähetetään automaattisesti sinulta.

Sellaisten tilien löytäminen, joilla on postilaatikon täydet oikeudet ilman toisena käyttäjänä lähettämisen oikeutta

Tässä osassa kuvatun mallikomentosarjan suorittaminen pystyy etsimään yhdestä Active Directory -toimialueesta kerrallaan sellaisia käyttäjätilejä, joiden postilaatikoille on myönnetty postilaatikon täydet käyttöoikeudet ilman toisena käyttäjänä lähettämisen oikeutta.

Tärkeää Lue Tietoja postilaatikoiden omistajista, joilla on edustajia -osa ennen oikeuksien muuttamista.

Komentosarjassa on seuraavat kolme tilaa:
  • Export (vieminen): Voit tulostaa luettelon käyttäjistä, joilla on postilaatikon täydet käyttöoikeudet mutta ei toisena käyttäjänä lähettämisen oikeutta. Tämän jälkeen voit tarkastella tätä luetteloa Muistiossa tai jossakin muussa editorissa ja poistaa ne tilit, joille et halua määrittää toisena käyttäjänä lähettämisen oikeutta.
  • Import (tuominen): Voit tuoda luettelon käyttäjistä, joilla on postilaatikon täydet käyttöoikeudet ja joille tulee määrittää myös toisena käyttäjänä lähettämisen oikeus. Huomaa, että et tämän komentosarjan avulla pysty myöntämään sekä postilaatikon täysiä käyttöoikeuksia että toisena käyttäjänä lähettämisen oikeutta. Kullakin tilillä on jo oltava postilaatikon täydet käyttöoikeudet, jotta toisena käyttäjänä lähettämisen oikeus voidaan myöntää.
  • SetAll (määritä kaikki): Voit määrittää toisena käyttäjänä lähettämisen oikeuden kaikille toimialueen käyttäjille, joilla jo on postilaatikon täydet käyttöoikeudet johon tiettyyn postilaatikkoon. Lokitiedosto luodaan samassa muodossa kuin vientitiedosto. Tämä vastaa Export- ja Import-tilojen suorittamista niin, ettei vientitiedostoa muokata.
Huomautus Tässä komentosarjassa ei ole kumoamistoimintoa.

Komentosarjan edellyttämät oikeudet

Sinun on suoritettava komentosarja, kun olet kirjautuneena järjestelmänvalvojan tiliin samassa toimialuepuuryhmässä, josta postilaatikon omistajien tilit ovat peräisin. Komentosarja ei välttämättä toimi sellaisen tilin kanssa, jolla on toimialueiden väliset järjestelmänvalvojan oikeudet. Komentosarja ei välttämättä myöskään toimi, kun suoritat sen työasemasta, joka on liitetty eri toimialuepuuryhmään kuin siihen, johon postilaatikkojen omistajien tilit on liitetty.

Noudattamalla näitä ehtoja voit suorittaa komentosarjan useiden järjestelmänvalvojatilien avulla yksittäisessä kirjautumisistunnossa RunAs.exe-komennon avulla. Tästä saattaa olla hyötyä, jos sinulla on segmentoidut Active Directory- ja Exchange Server -käyttöoikeudet, eikä sinulla ole mitään yksittäistä tiliä, joka pystyy hallitsemaan kaikkia Exchange-palvelimia tai kaikkia Active Directory -toimialueita. Voit avata komentokehotteen ja suorittaa komentosarjan käyttäen kutakin järjestelmänvalvojatiliä. Tarkastele seuraavaa esimerkkiä:
RunAs.exe /user:domain\account CMD.EXE
Huomautus Älä suorita komentosarjasta useita kopioita samanaikaisesti samalle toimialueelle.

Vientitiedoston kentät ovat seuraavat. Kentät on kuvattu siinä järjestyksessä, kun ne ovat vientitiedostossa.
  • Postilaatikon omistajan tilin näyttönimi

    Tulostetiedostossa saattaa olla useita rivejä, joissa on sama postilaatikon omistaja. Näin tapahtuu, kun useilla muilla tileillä on postilaatikon täydet käyttöoikeudet samaan postilaatikkoon.
  • Sen tilin toimialue ja kirjautumisnimi, jolla on postilaatikon täydet käyttöoikeudet mutta ei toisena käyttäjänä lähettämisen oikeutta

    Sama tili saattaa näkyä useita kertoja vientitiedostossa, jos tilillä on useiden postilaatikoiden oikeudet. Näin tapahtuu todennäköisesti, jos kyseessä on sovelluspalvelutili tai henkilö, joka hallitsee useita resurssipostilaatikoita.
  • Sen tilin näyttönimi, jolla on postilaatikon täydet käyttöoikeudet mutta ei toisena käyttäjänä lähettämisen oikeutta

    Tämä kenttä yhdessä kirjautumisnimen kentän kanssa helpottaa tilin tunnistamista.
  • Postilaatikon omistajan edustajien tila

    Jos postilaatikon omistajilla on edustajia, kentän arvo on Has Delegates (Edustajia). Jos postilaatikon omistajilla ei ole edustajia, kentän arvo on No Delegates (Ei edustajia).
  • Postilaatikon omistajan tilin Enabled (Käytössä) tai Disabled (Ei käytössä) -tila

    Tästä kentästä on hyötyä resurssipostilaatikkotilien tai toimialueiden välisten postilaatikkotilien tunnistamisessa. Nämä tilit on yleensä poistettu käytöstä.
  • Postilaatikon omistajatilin täydellinen DN (Distinguished Name) -nimi

    Tästä kentästä on hyötyä postilaatikon omistajatilin toimialueen ja säilön tunnistamisessa.
  • Postilaatikon omistajan postilaatikkotietokannan täydellinen DN (Distinguished Name) -nimi

    Tämä kenttä sisältää postilaatikon tietokannan, säilöryhmän, palvelimen ja hallintaryhmän.
Seuraavassa esimerkissä käyttäjällä, jonka kirjautumisnimi on NoSendAs, on Mailbox Owner -postilaatikon täydet käyttöoikeudet mutta ei toisena käyttäjänä lähettämisen oikeutta:
"""Mailbox Owner""" """Domain\NoSendAs""" """No Send As User""" """Has Delegates""" """Enabled""" [muut kentät jätetty pois]

Komentosarjan järjestelmänvalvojan työaseman kokoonpano

Tämä komentosarja käyttää Exchange-hallintaliittymiä tietoliikenteeseen Exchange-palvelinten kanssa. Tämän vuoksi komentosarja on suoritettava Exchange-palvelimesta tai työasemasta, johon on asennettu Exchange System Administrator.

Vientitiedoston muokkaaminen

Vientitiedosto on muotoiltu Unicode-tekstimuotoon, jotta eri kielten merkistöjä voidaan käyttää. Jotkin tekstieditorit eivät välttämättä pysty tarkastelemaan tai muokkaamaan tiedostoa, tai ne saattavat tallentaa tiedoston ANSI- tai ASCII-tekstinä. Microsoft Windows XP:n, Microsoft Windows 2000:n ja Microsoft Windows 2003:n Muistio-apuohjelma pystyy käsittelemään Unicode-tekstitiedostoja oikein. Lisäksi Microsoft Excel pystyy käsittelemään Unicode-tekstitiedostoja oikein.

Tulostetiedosto on sarkainerotellussa muodossa, ja kunkin kentän arvojen ympärillä on kolminkertaiset lainausmerkit. Kolminkertaisten lainausmerkkien käyttäminen tekee Exceliin tuomisesta ja Excelistä viemisestä selkeämpää. Excelissä kolminkertaisista lainausmerkeistä tulee yksinkertaiset lainausmerkit, ja ne palautetaan takaisin kolminkertaisiksi lainausmerkeiksi, kun tiedosto tallennetaan uudelleen Unicode-tekstinä. Noudata seuraavia ohjeita vientitiedoston oikeasta avaamisesta ja tallentamisesta Excelissä.

Voit myös suodattaa vientitiedoston ilman Exceliä käyttämällä Find.exe- tai Findstr.exe-apuohjelmaa. Näiden Windowsiin sisältyvien apuohjelmien avulla voit etsiä sanoja tiedostosta ja saada tulosteeksi vain määritetyt sanat sisältävät rivit tai vain rivit, jotka eivät sisällä kyseisiä sanoja. Jos esimerkiksi haluat tehdä tiedostoon luettelon kaikista postilaatikon omistajista, joilla on edustajia, käytä jompaakumpaa näistä komennoista ja luo tiedosto, jossa on vain “Has Delegates” -merkkijonon sisältävät rivit:
Find.exe “Has Delegates” OriginalFile.txt > HasDelegates.txt

Findstr.exe /C:”Has Delegates” OriginalFile.txt > HasDelegates.txt
Oletetaan toisena esimerkkinä, että suodatat pois kaikki postilaatikoiden omistajat, joilla on edustajia. Valitsimen /V käyttäminen tulostaa kaikki rivit, joissa etsittäviä sanoja ei ole. Voit käyttää kumpaa tahansa näistä komennoista ja luoda tiedoston, joka jättää kaikki "Has Delegates" -rivit pois:
Find.exe “No Delegates” OriginalFile.txt > NoDelegates.txt

Find.exe /V “Has Delegates” OriginalFile.txt > NoDelegates.txt

Findstr.exe /C:”No Delegates” OriginalFile.txt > NoDelegates.txt

Findstr.exe /V /C:”Has Delegates” OriginalFile.txt > NoDelegates.txt
Voit myös käyttää näitä komentoja sellaisen tiedoston luomiseen, jossa on luettelo kaikista niistä tileistä, joiden sovelluspalvelutilillä on postilaatikon täydet käyttöoikeudet mutta ei toisena käyttäjänä lähettämisen oikeutta. Valitsin /I määrittää, että isot ja pienet kirjaimet tulkitaan samoiksi merkeiksi:
Find.exe /I “domain\ServiceAccount” OriginalFile.txt > ServiceAccount.txt

Findstr.exe /I /C:”domain\ServiceAccount” OriginalFile.txt > ServiceAccount.txt
Huomautus Jos käytät Find.exe-apuohjelmaa suodatetun tiedoston luomiseen, sinun on poistettava Find.exe-apuohjelman tiedoston alkuun luomat otsikkorivit.

Älä käytä yleismerkkejä (*.*) sisältäviä tiedostonimiä Findstr.exe-apuohjelman kanssa. Jos käytät yleismerkkejä, tulostetiedoston kaikkien rivien alussa on tiedostonimi. Tarkastele tulostetiedostoa huolellisesti Find.exe- tai Findstr.exe-apuohjelmalla suodattamisen jälkeen ja varmista, että suodattimesi kaappasi tai jätti pois tarkoittamasi tilit.

Seuraavassa esimerkissä käyttäjällä, jonka kirjautumisnimi on NoSendAs, on Mailbox Owner -postilaatikon täydet käyttöoikeudet mutta ei toisena käyttäjänä lähettämisen oikeutta.
"""Mailbox Owner""" """Domain\NoSendAs""" """No Send As User""" """Has Delegates""" """Enabled""" [muut kentät jätetty pois]  

Tietoja postilaatikoiden omistajista, joilla on edustajia

Edustajalle, jolla on postilaatikon täydet käyttöoikeudet (kutsutaan myös erikoisedustajaksi), tulee yleensä myöntää toisena käyttäjänä lähettämisen oikeus. Kun erikoisedustaja kirjautuu suoraan postilaatikon omistajan postilaatikkoon, hän pystyy lähettämään toisena käyttäjänä. Kun edustaja käyttää Outlookin delegointiominaisuuksia (avattavat lisäpostilaatikot tai muun käyttäjän kansion avaaminen), viestit lähetetään toisen käyttäjän puolesta.

Myönnä toisena käyttäjän lähettämisen oikeus erikoisedustajalle vain, jos haluat hänen lähettävän aina postilaatikon omistajana eikä koskaan postilaatikon omistajan puolesta. Microsoft suosittelee, että etsit vientitiedostosta tekstiä "Has Delegates" ja selvität sitten, ovatko jotkin luetellut erikoisedustajat itse asiassa postilaatikon omistajan edustajia.

Vientitiedostossa on lueteltu vain erikoisedustajat. Tavallisilla edustajilla ei ole postilaatikon täysiä käyttöoikeuksia. Lisäksi, kun myönnät toisena käyttäjänä lähettämisen oikeuden tavalliselle edustajalle, hän lähettää aina postilaatikon omistajana. Näin tapahtuu, vaikka tavallisella edustajalla ei olisi postilaatikon täysiä käyttöoikeuksia. Jos myönnät toisena käyttäjän lähettämisen oikeuden edustajalle vahingossa, voit kumota oikeuden helposti myöhemmin.

Vientitiedoston avaaminen Excelissä

  1. Käynnistä Excel ennen vientitiedoston avaamista.
  2. Avaa tiedosto Excelissä tekstitiedostona. Tämä käynnistää ohjatun tekstin tuomisen.
  3. Muuta seuraavia asetuksia ohjatussa tekstin tuomisessa tai hyväksy ne:
    • Alkuperäinen tietotyyppi: Erotettu
    • Aloita tunti riviltä: 1
    • Tiedoston alkuperä: Unicode (UTF-8)
    • Erottimet: ainoastaan Sarkain
    • Käsittele peräkkäisiä erottimia yhtenä: ei valittu
    • Tekstin tarkenne: " (lainausmerkit)

Vientitiedoston tallentaminen sen jälkeen, kun sitä on muokattu Excelissä

  1. Valitse Tallenna nimellä vientitiedoston ollessa avoinna.
  2. Anna tiedostolle eri tiedostonimi, jotta alkuperäisen tiedoston muokkaamaton versio säilytetään.
  3. Valitse Tiedosto-valikosta Tallenna nimellä, kirjoita tiedostonimi tulostetiedoston tallentamista varten ja valitse sitten avattavasta Tallennusmuoto-luettelosta Unicode-muoto.

Komentosarjan syntaksi

Tämä on tekstitilakomentosarja, ja se tulee suorittaa komentokehoteikkunassa Suorita-valintaikkunan sijaan. Avaa komentokehoteikkuna napsauttamalla Käynnistä-painiketta, valitsemalla Suorita, kirjoittamalla Avaa-ruutuun CMD ja valitsemalla sitten OK.

Virheloki- ja vientitiedostot tallennetaan komentokehotteen nykyiseen kansioon. Sinulla on oltava oikeudet luoda tiedostoja tähän kansioon.
Voit tarkastella komentoriviohjetta kirjoittamalla seuraavan komennon:
CSCRIPT AddSendAs.vbs
Voit viedä käyttäjät, joilla on postilaatikon täydet oikeudet mutta ei toisena käyttäjänä lähettämisen oikeudetta toimialueessa, kirjoittamalla seuraavan komennon:
CSCRIPT AddSendAs.vbs [toimialueen ohjauskoneen nimi] –Export Esimerkki: CSCRIPT AddSendAs.vbs CORP-DC-1 –Export
Vientitiedosto luodaan nimellä Send_As_Export_T_MM_SS.txt.
Voit tuoda muokatun vientitiedoston kirjoittamalla seuraavan komennon:
CSCRIPT AddSendAs.vbs [toimialueen ohjauskoneen nimi] –Import [tiedostonimi] Esimerkki:CSCRIPT AddSendAs.vbs CORP-DC-1 –Import "Send_As_Export_T_MM_SS.txt"

Toisena käyttäjänä lähettämisen oikeuden myöntäminen kullekin toimialueen postilaatikolle kaikille käyttäjille, joilla jo on postilaatikon täydet käyttöoikeudet postilaatikolle

Huomautus Jos sinulla on edustajia, joilla myös on organisaatiossasi postilaatikon täydet käyttöoikeudet, älä käytä SetAll-tilaa. Jos käytät SetAll-tilaa tässä tilanteessa, edustajille myönnetään toisena käyttäjänä lähettämisen oikeus. Tämä saattaa aiheuttaa sen, että kaikki edustajien lähettämät sähköpostiviestit lähetetään käyttäen toisena käyttäjänä lähettämisen oikeutta käyttäjän puolesta lähettämisen oikeuden sijaan. Voit korjata tämän ongelman poistamalla edustajalle virheellisesti myönnetyn toisena käyttäjänä lähettämisen oikeuden.
CSCRIPT AddSendAs.vbs [toimialueen ohjauskoneen nimi] –SetAllEsimerkki:CSCRIPT AddSendAs.vbs CORP-DC-1 –SetAll
Jos käytät SetAll-tilaa, vientitiedosto luodaan nimellä Send_As_Export_T_MM_SS.txt. Sinun tulee tallentaa tämä tiedosto, koska se sisältää tiedot kaikista muutetuista tileistä. Jos suoritat komentosarjan uudelleen, se ei tulosta luetteloa samoista tileistä, koska tileille on jo myönnetty toisena käyttäjänä lähettämisen oikeus.

Komentosarjan suorittamisen aikana ilmenneet virheet tallennetaan Send_As_Errors_T_MM_SS.txt-tiedostoon. Virhetiedoston nimi vastaa liittyvän vientitiedoston tunnit_minuutit_sekunnit-aikaleimaa.

Komentosarjan muokkaukset

Organisaatiossasi saattaa olla tilejä, joilla on oikeudet useisiin objekteihin, mutta et halua muuttaa kyseisiä oikeuksia. Voit pienentää vientitiedoston kokoa suodattamalla nämä tilit muokkaamalla FMA_EXCLUSIVE_LIST-muuttujaa, joka sijaitsee komentosarjan alun lähellä. Oletusarvon mukaan tässä muuttujassa on joidenkin komentosarjatulosteesta pois jätettävien tilien luettelo. Voit lisätä tilejä käyttäen seuraavaa muotoa:
& "<Toimialue\Nimi>" & OUTPUT_DELIMITER
Voit esimerkiksi muuttaa seuraavan muuttujan arvon:
FMA_EXCLUSIVE_LIST = OUTPUT_DELIMITER & "NT AUTHORITY\SELF" & OUTPUT_DELIMITER & "NT AUTHORITY\SYSTEM" & OUTPUT_DELIMITER
Seuraavaksi arvoksi:
FMA_EXCLUSIVE_LIST = OUTPUT_DELIMITER & "NT AUTHORITY\SELF" & OUTPUT_DELIMITER & "NT AUTHORITY\SYSTEM" & OUTPUT_DELIMITER & "OmaToimialue\Palvelu1" & OUTPUT DELIMITER
Tämä muutos jätttää vientitiedostosta pois "OmaToimialue\Palvelu"-tilin sekä "NT AUTHORITY\SELF"- ja "NT AUTHORITY\SYSTEM"-tilit. Huomaa, että Toimialue\Nimi-arvossa isot ja pienet kirjaimet tulkitaan eri merkeiksi ja että sen tulee olla tarkalleen siinä muodossa kuin se näkyisi vientitiedostossa.

On olemassa myös toinen muokattava muuttuja FMA_EXCLUSIVE_EXSVC, jonka oletusarvo on "\Exchange Services" & OUTPUT_DELIMITER. "Exchange Services" on sen tilin nimi, jolle myönnetään oikeudet Active Directory Connectorin kautta Exchange 5.5:n and Exchange 2000:n siirtymis- ja yhteistoimintaskenaarioissa. Tämä tili luodaan useissa toimialueissa, ja se saattaa näkyä toistuvasti viestitiedostossa, jos sen esiintymiä ei jätetä pois.

FMA_EXCLUSIVE_EXSVC-muuttujan arvona voi olla vain yksi tili. Tilin nimessä isot ja pienet kirjaimet tulkitaan samoiksi merkeiksi. Luettelossa olevan tilin nimen on alettava kenoviivalla (\), eikä se saa sisältää toimialuetta, johon se kuuluu. Tili jätetään pois kaikkien niiden toimialueiden osalta, joissa se on.

Jos olet käyttänyt kolmannen osapuolen siirtymistyökaluja tai hakemiston synkronointitapoja, useissa toimialueissa saattaa olla eri tili, jolle on myönnetty laajat käyttöoikeudet käyttäjien postilaatikoihin. Tässä tapauksessa voit korvata "\Exchange Services" -arvon kyseisen tilin nimellä.

Vihjeitä ja riskejä

  • Älä poista komentosarjan luomia loki- ja virhetiedostoja. Niistä saattaa olla myöhemmin hyötyä vianmäärityksessä tai muutosten kumoamisessa. Muista, että heti, kun olet myöntänyt jollekin tilille toisena käyttäjänä lähettämisen oikeuden, tiliä ei enää kirjata vientitiedostoon.
  • Jos jokin Exchange-palvelin tai tietokanta ei ole käytettävissä, komentosarjan suorittaminen hidastuu. Tässä tapauksessa voit lajitella vientitiedoston tietokannan mukaan ja siirtää pysäytettyyn tietokantaan liittyvät rivit eri tiedostoon myöhempää tuontia varten.
  • Komentosarja ei tulosta tilejä, joiden kirjautumisnimi loppuu merkkiin $ tai joiden nimi on NT AUTHORITY\SYSTEM. Näiden järjestelmän alitilien ei yleensä pitäisi tarvita toisena käyttäjänä lähettämisen oikeutta, ja niiden poistaminen vientitiedostosta pienentää tiedoston kokoa huomattavasti.
  • Vientitiedoston on oltava Unicode-muodossa, ennen kuin se voidaan tuoda. Jos olet vahingossa tallentanut tiedoston ANSI-tekstinä, voit korjata ongelman lataamalla tiedoston Muistiossa ja tallentamalla sen Unicode-tekstinä.
  • Jos tuonti ei onnistu, tee vianmääritys testitilien avulla niin, että tuontitiedostossa on vain yksi rivi. Määritä testitili, jolla on postilaatikko käynnissä olevassa Exchange-palvelimessa, ja myönnä toiselle testitilille sitten postilaatikon täydet käyttöoikeudet mutta ei toisena käyttäjänä lähettämisen oikeutta.
  • Tällä komentosarjalla ei ole muutosten kumoamisten tilaa. Jos haluat poistaa tämän komentosarjan avulla myöntämäsi toisena käyttäjänä lähettämisen oikeudet, sinun on luotava toinen komentosarja tai poistettava ne manuaalisesti. Kumoamistilaa ei ole sisällytetty komentosarjaan, jotta komentosarjaa ei voi käyttää kaikkien organisaation käyttäjien toisena käyttäjänä lähettämisen oikeuksien poistamiseen.
  • Komentosarja ei käsittele oikein tiliä, jolle on myönnetty täydet oikeudet käyttäjäobjektiin sekä postilaatikon täydet käyttöoikeudet. Täysiin oikeuksiin kuuluu toisena käyttäjänä lähettämisen oikeus, mutta komentosarja vie tilin kuin sillä ei olisi kyseistä oikeutta. Tämä saattaa kasvattaa vientitiedoston kokoa, mutta tiedoston tuomisesta ja toisena käyttäjänä lähettämisen oikeuden myöntämisestä kyseisille tileille uudelleen ei ole haittaa.
  • Tämän komentosarjan avulla ei voi käsitellä Active Directory -käyttäjätilejä, joilla on sarkaimia tai parittomia lainausmerkkejä sisältäviä DN (Distinguished Name) -nimiä. Komentosarja pystyy käsittelemään parilliset lainausmerkit sisältävän nimen oikein. Tällaisia nimiä ovat
    “CN=First “Kutsumanimi” Last,DC=domain,DC=com”
    .
  • Excel pystyy käsittelemään tiedostoja, joissa on enintään 65 535 riviä. Jos tulostetiedostosi on tätä suurempi, sinun on jaettava se osiin, ennen kuin lataat sen Exceliin.
  • Send_As_Errors-tiedostossa on luettelo niistä tileistä, joiden oikeuksien lukemisessa tai kirjoittamisessa ilmeni virhe. Jos toimialueen muut tilit käsiteltiin oikein, näillä tileillä saattaa olla jokin yhteinen tekijä, joka estää komentosarjan suorittamisen niille. Yleisiä ongelmia ovat esimerkiksi seuraavat:
    • Järjestelmänvalvojan oikeuksien puuttuminen tilien ominaisuuksien tarkastelemista tai määrittämistä varten.
    • Exchange-postilaatikkosäilö ei ole käynnissä.
    • Työasema ei ole saman toimialueen jäsen.
    • Käytettävä järjestelmänvalvojan tili ei kuulu samaan toimialuepuuryhmään.
Voit suorittaa tämän komentosarjan kopioimalla ja liittämällä kaikki BEGIN SCRIPT- ja END SCRIPT -merkintöjen välissä olevat rivit vain teksti -editoriin, kuten Muistioon. Tallenna komentosarja nimellä AddSendAs.vbs. BEGIN SCRIPT
Option ExplicitDim OUTPUT_DELIMITEROUTPUT_DELIMITER = """""""" & vbTab & """"""""'Define exclusive list, if FMA is given to any user in this list, it's ignored.  If you 'want to modify this list, please be sure to follow the same format. Every alias has to 'have a OUTPUT_DELIMITER before and after itDim FMA_EXCLUSIVE_LISTFMA_EXCLUSIVE_LIST = OUTPUT_DELIMITER & "NT AUTHORITY\SELF" & OUTPUT_DELIMITER & "NT AUTHORITY\SYSTEM" & OUTPUT_DELIMITERDim FMA_EXCLUSIVE_EXSVCFMA_EXCLUSIVE_EXSVC = "\Exchange Services" & OUTPUT_DELIMITER'Permission Type: Allow or Denyconst ACCESS_ALLOWED_OBJECT_ACE_TYPE  = 5const ADS_ACETYPE_ACCESS_ALLOWED = &h0const ADS_ACETYPE_ACCESS_DENIED = &h1'Flags: Specifies Inheritanceconst ADS_ACEFLAG_INHERIT_ACE = &h2const ADS_ACEFLAG_NO_PROPAGATE_INHERIT_ACE = &h4const ADS_ACEFLAG_INHERIT_ONLY_ACE = &h8const ADS_ACEFLAG_INHERITED_ACE = &h10const ADS_ACEFLAG_VALID_INHERIT_FLAGS = &h1fconst ADS_ACEFLAG_SUCCESSFUL_ACCESS = &h40const ADS_ACEFLAG_FAILED_ACCESS = &h80'Declare ADSI constantsConst ADS_OPTION_SECURITY_MASK = 3Const ADS_OPTION_REFERRALS	= 1Const ADS_SECURITY_INFO_DACL = 4Const ADS_CHASE_REFERRALS_NEVER = &h00 Const ADS_CHASE_REFERRALS_SUBORDINATE = &h20 Const ADS_CHASE_REFERRALS_EXTERNAL = &h40'output file nameConst EXPORT_FILE = "Send_As_Export"Const ERROR_FILE = "Send_As_Errors"' script modeconst MODE_INVALID = -1 const MODE_SETALL = 0const MODE_EXPORT = 1const MODE_IMPORT = 2const SETALL = "-SETALL"const EXPORT = "-EXPORT"const IMPORT = "-IMPORT"' argument indexConst ARG_INDEX_MODE = 1Const ARG_INDEX_DC = 0Const ARG_INDEX_FILENAME = 2' column index in import/export fileConst COLUMN_INDEX_USERDISPLAYNAME = 0Const COLUMN_INDEX_FMAALIAS = 1Const COLUMN_INDEX_FMADISPLAYNAME = 2Const COLUMN_INDEX_IFPUBLICDELEGATE = 3Const COLUMN_INDEX_MAILBOXSTATUS = 4Const COLUMN_INDEX_USERADSPATH = 5Const COLUMN_INDEX_HOMEMDB = 6Const EMPTYSTRING = ""Const STRNO = "No Delegates"Const STRYES = "Has Delegates" Const MIN_ARG = 2Const INIT_ARRAY_SIZE = 100' Microsoft Exchange Const EX_MB_SEND_AS_ACCESSMASK  = &H00100Const EX_FULLMailbox_AccessMask = 1Const MESO = "Microsoft Exchange System Objects"Const EX_MB_SEND_AS_GUID = "{AB721A54-1E2F-11D0-9819-00AA0040529B}"Const ForReading	= 1Const ForWriting	= 2Const ForAppending	= 8Const TristateTrue	= -1Const ADS_SCOPE_SUBTREE = 2Dim objUserDim objSDMailBoxDim objSDNTsecurityDim objDACLNTSDDim objNewACEDim sTrusteeAlias()Dim sFMADeniedListDim sFMAExplicitAllowDim fACESendasFoundDim dArraySizeDim TotalACEDim iDim rootDSEDim connDim objCommandDim objCmdDisplayNameDim rsUsersDim FoundObjectDim objFSODim objfileImportDim objfileExportDim objfileErrorDim sImportFilePathDim cScriptModeDim dArgCountDim dArgExpectedDim sDCServerDim sMailboxStatusDim sIfPublicDelegateDim sFMAUserDisplayNameDim sExportFileNameDim sErrorsFileNameDim msPublicDelegatesDim fErrorDim fOneErrorDim fFMAAllowedOn Error Resume NextdArraySize = INIT_ARRAY_SIZEReDim Preserve sTrusteeAlias(dArraySize)dArgCount = Wscript.Arguments.Count If ( dArgCount < MIN_ARG ) Then	DisplaySyntaxEnd Iferr.ClearfError = FalsefOneError = FalsecScriptMode = MODE_INVALIDSelect Case UCase(WScript.Arguments(ARG_INDEX_MODE))	Case SETALL 		cScriptMode = MODE_SETALL		dArgExpected = ARG_INDEX_MODE + 1	Case EXPORT 		cScriptMode = MODE_EXPORT		dArgExpected = ARG_INDEX_MODE + 1	Case IMPORT 		cScriptMode = MODE_IMPORT		dArgExpected = ARG_INDEX_FILENAME + 1	Case Else		cScriptMode = MODE_INVALIDEnd SelectIf (cScriptMode = MODE_INVALID Or dArgCount <> dArgExpected) Then	DisplaySyntaxEnd IfsDCServer = WScript.Arguments(ARG_INDEX_DC)CreateOutputFilesIf ( cScriptMode = MODE_SETALL Or cScriptMode = MODE_EXPORT ) Then	Dim sDomainContainer	If (cScriptMode = MODE_SETALL) Then		Dim strInput 		WScript.StdOut.WriteLine("WARNING: If you continue, each account in the domain that has")		WScript.StdOut.WriteLine("Full Mailbox Access permission for a given mailbox will also be")		WScript.StdOut.WriteLine("granted permission to Send As the mailbox owner.")		WScript.StdOut.WriteLine()		WScript.StdOut.WriteLine("To preview the list of mailboxes before granting Send As,")		WScript.StdOut.WriteLine("cancel this operation and use the -Export mode of this script.")		WScript.StdOut.WriteLine()		WScript.StdOut.Write("Press Y to continue or any other key to cancel: ") ")		strInput = WScript.StdIn.ReadLine()		If (UCase(strInput) <> UCase("Y")) Then			WScript.Quit		End If		End If		WScript.StdOut.WriteLine()	WScript.StdOut.WriteLine("""!"" indicates an error processing an object.")	WScript.StdOut.WriteLine("     Check " & sErrorsFilename)	WScript.StdOut.WriteLine("Starting...")	WScript.StdOut.WriteLine()	err.Clear		Set rootDSE = GetObject("LDAP://" & sDCServer & "/RootDSE")	sDomainContainer = rootDSE.Get("defaultNamingContext")	WScript.StdOut.WriteLine("Finding domain controller [ " & sDCServer & " ] for domain [ " & sDomainContainer & " ]")		If (err.number <> 0) Then		WScript.StdOut.WriteLine("Failed to find the domain or domain controller, error:" & err.Description)		objfileError.WriteLine("Failed to find the domain or domain controller, error:" & err.Description)		WScript.Quit	End If				err.Clear		Set conn = CreateObject("ADODB.Connection")	Set objCommand = CreateObject("ADODB.Command")	conn.Provider = "ADSDSOObject"	conn.Open "ADs Provider"	If (err.number <> 0) Then		WScript.StdOut.WriteLine("Failed to bind to Active Directory server, error:" & err.Description)		objfileError.WriteLine("Failed to bind to Active Directory server, error:" & err.Description)		WScript.Quit	End If	Set objCommand.ActiveConnection = conn	WScript.StdOut.WriteLine("Searching for mailbox owner user accounts in " & sDomainContainer)		objCommand.CommandText  = "<LDAP://" & sDCServer & "/" & sDomainContainer & ">;(&(&(& (mailnickname=*) (| (&(objectCategory=person)(objectClass=user)(msExchHomeServerName=*)) ))));adspath;subtree"	objCommand.Properties("searchscope") = ADS_SCOPE_SUBTREE	objCommand.Properties("Page Size") = 100	objCommand.Properties("Timeout") = 30 	objCommand.Properties("Chase referrals") = (ADS_CHASE_REFERRALS_SUBORDINATE Or ADS_CHASE_REFERRALS_EXTERNAL)	err.Clear		Set rsUsers = objCommand.Execute	If (err.number <> 0) Then		WScript.StdOut.WriteLine("Search for mailbox owners failed, error:" & err.Description)		objfileError.WriteLine("Search for mailbox owners failed, error:" & err.Description)		WScript.Quit	End If	If (rsUsers.RecordCount = 0) Then		WScript.StdOut.WriteLine("No mailbox owner user accounts could be seen in " & sDomainContainer & ".")		objfileError.WriteLine("No mailbox owner user accounts found in " & sDomainContainer & ".")		fError = True			End If	While Not rsUsers.EOF		If (fOneError = True) Then			WScript.StdOut.Write("!")		Else			WScript.StdOut.Write(".")		End If		fOneError = False				'Skip any mailbox object in Microsoft Exchange System Objects container		If (0 = Instr(rsUsers.Fields(0).Value, MESO)) Then			err.Clear			Set objUser = GetObject(rsUsers.Fields(0).Value)			If (err.number <> 0) Then				objfileError.WriteLine("Failed to get user object: " & rsUsers.Fields(0).Value)				objfileError.WriteLine("Error: " & err.Description)				fError = True				fOneError = True				err.Clear			End If			Set objSDMailBox = objUser.MailboxRights			If (err.number <> 0) Then				objfileError.WriteLine("Failed to get mailbox rights: " & rsUsers.Fields(0).Value)				objfileError.WriteLine("Error: " & err.Description)				fError = True				fOneError = True				err.Clear			End If			Set objSDNTsecurity = objUser.ntSecurityDescriptor			If (err.number <> 0) Then				objfileError.WriteLine("Failed to get NTSD: " & rsUsers.Fields(0).Value)				objfileError.WriteLine("Error: " & err.Description)				fError = True				fOneError = True				err.Clear			End If						Set objDACLNTSD = Nothing			If (objUser.AccountDisabled) Then				sMailboxStatus = "Disabled"			Else				sMailboxStatus = "Enabled"			End If			'Query this user's publicDelegates list			err.Clear			msPublicDelegates = objUser.Get("publicDelegates")			If (err.number <> 0) Then				'This user doesn't have publicDelegates list set				sIfPublicDelegate = STRNO				err.Clear			Else				sIfPublicDelegate = STRYES			End If						err.Clear 						FindAllFMAUsers objSDMailBox						If (TotalACE > dArraySize) Then			'Needs to allocate bigger size array				dArraySize = TotalACE + 1				ReDim Preserve sTrusteeAlias(dArraySize)				FindAllFMAUsers objSDMailBox			End If			If (err.number <> 0) Then				objfileError.WriteLine("Failed to query mailbox rights of user: " & rsUsers.Fields(0).Value)				objfileError.WriteLine("Error: " & err.Description)				err.Clear				fError = True				fOneError = True			End If						If TotalACE > 0 Then				Set objDACLNTSD = objSDNTsecurity.DiscretionaryAcl				For i = 0 to TotalACE - 1 Step 1										'Check if we already have Send As ACE in NT security descriptor					'If it exists, either allow or deny, we don't need to add send as to it 					CheckSendAsACE objDACLNTSD, sTrusteeAlias(i)										'Note: deny entries take precedence over allow entries. 					'If there is FMA deny ACE, skip it even if we find FMA allow ACE 					IfFMAAllowed(sTrusteeAlias(i) & OUTPUT_DELIMITER)					If ((fFMAAllowed = True) And (fACESendasFound = 0)) Then						If cScriptMode = MODE_SETALL Then							Set objNewACE = CreateObject ("AccessControlEntry")							objNewACE.AceFlags = 0 							objNewACE.AceType = ACCESS_ALLOWED_OBJECT_ACE_TYPE							objNewACE.AccessMask = EX_MB_SEND_AS_ACCESSMASK 							objNewACE.Flags = 1							objNewACE.ObjectType = EX_MB_SEND_AS_GUID							objNewACE.Trustee = sTrusteeAlias(i)							objDACLNTSD.AddAce objNewAce						End If									'Query trustee(FMA user) to get its displayName						Dim rsTrustee						Dim objTrustee						Dim dPosition						Dim sAlias											dPosition = inStr(1, sTrusteeAlias(i), "\")						sAlias = mid(sTrusteeAlias(i), dPosition + 1)										Set objCmdDisplayName = CreateObject("ADODB.Command")									Set objCmdDisplayName.ActiveConnection = conn						objCmdDisplayName.CommandText  = "<LDAP://" & sDomainContainer & ">;(&(&(& (mailnickname=" & sAlias & ") (| (&(objectCategory=person)(objectClass=user)(msExchHomeServerName=*)) ))));adspath;subtree"						objCmdDisplayName.Properties("searchscope") = ADS_SCOPE_SUBTREE						objCmdDisplayName.Properties("Page Size") = 100						objCmdDisplayName.Properties("Timeout") = 30 						objCmdDisplayName.Properties("Chase referrals") = (ADS_CHASE_REFERRALS_SUBORDINATE Or ADS_CHASE_REFERRALS_EXTERNAL)												Set rsTrustee = objCmdDisplayName.Execute										Set objTrustee = GetObject(rsTrustee.Fields(0).Value)												If (err.number <> 0) Then							'Failed to query FMA user's display name, use its alias							sFMAUserDisplayName = sAlias													Else							sFMAUserDisplayName = objTrustee.displayName													End If							'output to export file						err.Clear						objfileExport.WriteLine ("""""""" & objUser.displayName & OUTPUT_DELIMITER & sTrusteeAlias(i) & OUTPUT_DELIMITER & sFMAUserDisplayName & OUTPUT_DELIMITER & sIfPublicDelegate & OUTPUT_DELIMITER & sMailboxStatus & OUTPUT_DELIMITER & rsUsers.Fields(0).Value & OUTPUT_DELIMITER & objUser.homeMDB & """""""")						If (err.number <> 0) Then							objfileError.WriteLine("User " & rsUsers.Fields(0).Value & " could not be added to the export file. You should set permissions manually for this user.")							objfileError.WriteLine("Error: " & err.Description)							err.Clear							fError = True							fOneError = True						End If						Set objCmdDisplayName = Nothing						Set rsTrustee = Nothing						Set objTrustee = Nothing					End If				Next									If cScriptMode = MODE_SETALL Then					err.Clear					objSDNTsecurity.DiscretionaryAcl = objDACLNTSD					objUser.Put "ntSecurityDescriptor", Array( objSDNTsecurity )					objUser.SetOption ADS_OPTION_SECURITY_MASK, ADS_SECURITY_INFO_DACL					objUser.SetInfo					If (err.number <> 0) Then						objfileError.WriteLine("Failed to update ADSI for user: " & rsUsers.Fields(0).Value)						objfileError.WriteLine("Error: " & err.Description)						err.Clear						fError = True						fOneError = True					End If				End If				TotalACE = 0				Set objSDMailbox = Nothing				Set objSDNTsecurity = Nothing				Set objUser = Nothing				Set objDACLNTSD = Nothing			End If				End If			rsUsers.MoveNext	WendEnd IfIf (cScriptMode = MODE_IMPORT) Then	Dim sOneRow	Dim sArraySplit	Dim objUserItem	Dim UserPath	Dim objUserSD	Dim objUserDACL	Dim fNeedToAddSendAs		sImportFilePath = WScript.Arguments(ARG_INDEX_FILENAME)	WScript.StdOut.WriteLine("If you continue, each account listed in " & sImportFilePath)	WScript.StdOut.WriteLine("that has Full Mailbox Access permission for a given mailbox")	WScript.StdOut.WriteLine("will also be granted permission to Send As the mailbox owner.")	WScript.StdOut.WriteLine()	WScript.StdOut.Write("Press Y to continue or any other key to cancel: ")	strInput = WScript.StdIn.ReadLine()	If (UCase(strInput) <> UCase("Y")) Then		WScript.Quit	End If		WScript.StdOut.WriteLine("Starting...")	WScript.StdOut.WriteLine()	UserPath = EMPTYSTRING		err.Clear		Set objFSO = CreateObject("Scripting.FileSystemObject")	Set objfileImport = objFSO.OpenTextFile(sImportFilePath, ForReading, False, TristateTrue)	If (err.number <> 0) Then		WScript.StdOut.WriteLine("Failed to open import file " & sImportFilePath & ", error:" & err.Description)		objfileError.WriteLine("Failed to open import file " & sImportFilePath & ", error:" & err.Description)		WScript.Quit	End If		fNeedToAddSendAs = False	Do While objfileImport.AtEndOfStream <> True		If (fOneError = True) Then			WScript.StdOut.Write("!")		Else			WScript.StdOut.Write(".")		End If		fOneError = False		err.Clear		sOneRow = objfileImport.ReadLine		sArraySplit = Split(sOneRow , OUTPUT_DELIMITER)		If (err.number <> 0) Then			objfileError.WriteLine("Failed to parse one row: " & sOneRow )			objfileError.WriteLine("Error: " & err.Description)			err.Clear			fError = True			fOneError = True		End If				If (UserPath <> sArraySplit(COLUMN_INDEX_USERADSPATH)) Then			'A new user			If (fNeedToAddSendAs = True ) Then				'update existing user				err.Clear				objSDNTsecurity.DiscretionaryAcl = objDACLNTSD				objUser.Put "ntSecurityDescriptor", Array( objSDNTsecurity )				objUser.SetOption ADS_OPTION_SECURITY_MASK, ADS_SECURITY_INFO_DACL				objUser.SetInfo				If (err.number <> 0) Then					objfileError.WriteLine("Failed to update permissions for user: " & UserPath)					objfileError.WriteLine("Error: " & err.Description)					fError = True					fOneError = True				End If			End If									fNeedToAddSendAs = False			Set objUser = Nothing			Set objSDNTsecurity = Nothing			Set objDACLNTSD = Nothing			UserPath = sArraySplit(COLUMN_INDEX_USERADSPATH)			err.Clear			Set objUser = GetObject(UserPath)			Set objSDNTsecurity = objUser.ntSecurityDescriptor			Set objDACLNTSD = objSDNTsecurity.DiscretionaryACL						If (err.number <> 0) Then				objfileError.WriteLine("Failed to get user object: " & UserPath)				objfileError.WriteLine("Error: " & err.Description)				err.Clear				fError = True				fOneError = True			End If		End If			'Add newACE   Do we need this check?		CheckSendAsACE objDACLNTSD, sArraySplit(COLUMN_INDEX_FMAALIAS)		If (fACESendasFound = 0) Then			Set objNewACE = CreateObject ("AccessControlEntry")			objNewACE.AceFlags = 0 			objNewACE.AceType = ACCESS_ALLOWED_OBJECT_ACE_TYPE			objNewACE.AccessMask = EX_MB_SEND_AS_ACCESSMASK 			objNewACE.Flags = 1			objNewACE.ObjectType = EX_MB_SEND_AS_GUID			objNewACE.Trustee = sArraySplit(COLUMN_INDEX_FMAALIAS)			objDACLNTSD.AddAce objNewACE			fNeedToAddSendAs = True					End If	Loop		If (fNeedToAddSendAs = True ) Then		'update the last user		err.Clear		objSDNTsecurity.DiscretionaryAcl = objDACLNTSD		objUser.Put "ntSecurityDescriptor", Array( objSDNTsecurity )		objUser.SetOption ADS_OPTION_SECURITY_MASK, ADS_SECURITY_INFO_DACL		objUser.SetInfo		If (err.number <> 0) Then			objfileError.WriteLine("Failed to update permissions for user: " & UserPath)			objfileError.WriteLine("Error: " & err.Description)			fError = True		End If	End IfEnd IfobjFSO.CloseobjfileImport.CloseobjfileExport.CloseobjfileError.CloseSet objFSO = NothingSet objfileImport = NothingSet objfileExport = NothingSet objfileError = NothingSet objCommand = NothingSet conn = NothingWScript.StdOut.WriteLine()If (fError = True) Then	WScript.StdOut.WriteLine("Finished with one or more errors. See " & sErrorsFilename)Else	WScript.StdOut.WriteLine("Finished successfully. No errors were encountered.")End IfFunction FindAllFMAUsers (objSD)Dim objACLDim objACEDim intACECountDim strIndentDim dAccessMaskBitDim dPositionDim sUserAlreadyFound	On Error Resume Next	err.Clear	TotalACE = 0	sFMADeniedList = EMPTYSTRING	sFMAExplicitAllow = EMPTYSTRING	sUserAlreadyFound = OUTPUT_DELIMITER	intACECount = 0	Set objACL = objSD.DiscretionaryAcl	intACECount = objACL.AceCount	If intACECount Then		' Open discretionary ACL (DACL) data.		For Each objACE In objACL							dPosition = inStr(1, objACE.Trustee, "$")		If ((0 = Instr(UCase(objACE.Trustee & OUTPUT_DELIMITER), UCase(FMA_EXCLUSIVE_EXSVC))) And (0 = Instr(sUserAlreadyFound, OUTPUT_DELIMITER & objACE.Trustee & OUTPUT_DELIMITER)) And (0 = Instr(FMA_EXCLUSIVE_LIST, OUTPUT_DELIMITER & objACE.Trustee & OUTPUT_DELIMITER)) And (dPosition <> Len(objACE.Trustee)) And ((objACE.AccessMask And EX_FULLMailbox_AccessMask) <>0) And ((objACE.AceType = ADS_ACETYPE_ACCESS_ALLOWED) Or (objACE.AceType = ACCESS_ALLOWED_OBJECT_ACE_TYPE) )) Then			If (TotalACE > dArraySize) Then				sTrusteeAlias(TotalACE) = objACE.Trustee				sUserAlreadyFound = sUserAlreadyFound & objACE.Trustee & OUTPUT_DELIMITER			End If			TotalACE = TotalACE + 1				If ((objACE.AceFlags And ADS_ACEFLAG_INHERITED_ACE) = 0) Then				'Keep a list who explictly set FMA at mailbox level				sFMAExplicitAllow = sFMAExplicitAllow & objACE.Trustee & OUTPUT_DELIMITER						End If		ElseIf (( (objACE.AccessMask And EX_FULLMailbox_AccessMask) <>0 ) And (objACE.AceType = ADS_ACETYPE_ACCESS_DENIED)) Then			'Keep a list who denied FMA, use OUTPUT_DELIMITER as demiliter, 			'include both inherited and explicit set at mailbox level			sFMADeniedList = sFMADeniedList & objACE.Trustee & OUTPUT_DELIMITER					End If		Next	End If	Set objACL = NothingEnd FunctionFunction CheckSendAsACE (objDiscretionaryACL, sTAlias)Dim objACEDim intACECount	err.Clear	fACESendasFound = 0	intACECount = objDiscretionaryACL.AceCount	If intACECount Then		For Each objACE In objDiscretionaryACL				err.Clear			If ( (objACE.Trustee = sTAlias) And (objACE.ObjectType = EX_MB_SEND_AS_GUID) ) Then				fACESendasFound = 1			End If			If (err.number <> 0) Then				objfileError.WriteLine("Could not read permissions for this user: " & sTAlias)				objfileError.WriteLine("Error: " & err.Description)				err.Clear				fError = True				fOneError = True			End If					Next				End If	End FunctionFunction IfFMAAllowed(sTrustee)	'FMA allow ACE has been found. Assume it's true	fFMAAllowed = True		If ( (0 <> Instr(sFMADeniedList, sTrustee)) And (0 = Instr(sFMAExplicitAllow, sTrustee))	) Then		'If Denied ACE is found, and no explicit allow FMA 		fFMAAllowed = False	End IfEnd FunctionFunction CreateOutputFiles	Dim sTimeArray	Dim sTimeShort	Dim sTime		err.Clear	sTime = Time	sTimeShort = Split(sTime, " ")	sTimeArray = Split(sTimeShort(0), ":")	Set objFSO = CreateObject("Scripting.FileSystemObject")	sErrorsFileName = ERROR_FILE & "_" & sTimeArray(0) & "_" & sTimeArray(1) & "_" & sTimeArray(2) & ".txt"	Set objfileError = objFSO.OpenTextFile(sErrorsFileName, ForWriting, True, TristateTrue)	If (cScriptMode = MODE_SETALL Or cScriptMode = MODE_EXPORT)	Then		sExportFileName = EXPORT_FILE & "_" & sTimeArray(0) & "_" & sTimeArray(1) & "_" & sTimeArray(2) & ".txt"		Set objfileExport = objFSO.OpenTextFile(sExportFileName, ForWriting, True, TristateTrue)		End If		If err.number <> 0 Then		WScript.StdOut.WriteLine("Unable to create export or error files: " & err.Description)		objfileError.WriteLine("Unable to create export or error files: " & err.Description)		fError = True		fOneError = True		WScript.Quit		End IfEnd FunctionFunction DisplaySyntax	WScript.StdOut.WriteLine("Syntax:")	WScript.StdOut.WriteLine()	WScript.StdOut.WriteLine("Export accounts with Full Mailbox Access that do not have Send As permission:")	WScript.StdOut.WriteLine("     CSCRIPT """ & WScript.ScriptName & """ DOMAIN_CONTROLLER -Export")	WScript.StdOut.WriteLine("         NOTE: The list will be saved to Send_As_Export_HH_MM_SS.txt")	WScript.StdOut.WriteLine()	WScript.StdOut.WriteLine("Grant Send As to all accounts listed in an export file:")	WScript.StdOut.WriteLine("     CSCRIPT """ & WScript.ScriptName & """ DOMAIN_CONTROLLER -Import ""filename.txt""")	WScript.StdOut.WriteLine()	WScript.StdOut.WriteLine("Grant Send As to all accounts in the domain with Full Mailbox Access:")	WScript.StdOut.WriteLine("     CSCRIPT """ & WScript.ScriptName & """ DOMAIN_CONTROLLER -SetAll")	WScript.StdOut.WriteLine("         NOTE: Accounts will be listed in Send_As_Export_HH_MM_SS.txt")	WScript.StdOut.WriteLine()	WScript.StdOut.WriteLine("For all modes, errors are saved to Send_As_Errors_HH_MM_SS.txt")	WScript.Quit	End Function
END SCRIPT

Microsoftin tarjoamat ohjelmointiesimerkit ovat vain ohjeellisia, eikä niihin liity mitään nimenomaisesti ilmaistua tai oletettua takuuta, mukaan lukien oletettu takuu tuotteen soveltuvuudesta kaupankäynnin kohteeksi tai sopivuudesta johonkin tiettyyn tarkoitukseen. Tässä artikkelissa oletetaan, että olet perehtynyt käytettyyn ohjelmointikieleen sekä työkaluihin, joita käytetään prosessien luomisessa sekä virheiden jäljittämisessä ja korjaamisessa. Microsoftin tukipalvelun asiantuntijat voivat auttaa tietyn toiminnon toteuttamisessa, mutta he eivät muokkaa näitä esimerkkejä niiden kuvaamien toimintojen parantamiseksi eivätkä esitä ratkaisuja erityistarpeita varten.
Lisätietoja Microsoftilta saatavana olevista tukivaihtoehdoista on seuraavassa Microsoftin verkkosivustossa: Tässä artikkelissa käsitellyt kolmansien osapuolten tuotteet ovat Microsoftista riippumattomien yritysten valmistamia. Microsoft ei anna näiden tuotteiden suorituskykyä tai luotettavuutta koskevaa takuuta.
XADM Blackberry Enterprise Server BES GoodLink Cisco Unified Messaging RIM
Ominaisuudet

Artikkelin tunnus: 912918 – Viimeisin tarkistus: 11/26/2007 01:58:52 – Versio: 17.2

  • Microsoft Exchange 2000 Server Standard Edition
  • Microsoft Exchange 2000 Enterprise Server
  • Microsoft Exchange Server 2003 Standard Edition
  • Microsoft Exchange Server 2003 Enterprise Edition
  • kbtshoot kbpending kbbug kbprb KB912918
Palaute